3

index.cache.field.max_size: NUMBERファイルに設定して、フィールドキャッシング(常駐)を制限しようとしていconfig/elasticsearch.ymlます。約 100 万件のレコードがあり、「ワード クラウド」を構築するために、7 つのフィールド (すべてのフィールドに大量のテキスト データが含まれています) に対してファセット操作が実行されます。

curl -X POST 'http://localhost:9200/monitoring/mention_reports/_search?&pretty=true' -d '
{
  "size":"0",

  "query": {
    "filtered":{
      "query":{
        "text": {
          "positive_keyword": {
            "query": "quora"
          }
        }
      },
      "filter":{

                    . . .


      }
    }
  },


  "facets": {
    "tagcloud": {
      "terms": {
        "fields":["field1","field2","field3","field4","field5","field6","field7"],
        "size":"300"
      }
    }
  }
}
'

index.cache.field.max_size に指定された値 (1000 または 100000) に関係なく、ヒープ メモリ (15 GB 割り当て) は常に使い果たされます。私は何を間違っていますか?また、このような膨大な量のテキスト データに対してファセットを実行する代わりに、ワード クラウドを構築するためのより良い方法はありますか?

マッピング:

 curl -XPOST http://localhost:9200/monitoring/ -d '
{
  "settings":{
    "index":{
      "number_of_shards":5,
      "number_of_replicas":1
    },
    "analysis":{
      "filter":{
        "myCustomShingle":{
          "type":"shingle",
          "max_shingle_size":3,
          "output_unigrams":true
        },
        "myCustomStop":{
          "type":"stop",
          "stopwords":["a","about","abov ... ]
        }
      },
      "analyzer":{
        "myAnalyzer":{
          "type":"custom",
          "tokenizer":"standard",
          "filter":[
            "lowercase",
            "myCustomShingle",
            "stop",
            "myCustomStop"
          ]
        }
      }
    }
  },
  "mappings":{
    "mention_reports":{
      "_source":{
        "enabled":true
      },
      "_all":{
        "enabled":false
      },
      "index.query.default_field":"post_message",
      "properties":{
      "id":{
        "type":"string",
        "index":"not_analyzed",
        "include_in_all" : "false",
        "null_value" : "null"
      },
      "creation_time":{
        "type":"date"
      },
      "field1":{
        "type":"string",
        "analyzer":"standard",
        "include_in_all":"false",
        "null_value":0
      },
      "field2":{
        "type":"string",
        "index":"not_analyzed",
        "include_in_all":"false",
        "null_value":"null"
      },

            . . .


        "field7":{
          "type":"string",
          "analyzer":"myAnalyzer",
          "term_vector":"with_positions_offsets",
          "null_value" : "null"
        }                                           

      }
    }
  }
}
'
4

0 に答える 0