![](/img/trans.png)
[英]Tools to migrate index from elasticsearch 1.x to elasticsearch 2.x
[英]Why Elasticsearch have conflicting field mappings on migration from 1.x to 2.x?
我想將彈性從1.5.2升級到2.1.1,當我使用遷移插件查找要解決的問題時,在遷移本身之前,我在“沖突字段映射”上遇到錯誤。
在有關此問題的文檔中 ,它表示:
具有相同名稱,相同索引,不同類型的字段必須具有相同的映射,但copy_to,dynamic,enabled,ignore_above,include_in_all和properties參數除外,這些參數可能對每個字段具有不同的設置。 在存在沖突的字段映射的情況下,Elasticsearch將不會啟動。 這些索引必須使用新的映射刪除或重新索引。
我無法理解其原因。我的意思是為什么“具有相同名稱,相同索引,不同類型的字段必須具有相同的映射”?
問題在於類型存儲在相同的Lucene索引中。 Lucene不適用於類型的上下文。 因此,在兩種不同類型中使用時,字段名稱與存儲在Lucene中的名稱相同。 由於Lucene使用相同的名稱,因此它們必須具有相同的類型。
因此,以下兩個字段將添加到Lucene的同一字段中:
index - type - field
myindex - type_a - fieldOne
myindex - type_b - fieldOne
在lucene索引中全稱為:fieldOne
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.