-1

私が目指しているのは、すべての一意の用語を md5 ハッシュと共にデータベースに保存することです。約 400000 の一意の用語を持つ 100 万のドキュメント インデックスがあります。この図はaggregations、elasticsearch で使用して取得しました。

GET /dt_index/document/_search
{
  "aggregations": {
    "my_agg": {
      "cardinality": {
        "field": "text"
      }
    }
  }
}

以下を使用して、固有の用語を取得できます。

GET /dt_matrix/document/_search
{
  "aggregations": {
    "my_agg": {
      "term": {
        "field": "text",
        "size": 100
      }
    }
  }
}

これにより、100 の一意の用語の用語集約とともに 10 の検索結果が得られます。しかし、約 400000 用語の JSON を取得するにはメモリが必要です。使用できるすべての検索結果を解析するのと同じですscan-scroll。すべてをメモリにロードせずに、すべての一意の用語を解析できる方法はありますか?

4

2 に答える 2

0

集計結果をスキャンしてスクロールすることはできません。むしろ、インデックス作成中にこれらの固有の用語を別のインデックスまたはタイプでインデックス化し、それに対して通常のページ付けを行う必要があります。

于 2015-06-21T06:17:02.980 に答える
0

集計をスクロールすることはできませんが、クエリ リクエストに追加することで、より小さく、よりメモリ管理しやすいサブセットを取得できます。たとえば、文字 A で始まるすべての一意の用語を要求できます。最大のサブセットのサイズに満足するまで、クエリを調整します。

于 2015-06-21T07:01:40.957 に答える