Elasticsearch将随机字符串附加到索引中的源数据

时间:2016-06-29 21:39:54

标签: elasticsearch indexing lucene kibana

我是Elasticsearch的新手并且有一个特殊的问题:我使用带有kibana的elasticsearch来存储和可视化我的应用程序中的大多数事件。例如,要存储user_id为123的用户登录,我会写入索引 user / login / 123 ,并将以下数组作为数据:

{
   "details" : {
       "fname" : "John",
       "lname" : "Smith",
       "click" : "login-button",
        etc...
    },
    "ip_address" : 127.0.0.1,
    "browser_type" : "Chrome",
    "browser_version" : "17"
}

然而,我遇到的问题是一些记录在“详细信息”数组后显示随机字符串:请参阅屏幕截图。任何人都可以建议我做错了什么以及如何修复现有索引?

Screenshot

1 个答案:

答案 0 :(得分:0)

我认为你的数据应该有这样的东西:

{
    "details" : {
       "28d211adbf" : {
          "stats" : {
             "merge_field_count": 6,
             "unsubscribe_count_since_send": 3
          }
       },
       "555cd3bcba" : {
          "stats" : {
             "merge_field_count": 6,
             "unsubscribe_count_since_send": 3
          }
       }
    },
    "ip_address" : 127.0.0.1,
    "browser_type" : "Chrome",
    "browser_version" : "17"
}

在elasticsearch中索引文档实际上并不是一个好习惯。 阅读有关映射爆炸的更多信息: https://www.elastic.co/blog/found-crash-elasticsearch#mapping-explosion