私のデータベースでは、たとえば 5000 行 (キーワードとして) のリストがあります。記事 (1000 語でもかまいません) が与えられたので、データベース内のキーワードに一致する任意の単語を一致させたいと考えています。たとえば、私はこれらのレコードを db に持っています (行はコンマを使用して言及されています):
tv, tv and videos, movie, horror movie, camera, digital camera, canon digital camera
各行には、「URL」という名前の別の列があります。そして、私の入力文字列は次のようになります:
私はホラー映画が嫌いです。キヤノンが新しいデジタルカメラを発売。これまでのところ、私は 3 台のデジタル カメラを所有しています...」
上記の文字列から、一致する必要があります:
- 保存したキーワードホラー映画に対するホラー映画. しかし、ここではホラー映画のキーワードの方が適切であるため、映画だけを映画と一致させたくありません。
- デジタル カメラ対 保存されたキーワードデジタル カメラ
- デジタル カメラ...保存されたキーワードデジタル カメラに対して
(太字は記事内、斜体はデータベース内)
データベース内の各キーワードを反復処理することは不可能であり、非現実的です。これまでのところ、Solr が適している可能性があることを学びました。しかし、Solr のインデックス作成とクエリを行う方法がわかりません。Solr にクエリを実行するには、キーワードを指定する必要があります。しかし、私は自分のキーワードが何であるかを知りません。記事全体を知っているだけです。キーワードは、1 つまたは複数の単語で構成されます。完全にランダムですが、最大 5 語まで言えます。
照合後、記事内のキーワードを次の列 (URL) の値に置き換える必要があります。たとえば、ホラー映画の記事のキーワードは、ホラー映画のURL 列に置き換える必要があります。
誰かが私に正しい道を教えてくれますか? どんな助けでも大歓迎です。
前もって感謝します