elasticsearch是乙個開源的分布式、restful 風格的搜尋和資料分析引擎,它的底層是開源庫apache lucene。2.elasticsearch和關係型資料術語對照表lucene 可以說是當下最先進、高效能、全功能的搜尋引擎庫——無論是開源還是私有,但它也僅僅只是乙個庫。為了充分發揮其功能,你需要使用 j**a 並將 lucene 直接整合到應用程式中。 更糟糕的是,您可能需要獲得資訊檢索學位才能了解其工作原理,因為lucene 非常複雜。
為了解決lucene使用時的繁複性,於是elasticsearch便應運而生。它使用 j**a 編寫,內部採用 lucene 做索引與搜尋,但是它的目標是使全文檢索變得更簡單,簡單來說,就是對lucene 做了一層封裝,它提供了一套簡單一致的 restful api 來幫助我們實現儲存和檢索。
當然,elasticsearch 不僅僅是 lucene,並且也不僅僅只是乙個全文搜尋引擎。 它可以被下面這樣準確地形容:
由於elasticsearch的功能強大和使用簡單,維基百科、衛報、stack overflow、github等都紛紛採用它來做搜尋。現在,elasticsearch已成為全文搜尋領域的主流軟體之一。
關聯式資料庫 資料庫 表 行 列(columns) elasticsearch 索引(index) 型別(type) 文件(docments) 字段(fields)
聚合post :http://localhost:9200/person/man/_search
3.檢視當前節點的所有 index。
$ curl -x get 'http://localhost:9200/_cat/indices?v' #_cat 檢視的意思 固定寫法,同理_update
4.列出每個 index 所包含的 type
,
"doc": }}
}},"name": }}
}},"conference": }},
"date": ,
"description": }},
"host": }},
"reviews": ,
"title": }}
}}}},
"lxw_chome": ,
"lxw": ,
"lxw_index": ,
"description": ,
"name": ,
"pic": ,
"price": ,
"studymodel": ,
"timestamp": }}}}}
5. 新增記錄
向指定的 /index/type 傳送 put 請求,就可以在 index 裡面新增一條記錄。比如,向/accounts/person傳送請求,就可以新增一條人員記錄。
$ curl -x put 'localhost:9200/accounts/person/1' -d '
'
注意,如果沒有先建立 index(這個例子是accounts
),直接執行上面的命令,elastic 也不會報錯,而是直接生成指定的 index。所以,打字的時候要小心,不要寫錯 index 的名稱。
6. 返回所有記錄
使用 get 方法,直接請求/index/type/_search
,就會返回所有記錄。
上面**中,返回結果的$ curl 'localhost:9200/accounts/person/_search'
, "hits":},}
]}}
took
字段表示該操作的耗時(單位為毫秒),timed_out
字段表示是否超時,hits
字段表示命中的記錄,裡面子字段的含義如下。
返回的記錄中,每條記錄都有乙個_score
字段,表示匹配的程式,預設是按照這個字段降序排列。
elastic 預設一次返回10條結果,可以通過size
字段改變這個設定。
上面**指定,每次只返回一條結果。$ curl 'localhost:9200/accounts/person/_search' -d '
}, "size": 1
}'
還可以通過from
字段,指定位移。
上面**指定,從位置1開始(預設是從位置0開始),只返回一條結果。$ curl 'localhost:9200/accounts/person/_search' -d '
}, "from": 1,
"size": 1
}'
如果有多個搜尋關鍵字, elastic 認為它們是or
關係。
上面**搜尋的是$ curl 'localhost:9200/accounts/person/_search' -d '
}}'
軟體 or 系統
。
加上 -d 引數後就是 post 請求了,不是 get
$ curl 'localhost:9200/accounts/person/_search' -d '
}, }]}
}}'
"match" :
}
參考:
全文搜尋引擎 elasticsearch 入門教程 - 阮一峰的網路日誌
elasticsearch 開始 探索集群
exploring your cluster 探索你的集群 現在我們的節點 集群 已經啟動了,下一步需要做的就是和集群進行交流。幸運的是,elasticsearch提供了非常全面和強大的rest api,您可以使用與您的集群進行互動。可以使用api 來完成的幾件事情如下 讓我們從基本的集群健康檢查開...
探索Elasticsearch集群API
elasticsearch提供了乙個非常全面和強大的rest api,您可以使用與您的集群進行互動。為數不多的可以用api的事情如下 1.可以使用 catapi檢視elasticsearch的健康狀況,但是啟動時不能以守護程序方式啟動。root server01 curl 127.0.0.1 920...
探索Elasticsearch集群API
elasticsearch提供了乙個非常全面和強大的rest api,您可以使用與您的集群進行互動。為數不多的可以用api的事情如下 1.可以使用 catapi檢視elasticsearch的健康狀況,但是啟動時不能以守護程序方式啟動。1 2 3 root server01 curl 127.0.0...