2013-05-20 10 views
6

Henüz e-posta kullanmaya bugün başladım. Bir belge içinde belirli bir alanı kullanmak için bir çeşit küresel parametrede kimliğin her zaman tanımlanmasının mümkün olup olmayacağını merak ediyordum?Elasticsearch'te mevcut alanı kullanın

Benim JSON dokümanı her zaman kendi benzersiz kimlik Ben Kimlik alanı olarak Tutanak kimliğini kullanmak istiyorum Burada

{ 
    "Record ID": "a06b0000004SWbdAAG", 
    "System Modstamp": "01/31/2013T07:46:02.000Z", 
    "body": "Test Body" 
} 

var olacaktır.

Selamlar

cevap

2

Burada belgeler bkz yol ayarı kullanmak istiyorum:

http://www.elasticsearch.org/guide/reference/mapping/id-field/

özellikle böyle bir şey eşlemenizde çalışması gerekir:

{ 
    "your_mapping" : { 
     "_id" : { 
      "path" : "Record ID" 
     } 
    } 
} 

Ben ve asla değişken isimlere sahip olmayı denemedim. Gariplikle karşılaşırsanız, camelcase veya altını çizmek isteyebilirsiniz.

+0

Bunu denediğimde, hata eşleme türünün eksik olduğunu anlamaya devam ediyorum. –

+1

@CoolTechie Özellikler düzeyinde değil, tür düzeyinde kimliğinizi belirtmelisiniz. ppings ": { "your_mapping örneğin İçin": { "_ID": { "yol": "Kayıt Kimliği" }, "özellikleri": { "Kayıt Kimliği": { "type":" string " }, –

+7

, elasticsearch 1.5 sürümünde kullanımdan kaldırıldığını unutmayın, daha fazla bilgi için https://github.com/elastic/elasticsearch/issues/6730 adresine bakın. – Utopik

İlgili konular