diff options
Diffstat (limited to '')
-rw-r--r-- | storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_ddl.txt | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_ddl.txt b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_ddl.txt new file mode 100644 index 00000000..f82763f8 --- /dev/null +++ b/storage/mroonga/vendor/groonga/src/suggest/groonga_suggest_ddl.txt @@ -0,0 +1,62 @@ +suggest向けDDL解説 +================== + +suggest機能で必要となるスキーマを説明する。なお、このドキュメントはsuggest機能完成とともにdocsディレクトリ内に移動される。 + +1. 概要 + + suggestデータベースには、学習過程でのみ必要になるテーブルと、 + 学習時およびサジェスト時に必要になるテーブルがあります。 + 前者を作業用テーブルと呼び、後者を学習結果テーブルと呼びます。 + +2. 学習結果テーブル + + 学習結果テーブルは二つのファクトテーブルと二つの語彙テーブルから構成されます。 + +2.1. 学習結果ファクトテーブル + +item: suggest候補として提示する個々の文字列を格納するテーブルです。 + + 以下のカラムを用意しています。 + + _key: itemテーブルの主キーは、サジェスト対象文字列そのものとなります。 + kana: 対象文字列の読み仮名を格納します。必須ではありませんが、セットされていればローマ字入力途中の文字列に対しても補完候補を提示可能となります。 + freq: ユーザクエリにおいて入力された回数を記録します。 + last: ユーザクエリに最後に入力された時刻を記録します。 + freq2: ユーザクエリにおいてサブミットされた回数を記録します。 + boost: 当該文字列の露出を制御します。正値を指定すれば露出が頻繁になり、-1を指定すれば、露出されません。 + buzz: 入力回数の差分を記録します。 + co: 共起する他の文字列を参照するための索引です。 + +pair: item間の共起関係を管理するテーブルです。 + + 以下のカラムを用意しています。 + + _kay: preおよびpostのIDを結合した数値が主キーとなります。 + pre: 事前に出現するアイティムです。 + post: 事後に出現するアイティムです。 + freq0: completeイベントにおける共起頻度を記録します。 + freq1: correctイベントにおける共起頻度を記録します。 + freq2: suggestイベントにおける共起頻度を記録します。 + +2.2. 学習結果語彙テーブル + + bigram: itemの主キーによって全文検索を行うための語彙表です。 + kana: itemのkanaカラムの入力補完を行うための語彙表です。 + +3. 作業用テーブル + + 作業用テーブルにはeventとsequenceの2テーブルがあります。 + +event: ユーザの個々のクエリイベントに対応します。レコードの追加のみが行われます。 + 適宜dropして再作成することが望ましいです。 + + type: submitの有無を記録します。 + time: イベントが発生した時刻を記録します。 + item: ユーザが入力した文字列を記録します。 + sequence: ユーザの識別子(cookie, ipアドレス等)を記録します。 + +sequence: 同一ユーザの一連の操作を記録します。レコードの追加のみが行われます。 + 適宜dropして再作成することが望ましいです。 + + events: 当該ユーザの操作履歴を記録します。 |