テキスト検索設定では、ドキュメントをtsvector
に変換するために必要なすべてのオプションを指定します。これは、テキストをトークンに分解するために使用するパーサーと、各トークンを語彙素に変換するために使用する辞書です。 to_tsvector
またはto_tsquery
のすべての呼び出しには、その処理を実行するためのテキスト検索設定が必要です。 設定パラメーターdefault_text_search_configは、デフォルト設定の名前を指定します。これは、明示的な設定パラメーターが省略されている場合にテキスト検索関数によって使用される名前です。 postgresql.conf
で設定することも、set
コマンドを使用して個々のセッションに設定することもできます。
定義済みのテキスト検索設定がいくつかあり、カスタム設定を簡単に作成できます。 テキスト検索オブジェクトの管理を容易にするために、一連のSQLコマンドが利用可能であり、テキスト検索オブジェクトに関する情報を表示するいくつかのpsqlコマンドがあります。
例として、組み込みの英語
設定を複製することから始めて、設定pg
を作成します。
テキスト検索構成の作成public.pg ( COPY = pg_catalog.english );
PostgreSQL固有のシノニムリストを使用し、$SHAREDIR/tsearch_data/pg_dict.syn
に保存します。 ファイルの内容は次のようになります。
postgres pg
pgsql pg
postgresql pg
シノニム辞書は次のように定義します。
テキスト検索辞書pg_dictを作成 (
TEMPLATE = synonym,
SYNONYMS = pg_dict
);
次に、独自の設定ファイルを持つ英語_Ispell
辞書を登録します。
テキスト検索の作成辞書english_ispell (
TEMPLATE = ispell,
DictFile=英語、
AffFile=英語、
StopWords=英語
);
これで、構成pg
の単語のマッピングを設定できます。
ALTERテキスト検索構成ページ
asciiword、asciihword、hword_asciipart、
word、hword、hword_part
pg_dict、english_ispell、english_stem;
組み込み設定が処理するいくつかのトークンタイプにインデックスを付けたり検索したりしないことを選択します。
ALTERテキスト検索構成ページ
メール、url、url_path、swfloat、float;
のドロップマッピングこれで構成をテストできます:
SELECT * FROM ts_debug('public.pg', '
PostgreSQL、高度にスケーラブルでSQLに準拠したオープンソースのオブジェクトリレーショナル
データベース管理システムは、次のベータテストを受けています
私達のソフトウェアの版。
');
次のステップでは、public
スキーマで作成された新しい構成を使用するようにセッションを設定します。
=> \dF
テキスト検索設定のリスト
スキーマ | 名前 | 説明
---------+------+-------------
パブリック | pg |
SET default_text_search_config = 'public.pg';
SET
ショーdefault_text_search_config;
default_text_search_config
----------------------------
public.pg