我必須使用包含單個 Json 物件的單個欄位存盤檔案。此物件具有可變深度和可變模式。我配置這樣的映射:
"mappings": {
"properties": {
"@timestamp": {
"type": "date"
},
"message": {
"type": "object"
}
}
}
它作業正常,Elasticsearch 使用接收到的檔案創建和更新映射。問題是在映射中進行了一些更新后,它拒絕了新檔案并且不再更新映射。此時,我更改了該獨立開發者的索引和映射更新。我期待知道正確的解決方案。
例如第一個檔案是:
{
personalInfo:{
fistName: "tom"
}
moviesStatistics: {
count: 100
}
}
將更新 Elasticsearch 映射的第二個檔案是:
{
personalInfo:{
fistName: "tom",
lastName: "hanks"
},
moviesStatistics: {
count: 100
},
education: {
title: "a title..."
}
}
Elasticsearch 使用 doc1 創建映射并使用 doc2、doc3、...更新它,直到收到大量檔案。之后,它開始拒絕與最后一個映射欄位不匹配的每個檔案。
uj5u.com熱心網友回復:
畢竟我在 Elasticsearch 的主頁上找到了解決方案https://www.elastic.co/guide/en/elasticsearch/reference/7.13//dynamic-field-mapping.html 我們可以使用動態映射,簡單地使用這個映射:
"mappings": {
"dynamic": "true"
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/344573.html
上一篇:拍攝快照時未找到索引例外
