探索ElasticSearch(一)
1.??? 什么是ElasticSearch:
ElasticSearch是基于lucene采用java語言開發(fā)的一個(gè)服務(wù)產(chǎn)品,旨在方便全文檢索、分擔(dān)web服務(wù)及數(shù)據(jù)庫服務(wù)壓力。可以理解為文件系列類型的數(shù)據(jù)庫。
2.??? 站內(nèi)搜索/全文檢索:
? 所謂站內(nèi)搜索,就是網(wǎng)站內(nèi)部實(shí)現(xiàn)啦一個(gè)可以供給用戶搜索本站相關(guān)物品或者信息的一個(gè)功能模塊。傳統(tǒng)意義的實(shí)現(xiàn),我們首先會想起以數(shù)據(jù)庫的模糊匹配的方式,來獲取數(shù)據(jù)信息,從而展現(xiàn)給用戶。但是,如何數(shù)據(jù)的量大的時(shí)候,那數(shù)據(jù)庫的壓力將會很大,即便是再好的數(shù)據(jù)庫加上再牛的索引,也不將是一個(gè)完美的粗略。因而,lucene應(yīng)允而生。我們可以基于lucene開發(fā)出自己的檢索庫,這樣的話,數(shù)據(jù)管理錄入的操作的同時(shí),我們也會將數(shù)據(jù)錄入檢索庫中,這樣的話,用戶查詢數(shù)據(jù)通過檢索庫相應(yīng)會極大的減輕數(shù)據(jù)庫的壓力。但是基于原生的lucene開發(fā)的索引庫比較繁瑣,性能也不是很樂觀。有問題就會相應(yīng)的有解決方案,業(yè)界大佬基于lucene開發(fā)出啦相關(guān)的檢索服務(wù),(諸如solr、ElasticSearch等),不僅方便操作,性能上也有啦保障。
3.??? 安裝及測試:
(1)環(huán)境準(zhǔn)備:JDK 1.8以上,ElasticSearch5.1,PlainElastic.Net(c#操作es的類庫)。
(2)下載安裝 Java 運(yùn)行環(huán)境 JDK1.8;解壓 ElasticSearch5;環(huán)境變量中配置“JAVA_HOME”指向 JDK 的目錄(JAVA_HOME的配置這里就不做說明啦,比較簡單,自行查閱配置即可)。
(3)打開 cmd,切換到ElasticSearch的bin目錄下。運(yùn)行 elasticsearch.bat,如果報(bào)錯(cuò)“命令語法不正確”說 明 JAVA_HOME 沒配置好,然后好之后一定要重啟 cmd。
(4)如果 elasticsearch 運(yùn)行報(bào)錯(cuò): Error occurred during initialization of VMCould not reserve enough space for 2097152KB object heap 。那么說明是內(nèi)存不足,就修改 config/jvm.options 下的? -Xms2g -Xmx2g 改成? -Xms512m -Xmx512m(或者更小,只要能跑起來就ok,畢竟這是測試用的環(huán)境)
(5)打開瀏覽器訪問 http://localhost:9200/,如果不報(bào)錯(cuò)就說明成功了,會出現(xiàn)以下界面:
? ? ?
(5)vs新建控制臺項(xiàng)目,nuget管理獲取PlainElastic.Net包,
????
? ??
?
?4.至此,ElasticSearch的簡單操作就完成啦,下一章節(jié)將會對C#的client插件進(jìn)行簡單封裝及ElasticSearch應(yīng)用作進(jìn)一步分析,感謝大家支持。
轉(zhuǎn)載于:https://www.cnblogs.com/diligent-lsh/p/9744143.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的探索ElasticSearch(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 六、jQuery基础
- 下一篇: Java中的Iterable与Itera