各レコードに約 200 ~ 400 文字の 10,000 ~ 50,000 レコードのバッチを処理します。検索語句の数は 1,500 を超えないと予想されます (すべてローカル ビジネスに関連するものです)。
構造化されたタグを用語のリストと比較してデータにタグを付ける関数を作成したいと考えています。
これらの用語は、ビジネスの説明に基づいています。したがって、たとえば、 、[Jazz Bar]
、[Nightclub]
、[Sports Bar]
または[Wine Bar]
はすべて のクエリに対応し[Bar]
ます。
通常、このデータには何らかの既存のタグが含まれているため、最初のパスで厳密な階層を作成し、決定的な既存のタグがない場合は 2 番目のパスを実行することもできます。
これを実装する最もパフォーマンスに敏感な方法は何ですか? すべてのキーワードを含むテーブルを作成し、それらを各データと照合することができます。これは、既存のタグを照合する場合は簡単ですが、フリー テキストを処理する場合はそれほど簡単ではありません。
Heroku/Postgresql を使用しています