0

我正在使用elasticsearch5和kibana5从facebook graph api开发一个基于facebook评论仪表板。我添加了一些分析的字段,它们出现在 Kibana 的发现部分,但是在进行可视化时我没有找到这些字段。

我的脸书评论索引:

PUT fb_comments
{
  "settings": {
      "analysis": {},
      "mapping.ignore_malformed": true
  },
  "mappings": {
      "fb_comment": {
          "dynamic_templates": [
              {
                  "created_time": {
                      "match": "created_time",
                      "mapping": {
                          "type": "date",
                          "format": "epoch_second"
                      }
                  }
              },
              {
                  "message": {
                      "match": "message",
                      "mapping": {
                          "type": "string",
                          "analyzer": "simple"
                      }
                  }
              },
              {
                  "strings": {
                      "match_mapping_type": "string",
                      "mapping": {
                          "type": "string",
                          "index": "not_analyzed"
                      }
                  }
              }
          ]
      }
  }
}

分析的字段消息出现在发现 中 分析的字段消息未出现在可视化部分

4

2 回答 2

0

我认为这可能与内存限制有关。根据 Kibana 5 帮助,分析的字段可能需要更多内存。

我检查了我的内存,它确实以最大容量使用。

于 2017-01-08T17:01:21.397 回答
0

我终于找到了解决方案。因此,在elasticsearch 4.X中,我们有字符串类型,然后如果您希望进行分析,您可以指定分析器的类型。elasticsearch 5.X中,我们有两种类型的关键字,一种是自动聚合而不是分析,第二种是自动分析而不是聚合的文本。解决方案是,如果您想要一个分析的字段并同时聚合,您应该添加一个属性“fielddata”:true,它将被分析和聚合。

于 2017-01-18T19:23:31.630 回答