成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

?Elasticsearch如何實(shí)現(xiàn)文檔操作

這篇文章給大家分享的是有關(guān)Elasticsearch如何實(shí)現(xiàn)文檔操作的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

在天鎮(zhèn)等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),全網(wǎng)營(yíng)銷推廣,外貿(mào)網(wǎng)站建設(shè),天鎮(zhèn)網(wǎng)站建設(shè)費(fèi)用合理。

Elasticsearch

回顧

前面的四篇文章我們討論了什么是es,是用來干什么的,如何進(jìn)行安裝,怎么樣建立索引庫,如何給索引庫添加mapping映射。本篇我們開始討論如何添加文檔,如何修改文檔已經(jīng)如何刪除文檔。

文檔

什么是es文檔,其實(shí)mapping就是es的數(shù)據(jù)字段約束,我們定義好一個(gè)索引,并且定義了一個(gè)mapping映射,就相當(dāng)于我們?cè)陉P(guān)系型數(shù)據(jù)庫中定義好了這個(gè)表的表結(jié)構(gòu)。也就是我們這個(gè)索引會(huì)用那些列。es中的一個(gè)文檔,其實(shí)就是在mapping約束下的一行數(shù)據(jù)記錄。索引可以認(rèn)為是文檔的優(yōu)化集合,每個(gè)文檔都是字段的集合,這些字段是包含數(shù)據(jù)的鍵值對(duì)。默認(rèn)情況下,Elasticsearch對(duì)每個(gè)字段中的所有數(shù)據(jù)建立索引,并且每個(gè)索引字段都具有專用的優(yōu)化數(shù)據(jù)結(jié)構(gòu)。希望這樣說小伙伴們可以理解。

maping映射結(jié)構(gòu)

上篇文章中我們創(chuàng)建了一個(gè)叫做movie的索引,并且創(chuàng)建了該索引的mapping,復(fù)習(xí)一下查詢索引的命令

curl -X GET "localhost:9200/movie/_mapping?pretty"

可以看到,返回一個(gè)json串,可以清晰的看到我們定義的mapping,這里就不貼出來,不知道的小伙伴可以到上一篇文章中查看。

添加

下面,我們根據(jù)定義的映射,來添加我們的文檔,特別說明:我們后續(xù)針對(duì)es的操作,都會(huì)用一個(gè)工具postman倆操作,目前還不會(huì)的小伙伴們可以自行學(xué)習(xí)一下

我們都知道,添加文檔用PUT命令,所以需要執(zhí)行如下命令進(jìn)行文檔的添加,具體請(qǐng)看下圖,postman的操作

http://ip:9200/movie/_doc/1

?Elasticsearch如何實(shí)現(xiàn)文檔操作

?

我們將要添加的數(shù)據(jù),以json鍵值對(duì)的方式書寫完成,放在body輸入框中,點(diǎn)擊raw,選擇JSON的格式

_doc作者目前用的es版本為7.8的版本,es7.0以前是支持多類型的,但是7.0以后,就將多類型移除掉了,默認(rèn)支持_docl類型。

?

請(qǐng)求成功成功后會(huì)返回如下內(nèi)容:

{
    "_index": "movie",
    "_type": "_doc",
    "_id": "1",
    "_version": 3,
    "result": "created",
    "_shards": {
        "total": 2,
        "successful": 1,
        "failed": 0    },
    "_seq_no": 2,
    "_primary_term": 2}
?

根據(jù)上面的內(nèi)容,我們可以看到的信息有,這個(gè)文檔是是創(chuàng)建的"result": "created",屬于movie索引的_doc類型以及他的版本號(hào)。

?

id自動(dòng)分配

上面的例子,我們添加文檔的時(shí)候,是指定了一個(gè)文檔的id為1,那么我們?nèi)绻恢付?code>id呢?這個(gè)時(shí)候es會(huì)為我們自動(dòng)生成一個(gè)id,請(qǐng)看下面的操作。

?

可以看到讓系統(tǒng)自動(dòng)分配id,用PUT增加文檔的時(shí)候回報(bào)錯(cuò),可以看到,提示用post并非PUT。然后我們換成post進(jìn)行請(qǐng)求,返回結(jié)果如下,可以看到系統(tǒng)為我們分配的id是一個(gè)字符串。

