1.搜尋引擎知識和相關框架
搜尋目的:從海量資料中獲取想要的資訊
傳統做法:
1.文件中使用find功能
2.mysql中使用like模糊查詢
問題:
1.海量資料不能及時響應。少量資料可以mysql建立索引解決
2.一些無用測詞不能進行過濾,沒法進行分詞
3.資料量大的話難以拓展
4.相同的資料難以進行相似度最高的進行排序
搜尋引擎:
1。儲存非結構化資料
2.快速檢索和響應
3.進行相關性排序,過濾
4.可以去掉停用詞(沒有特殊含義的詞,比如英文啊,is等,中文:這,的,是等)
框架一般支援可以自定義的停用詞
常用框架:
1.lucene
apiche的開源專案,高效能,可拓展的工具庫,提供搜尋的基本框架;
如果開發人員需要使用,需自己開發,成本大,但是效能高
2.solr
solr是基於lucene的全文搜尋框架,提供了比lucene更為豐富的功能,
同時實現了可配置,可拓展且對查詢效能進行了優化
建立索引時,搜尋效率下降,實時索引搜尋效率不高
資料量的增加,solr的搜尋效率會變得更低,適合小資料量的搜尋
bool查詢原理 es 談談ES在資料應用中的作用
es全名elasticsearch翻譯過來是彈性搜尋 從名字直觀的了解,這個東西是解決搜搜的問題 作為乙個經常寫sql的人來說 搜尋在我的映像中就是select from table where,那為什麼還要es?mysql對於一些較為固定,欄位較少的查詢方式,可以通過簡單的增加索引來完成優化,在大...
SSH原理與應用
ssh是每一台linux電腦的標準配置。隨著linux裝置從電腦逐漸擴充套件到手機 外設和家用電器,ssh的使用範圍也越來越廣。不僅程式設計師離不開它,很多普通使用者也每天使用。雖然本文內容只涉及初級應用,較為簡單,但是需要讀者具備最基本的 shell知識 和了解 公鑰加密 的概念。如果你對它們不熟...
C STL nth element原理與應用
lz最近的考試中,某題可以通過呼叫nth element 來水過70 的資料 但是lz並不會啊 歷史總是驚人的相似 於是就有了這篇blog 在編寫 時,有時會有 在乙個無序表中快速得到第k小的元素 的需求 而直接排序 不能水過一些測試點 時間不能承受 於是stl的algorithm標頭檔案就給我們提...