1. 程式人生 > >elasticsearch指定其他欄位為主鍵_id欄位

elasticsearch指定其他欄位為主鍵_id欄位

       用了這麼久的elasticsearch,一直以為es只有對_id欄位進行賦值的方法來使用主鍵進行去重,今天才發現原來_id也可以指定為其他欄位,

es會自動將指定欄位的值,賦值給_id欄位,這樣就比較方便了.這裡記錄一下:


這裡直接索引庫和mapping一起建立:
curl -XPOST localhost:9200/test -d '{
    "settings" : {
        "number_of_shards" : 1,
        "number_of_replicas":0
    },
    "mappings" : {
        "test1" : {
            "_id":{"path":"mainkey"},
            "_source" : { "enabled" : false },
            "properties" : {
                "mainkey" : { "type" : "string", "index" : "not_analyzed" }
            }
        }
    }
}'

然後看一下mapping如下:
然後插入一條資料:
curl -XPOST localhost:9200/test/test1 -d'
{
"mainkey":"aaa"
}'
然後查詢:


這樣,就完成了.