2012-01-18 9 views
0

私のウェブサイトには、ユーザーがさまざまなテーブルや列を検索できるという要件があります。だから私はフルテキスト検索を使ってこれを実装しようとしています。フルテキストインデックスデザインの考慮事項(SQL Server 2008)

私は、以下の問題に関してより多くのFTS経験を持つ人から何らかのインプットを得たいと考えています。

  1. FTSは、あなたは、単一検索で同じテーブルから複数の列を検索することができますが、私は、単一の検索で複数のテーブルから複数の列を検索するオプションが表示されません。これは事実ですか?

  2. 複数のテーブルを検索するために複数の検索が必要な場合は、各テーブルのインデックスを別のフルテキストカタログに入れるのは意味がありますか?ウィザードは大きなテーブル用の新しいカタログを推奨しているようですが、この場合「大規模」とはどういう意味かわかりません。

  3. 最後に、テーブルのある列の一致が他の列の一致よりも前に来るように結果を並べ替える必要がありますか?

答えて

0

1.While FTSあなたは、単一検索で同じテーブルから複数の列を検索することができ、私は一つの検索で複数のテーブルから複数の 列を検索するオプションが表示されません。これは実際に ケースですか?

単一のテーブルのFTIndexには、別のテーブルの列を含めることはできません。だから、通常は、複数の検索を行うようにクエリを書くだけです(#2でこれを暗示しています)。

別のオプションは、複数のテーブルにまたがるインデックス付きビュー(see requirements)を作成し、ビューの最上部にFTIndexを作成することです。私はこれが可能だと信じていますが、確実にテストするべきです。私は複数のテーブル間で検索する複数の検索を必要とする2.Ifは

、それは別のフルテキスト カタログ内の各テーブルのインデックスを配置する意味を成していますか?ウィザードはより大きな テーブル用の新しいカタログを推奨しているようですが、私はこの場合「大」という意味を全く知らないのです。

は、カタログが単なる論理グループであるため、SQL2008に違いはありません。ただし、ディスクサブシステムがある場合は、別のファイルグループにFTIndexを置くことを検討することもできます(別のディスク上のファイルグループにまたがってテーブルを分割してIOを分散するのと同様の考慮事項)。

3.最終的に、テーブルのある列の一致が他の列の一致より前に来るように結果を並べ替える必要がありますか? これが可能だとは思わない...

関連する問題