問題タブ [fulltext-index]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
11664 参照

sql-server - SQL Server: 通常のインデックスとフルテキスト インデックス

フルテキスト インデックスと varchar 列の通常のインデックスの違い (および利点/欠点) は正確には何ですか? いつどのインデックスを使用しますか?

最もパフォーマンスの高い方法で検索できるようにする必要がある多数の varchar 列 (住所 - 都市名、通り名など) があり、使用するインデックスの種類とその理由を理解しようとしています。

ありがとうございました!

0 投票する
1 に答える
266 参照

django - Django、Xapian、HaystackでのDataBaseLockエラー

xapian/haystackを使用してモデルのインデックスを作成しています。ローカルマシンでテストすると、すべてが正常に機能しますが、サーバーにモデルを保存しようとすると、XapianはDatabaseLockErrorをスローします

待ち行列について、公式のdjangohaystackサイトで何かを読みました。これは進むべき道ですか?はいの場合、どのように実装しますか?

0 投票する
1 に答える
3812 参照

sql - SQL Server 2008 でインライン クエリで CONTAINS を使用する方法は?

CONTAINS を使用してタイトル フィールドを検索しようとしているこの SQL クエリがあります。

しかし、私はこのエラーが発生します。

「フルテキスト インデックスが作成されていないため、列 'Title' で CONTAINS または FREETEXT 述語を使用できません。」

Titles テーブルにはインデックスが作成されており、CONTAINS は単純な検索で正常に機能します。

私が間違っていることを誰かが知っていますか?CONTAIN クエリはインライン クエリでサポートされていませんか?

このクエリは SQL Server 2008 で実行されています。

0 投票する
6 に答える
58165 参照

sql-server - SQL Full Text Index Population がいつ終了したかを知るにはどうすればよいですか?

テスト SQL Server データベースに対して実行される ASP.NET アプリケーションの単体テストを作成しています。つまり、ClassInitialize メソッドはテスト データを含む新しいデータベースを作成し、ClassCleanup はデータベースを削除します。これを行うには、コードから .bat スクリプトを実行します。

テスト対象のクラスには、運用データベースではなく単体テスト データベースに接続する接続文字列が与えられます。

問題は、データベースにフルテキスト インデックスが含まれていることです。テストを期待どおりに実行するには、テスト データを完全に入力する必要があります。

私の知る限り、フルテキスト インデックスは常にバックグラウンドで作成されます。次のいずれかを実行できるようにしたいと考えています。

  1. 同期 (transact-SQL?) ステートメントを使用して、完全に入力されたフルテキスト インデックスを作成する、または
  2. フルテキスト作成がいつ終了するか、コールバック オプションはありますか、それとも繰り返し質問できますか?

私の現在の解決策は、クラスのinitializeメソッドの最後に遅延を強制することです-5秒でうまくいくようです-ドキュメントに何も見つからないためです。

0 投票する
1 に答える
982 参照

sql-server - SQL Server: フルテキスト インデックス作成用の 1 つの大きな永続計算列

それは私には最も簡単で簡単な解決策のように思えますが、間違っている場合は修正してください。

テーブルのすべての個々の列にフルテキスト インデックスを作成する代わりに、幅の広い計算列を 1 つだけ生成し、それに対してのみフルテキスト インデックスを実行する方がよいのではないでしょうか?

複数の列を持つことのすべての問題を取り除くように私には思えます。「x AND y」は、列 1 に「x」が存在し、列 2 に「y」が存在する行と一致しないため、検索できません。

反論はありますか?

0 投票する
1 に答える
720 参照

sql-server - インデックスが作成されていない列のテキスト複製により、SQL Server フルテキスト インデックスを高速化する

1) FirstName、LastName、および City というテキスト フィールドがあります。それらは全文索引付けされています。

2) フルテキスト インデックスではなく、FK int フィールドの AuthorId と EditorId もあります。

FirstName = 'abc' AND AuthorId = 1 で検索すると、最初にフルテキスト インデックス全体で 'abc' が検索され、次に AuthorId = 1 の結果セットが絞り込まれます。

適用できない多くのレコードに対して全文検索が実行されるため、リソースが大幅に浪費されるため、これは良くありません。

残念ながら、私の知る限り、FTS プロセスは SQL Server とは別であるため、これを回避することはできません (最初に AuthorId で絞り込み、次に一致するサブセットを全文検索します)。

今、私がフィードバックを求めている提案された解決策: Author をテキスト (例: AUTHORONE) として識別する全文検索に含まれる別の計算列を作成することは理にかなっていますか? そうすれば、AuthorId の制限を取り除き、代わりに全文検索の一部にすることができます (「abc」の検索は「abc」と「AUTHORONE」になり、すべて全文検索の一部として実行されます)。

これは良い考えですか?なんで?

0 投票する
1 に答える
265 参照

sql-server - SQL Server フルテキスト インデックスはどのように増加しますか?

フルテキスト インデックスの増加を把握し、その長期的なメモリ ニーズを測定しようとしています。

各検索のキャッシュを保持しますか? (新しいキーワードの最初の検索には常に少し時間がかかり、その後はより速くなることを知っている) それは無限に成長しますか?

それとも、作成後のサイズはかなり有限なのでしょうか?

時間の経過とともに、パフォーマンスの低下、停滞、または改善を期待する必要がありますか?

0 投票する
1 に答える
92 参照

sql-server - フルテキスト作成に関する SQL Server 2008 のバグ

SQL Server 2008 (バージョン 10.0.2531) を使用しています。

次の厄介なバグ?スカラー値関数からの値も結合する計算列を作成し、ウィザードを介してフルテキスト インデックスに追加すると、すべて正常に動作します。フルテキスト インデックスは列を正しく取得し、期待どおりに検索して結果を返すことができます。

テーブルまたは FK 接続されたテーブルで何かを変更しようとすると (たとえば、別のフィールドを追加するなど)、変更が受け入れられず、計算列にフルテキスト インデックスを作成できないというメッセージが表示され、保存ダイアログがキャンセルされます。

ここで何が起こっているのか分かりますか?

0 投票する
0 に答える
848 参照

sql-server-2005 - SQL Server 2005 Alter 全文カタログがインデックスに入力されない

こんにちは、次のように全文カタログを再構築しています。

インデックスにデータが入力されていません。を使用しFULLTEXTCATALOGPROPERTYてプロパティを確認すると、入力ステータスが常に 0 になり、itemcount が 0 になります。

次のように、インデックス(上記のカタログの一部)を直接入力すると:

これは正常に動作しますが、カタログを再構築することはできません。

任意の提案をいただければ幸いです。

0 投票する
2 に答える
2605 参照

sql-server - mssql フルテキスト インデックスを作成するときに使用するワード ブレーカーを定義できますか?

一部の列のデータをテーブルに格納するフルテキスト カタログを作成しましたが、単語の区切り記号と見なしたくない文字によってコンテンツが分割されているようです。(「/」、「-」、「_」など)

ワード ブレーカーの言語を設定できることはわかっています。http ://msdn.microsoft.com/en-us/library/ms345188.aspxで、新しい言語をインストールする方法についていくつかのアイデアが得られますが、それよりも直接的な制御が必要です。 、これらの言語はすべて、私が壊れたくない文字で壊れているためです。

ワード ブレーカーを見つけるために使用する独自の言語を定義する方法はありますか?