elasticsearch 的用途和使用場景的個人理解

前言

最近項目中使用es作爲數據源,啃完《elasticsearch 服務器開發》這本書後,將自己對es的理解記錄下。

1、用途

基礎:存儲數據

es天然支持分佈式,具備存儲海量數據的能力,其搜索和數據分析的功能都建立在es存儲的海量的數據之上

核心能力:搜索

es使用倒排索引,每個字段都被索引且可用於搜索,更是提供了豐富的搜索api,在海量數據下近實時實現近秒級的響應

核心能力:數據分析

除了對搜索的支持,es也提供了大量數據分析的api,爲es提供了數據分析的能力

2、場景

存儲

es對分佈式的天然支持,使得其很方便的作爲海量數據的存儲工具,特別是在數據量急劇增長的當下,es結合爬蟲等數據收集工具可以發揮很大用處

搜索

es基於Lucene的開源搜索引擎,爲搜索引擎(全文檢索,高亮,搜索推薦等)提供了檢索的能力。
具體場景:
1、Stack Overflow(國外的程序異常討論論壇),IT問題,程序的報錯,提交上去,有人會跟你討論和回答,全文檢索,搜索相關問題和答案,程序報錯了,就會將報錯信息粘貼到裏面去,搜索有沒有對應的答案
2、GitHub(開源代碼管理),搜索上千億行代碼
3、電商網站,檢索商品
4、日誌數據分析,logstash採集日誌,ES進行復雜的數據分析(ELK技術,elasticsearch+logstash+kibana

數據分析

es提供了豐富的聚合能力,支持在海量數據的基礎上進行數據的分析和處理。
具體場景:
爬蟲爬取不同電商平臺的某個商品的數據,通過es進行數據分析(各個平臺的歷史價格、購買力等等)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章