Elasticseach 正式介紹
1、Elasticsearch的功能。
1)分散式的搜尋引擎和資料分析引擎
搜尋:百度、網站的站內搜尋,IT系統的檢索。
資料分析:電商網站,最近7天牙膏這種商品銷量排名前10的商家有哪些;新聞網站,最近一個月訪問前3的版塊是哪3個...
分散式,搜尋,資料分析。
2)全文檢索,結構化檢索,資料分析
全文檢索:我想搜尋包含“牙膏”的商品,select * from products where product_name like"%牙膏%"
結構化檢索:我想搜尋商品分類為日化用品的商品有哪些,select * from products where category_id = '日化用品'
資料分析:我們分析一下商品分類下面有多少商品,select category count(*) from products group by category_id
3)對海量資料進行近實時處理
分散式:ES自動可以將海量資料分散到多臺伺服器上進行儲存和檢索
相反的:Lucene,單機應用
2、Elasticsearch的適用場景
1)維基百科,全文檢索,高亮,搜尋推薦
2)The Guardian(國外新聞網站),使用者日誌+社交網路資料,分析,新聞文章的公眾反饋
3)Stack Overflow(國外程式異常討論社群),全文檢索,搜尋相關問題及答案
4)Github(開原始碼管理),搜尋上千億行程式碼
5)電商網站,檢索商品
6)日誌資料分析
7)商品價格監控
8)BI系統,ES執行資料分析和挖掘
9)國內,站內搜尋(電商,招聘,門戶...),IT系統管理等
3、Elasticsearch的特點
1)可以作為一個大型分散式叢集技術,處理PB級資料,服務大公司;也可以執行在單機上,服務小公司
2)ES不是什麼新技術,主要是全文檢索和資料分析加上分散式形成獨一無二的ES
3)對使用者來說開箱即用
4)作為傳統資料庫的一個補充,提供了好多資料庫不具備的功能