搜索引擎 / 日志 / 大數(shù)據(jù)方向的加分項(xiàng)
ES 基本原理
基于 Lucene 做的分布式搜索引擎。
數(shù)據(jù)結(jié)構(gòu)是 文檔(Document),類似 JSON。
核心是 倒排索引 —— 先找關(guān)鍵詞,再找文檔。
支持 分詞,所以中文、模糊搜索都很強(qiáng)。
分布式架構(gòu):索引分成多個(gè) 分片(shard),提高并發(fā)和容錯(cuò)。
ES 核心特點(diǎn)
分布式、高可用,天然支持分片和副本,擴(kuò)容很方便。
全文檢索能力極強(qiáng),支持分詞、模糊、高亮、聚合統(tǒng)計(jì)。
讀寫性能高,特別適合大量數(shù)據(jù)寫入 + 復(fù)雜查詢。
面對(duì)深度分頁(yè)比 MySQL 強(qiáng)很多,可以用 search_after 做到高效翻頁(yè)。
常用于 ELK 日志體系、商品搜索、內(nèi)容檢索、用戶行為分析。
業(yè)務(wù)場(chǎng)景
海量日志聚合(ELK)
全站搜索、商品搜索
大量數(shù)據(jù)模糊查詢、高亮、聚合
千萬(wàn)、億級(jí)數(shù)據(jù)深度分頁(yè)
日志檢索、APM 系統(tǒng)