2013-04-30 21 views
27

ElasticSearch belgeleri bunun nasıl yapılacağı konusunda net değildir.Elasticsearch'te bir alan türü nasıl güncellenir

Bazı tweet'leri indeksledim ve bir alan oluşturdum_at, bir tarih yerine dizgi olarak dizine eklendim. Curl çağrısı ile bu değişiklikle nasıl yeniden dizine gidileceğini bulamıyorum. Yeniden birleştirme karmaşık bir süreç ise, o zaman orada olanı silmeyi ve yeniden başlamayı tercih ederim. Ancak, alan türlerini nasıl belirtebileceğimi bulamıyorum!

Her türlü yardım büyük beğeni topluyor.

cevap

23

Sen aşağıdaki gibi tanımlanabilir Put Mapping AP I.

$ curl -XPUT 'http://localhost:9200/twitter/tweet/_mapping' -d ' 
{ 
    "tweet" : { 
     "properties" : { 
      "message" : {"type" : "string", "store" : "yes"} 
     } 
    } 
} 
' 

Bir tarih kullanarak bir eşleme tanımlamak gerekir: Ayrıca bir ekleme ise sadece yazın değil biçimi belirtmek gerekir

{ 
    "tweet" : { 
     "properties" : { 
      "user" : {"type" : "string", "index" : "not_analyzed"}, 
      "message" : {"type" : "string", "null_value" : "na"}, 
      "postDate" : {"type" : "date"}, 
      "priority" : {"type" : "integer"}, 
      "rank" : {"type" : "float"} 
     } 
    } 
} 
+0

Yep gibi olmalıdır. Teşekkür ederim dadoonet. – maximus

+0

@dadoonet "İleti" dosya türünü değiştirmenin herhangi bir yolu, dizgeden "uzun" olarak değişir. Hata, başarısızlıkla sonuçlandı {[mapper [message] farklı türde, current_type [string] – Dibish

+1

@dibish Hayır. Yeniden endekslemeniz gerekir. – dadoonet

8

mysql zaman damgası o zaman buna benzer bir biçim eklemelisiniz.

"properties": { 
    "updated_at": { 
     "type": "date", 
     "format": "yyyy-MM-dd HH:mm:ss" 
    } 
} 

biz örneği düşünün, o zaman işte bu,

"tweet" : { 
    "properties" : { 
     "user" : {"type" : "string", "index" : "not_analyzed"}, 
     "message" : {"type" : "string", "null_value" : "na"}, 
     "postDate" : {"type" : "date" , "format": "yyyy-MM-dd HH:mm:ss" }, 
     "priority" : {"type" : "integer"}, 
     "rank" : {"type" : "float"} 
    } 
} 
İlgili konular