?
{
    "_index": "movie",
    "_type": "_doc",
    "_id": "9XmceHQByHcRbTF_z1TT",
    "_version": 1,
    "result": "created",
    "_shards": {
        "total": 2,
        "successful": 1,
        "failed": 0    },
    "_seq_no": 4,
    "_primary_term": 3}

修改

es的修改,不是真正的修改,它的機(jī)制是將,原有的文檔刪除掉,然后新建一個(gè),并且版本號(hào)加1.那么我們將修改的內(nèi)容如下:

{
    "films" : "八百",
    "name" :"八百",
    "release_area":"中國(guó)",
    "release_time" :"八月二十一",
    "theme":"贊美小人物" 
}

再次使用PUT命令進(jìn)行請(qǐng)求,返回結(jié)果如下:

{
    "_index": "movie",
    "_type": "_doc",
    "_id": "1",
    "_version": 4,
    "result": "updated",
    "_shards": {
        "total": 2,
        "successful": 1,
        "failed": 0    },
    "_seq_no": 3,
    "_primary_term": 2}
?

可以看到,這個(gè)時(shí)候"result": "updated",是updated``而不是created的操作,并且版本號(hào)進(jìn)行了累加。

?

刪除

刪除一個(gè)文檔就很簡(jiǎn)單了,直接指定你要?jiǎng)h除的文檔id就可以了,如下:

?Elasticsearch如何實(shí)現(xiàn)文檔操作

查詢

我們將剛剛刪除的那個(gè)文檔在添加進(jìn)去,下面我們看一下如何查詢文檔。

查詢單個(gè)文檔

我們查詢id為1的文檔,如下:

批量查詢

批量查詢,我們會(huì)用到一個(gè)_mget的指令,如下:

http://121.36.55.57:9200/_mget

請(qǐng)求體為

{
    "docs":[
        {
            "_index":"movie",
            "_type":"_doc",
            "_id":"1"            
        },
        {
           "_index":"movie",
            "_type":"_doc",
            "_id":"2"  
        }
    ]
}

查詢結(jié)果

{
    "docs": [
        {
            "_index": "movie",
            "_type": "_doc",
            "_id": "1",
            "_version": 1,
            "_seq_no": 6,
            "_primary_term": 3,
            "found": true,
            "_source": {
                "films": "八百",
                "name": "八百",
                "release_area": "中國(guó)",
                "release_time": "八月二十一",
                "theme": "贊美小人物"            }
        },
        {
            "_index": "movie",
            "_type": "_doc",
            "_id": "2",
            "_version": 1,
            "_seq_no": 7,
            "_primary_term": 3,
            "found": true,
            "_source": {
                "films": "信條",
                "name": "信條",
                "release_area": "美國(guó),英國(guó)",
                "release_time": "九月四日",
                "theme": "時(shí)空逆襲"            }
        }
    ]
}

還可以這些查詢,指定索引,指定類型,直接提供id就可以查詢

http://121.36.55.57:9200/movie/_doc/_mget

請(qǐng)求體如下:也是可以查到的。

{
   "ids":["1","2"]
}

感謝各位的閱讀!關(guān)于“Elasticsearch如何實(shí)現(xiàn)文檔操作”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

新聞名稱:?Elasticsearch如何實(shí)現(xiàn)文檔操作
文章源于:http://jinyejixie.com/article44/pgephe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計(jì)、營(yíng)銷型網(wǎng)站建設(shè)網(wǎng)站建設(shè)、建站公司、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
安岳县| 沁阳市| 界首市| 栾川县| 金坛市| 定西市| 唐海县| 手机| 晋州市| 晋州市| 阳谷县| 阿坝县| 西平县| 龙泉市| 林口县| 尚义县| 汉源县| 奉新县| 高雄市| 怀远县| 陆良县| 和静县| 张家界市| 景德镇市| 贞丰县| 澳门| 马关县| 顺昌县| 凤山县| 民勤县| 卢龙县| 安西县| 阳朔县| 平安县| 米脂县| 彰化市| 隆昌县| 麻城市| 邳州市| 龙海市| 崇礼县|