Elasticsearch使用API心得

2021-09-12 09:40:49 字數 2372 閱讀 4936

elasticsearch

elasticsearch官方api文件

1.建立連線

private static void open()  

catch (unknownhostexception e)

}

2.進行查詢
searchrequestbuilder responsebuilder = client.preparesearch("index").settypes("type")
searchresponse myresponse=responsebuilder.setquery(querybuilders.matchphrasequery("title", "molong1208 blog")).setfrom(0).setsize(10).setexplain(true).execute().actionget();
3.展示
searchhits hits = myresponse.gethits();  

for (int i = 0; i < hits.gethits().length; i++)

3.展示
1.基本查詢

responsebuilder.setquery(querybuilders.matchphrasequery("title", "molong1208"))
tiele:為elastic中索引字段  molong1208:為需要查詢的東西
2.多條件查詢

responsebuilder.setquery(querybuilders.termsquery("title", "molong1208","blog","csdn"))
molong1208,blog,csdn在title欄位進行查詢,如果有三者中的任意乙個即算匹配
match_all查詢(匹配所有)

responsebuilder.setquery(querybuilders.matchallquery())
4.常用詞查詢

responsebuilder.setquery(querybuilders.commontermsquery("name", "lishici"))
與1. 基本查詢matchphrasequery(string name, object text)類似
multi_match查詢

responsebuilder.setquery(querybuilders.multimatchquery("lishi", "subcat","name"))
multimatchquery(text,fields)其中的fields是字段的名字,可以寫好幾個,每乙個中間用逗號分隔
multi_match查詢

responsebuilder.setquery(querybuilders.multimatchquery("lishi", "subcat","name"))
multimatchquery(text,fields)其中的fields是字段的名字,可以寫好幾個,每乙個中間用逗號分隔
rang查詢

responsebuilder.setquery(querybuilders.rangequery("age").gt(10).lt(20))
對於某乙個field,大於多少,小於多少
正規表示式查詢

responsebuilder.setquery(querybuilders.regexpquery(field, regexp))
bool查詢

responsebuilder.setquery(querybuilders.boolquery().must(querybuilders.multimatchquery(query, "name","title","title_1")).must(querybuilders.multimatchquery(query2, "title2","title3")))
在title或者title_1或者name欄位有query,並且在title2或者title3欄位有query2的結果召回來

誰在使用Elasticsearch

github github使用elasticsearch搜尋20tb的資料,包括13億的檔案和1300億行的 這個不用介紹了吧,碼農們都懂的,github在2013年1月公升級了他們的 搜尋,由solr轉為elasticsearch,目前集群規模為26個索引儲存節點和8個客戶端節點 負責處理搜尋請求...

ElasticSearch使用入門

es的安裝 啟動 cd.elasticsearch 2 4 3 bin elasticsearch bin elasticsearch d 後台執行 es安裝驗證 注意 預設啟動的時候es繫結的網路ip是本機127.0.0.1,只能通過這個ip訪問 兩種修改方式 1 修改config elastic...

ElasticSearch使用學習

elasticsearch是乙個基於lucene的搜尋服務,它通過倒排索引的方法提供了全文搜尋的能力。1 插入資料 elasticsearch中存放資料的為文件,有索引及型別名,如下插入兩文件 2 檢索文件 1 檢索id為1的文件 curl x get elasticsearch.in.netwa....