ElasticSearch
什么是ElasticSearch,根據(jù)其中文文檔可以簡(jiǎn)單定義為以下三點(diǎn),與傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)還是有較大的區(qū)別。
l? 一個(gè)分布式的實(shí)施文檔存儲(chǔ),每個(gè)字段可以被索引與搜索
l? 一個(gè)分布式實(shí)時(shí)分析搜索引擎
l? 可以勝任上百個(gè)服務(wù)節(jié)點(diǎn)的擴(kuò)展,并支持PB級(jí)別的結(jié)構(gòu)化或者非結(jié)構(gòu)化數(shù)據(jù)。
數(shù)據(jù)輸入和輸出
1.?????文檔的定義
在大多數(shù)應(yīng)用中,多數(shù)實(shí)體或?qū)ο罂梢员恍蛄谢癁榘≈祵?duì)的JSON對(duì)象。一個(gè)健可以是一個(gè)字段或字段的名稱,一個(gè)值可以是一個(gè)字符串、數(shù)字、布爾值和另外一個(gè)對(duì)象。
通常情況下,對(duì)象和文檔是可以相互替換的。不過(guò),有一個(gè)區(qū)別:一個(gè)對(duì)象僅僅是類似于hash、hashmap、字典或關(guān)聯(lián)數(shù)組的JSON對(duì)象,對(duì)象中也可以嵌套其他的對(duì)象。對(duì)象可能包含了另外一些對(duì)象。文檔是指最頂層或者跟對(duì)象,這個(gè)根對(duì)象被序列化成JSON并存儲(chǔ)到ES中,指定了唯一的ID。
2.?????文檔元數(shù)據(jù)
一個(gè)文檔不僅包含它的數(shù)據(jù),也包含了元數(shù)據(jù),元數(shù)據(jù)包括了有關(guān)文檔的信息,有三個(gè)必須的元數(shù)據(jù)元素。_index(文檔在哪存放) _type(文檔表示的對(duì)象類別) _id(文檔唯一標(biāo)識(shí))
l? _index。
l? _type。
l? _id。是一個(gè)字符串,當(dāng)它和_index以及_type組合就可以唯一確定ES中的一個(gè)文檔。創(chuàng)建一個(gè)新的文檔時(shí),要么自己提供id,要么讓ES幫你生成。
3.?????索引文檔
4.?????取回一個(gè)文檔
5.?????檢查文檔是否存在
6.?????更新整個(gè)文檔