身体のテキストが弾性検索インデックスに格納された約15,000の傷ついたウェブサイトがあります。私はすべてのこれらのテキストに使用されているトップ100最も使用される3ワードフレーズを取得する必要があります。このようなすべての文書で最もよく使われている3つの単語フレーズを取得する
何か:
Hello there sir: 203
Big bad pony: 92
First come first: 56
[...]
私はこれに新たなんです。用語ベクトルを調べましたが、単一のドキュメントに適用されるようです。ですから、用語ベクトルとnグラム分析による集約の組み合わせとなると思います。しかし、私はこれを実装するためにどのように行くのか分かりません。任意のポインタが役立ちます。
私の現在のマッピングと設定:
{
"mappings": {
"items": {
"properties": {
"body": {
"type": "string",
"term_vector": "with_positions_offsets_payloads",
"store" : true,
"analyzer" : "fulltext_analyzer"
}
}
}
},
"settings" : {
"index" : {
"number_of_shards" : 1,
"number_of_replicas" : 0
},
"analysis": {
"analyzer": {
"fulltext_analyzer": {
"type": "custom",
"tokenizer": "whitespace",
"filter": [
"lowercase",
"type_as_payload"
]
}
}
}
}
}
これは完全に機能します。ありがとうピーター! – HyderA
ただ1つの質問ですが、1つのフィールドで複数のフレーズサイズを使用するにはどうすればよいですか。 2語句、4語句など?各分析装置のインデックスを作成する必要がありますか? – HyderA
並べ替え別々のアナライザを使って別々のフィールドを作成し、ボディの内容をすべてにコピーします。その後、それぞれの目的に合わせて建てられた屋根板の欄に面することができます。 –