5.
テスト・プログラム
この方法の評価をするためにテスト・プログラムを作成しました。ダウンロードしてご利用になれます。
動作環境
- OS : MS-Windows
- DB : SQL Server 2008 R2 以降(Expressを含む)
実行方法
ZIPファイルを解凍して GramlocTester.exe を起動してください。インストーラーはありません。
以降に、使用方法を説明いたします。
5.1. 準備
以下のものを用意してください。
データベース
SQL Server 2008 R2 以降を使用します。Expressでもかまいません。
SQL Server 上に、テストで使用するデータベースを作成し、接続文字列が分かるようにしておいてください。
テキスト・データ
検索対象となるテキスト・データを、テキスト・ファイルの形で用意してください。
1本でも複数本でもかまいません。量が少ないと、同じ内容のレコードが多くなってしまいますので、ある程度の量を用意してください。
『青空文庫』からダウンロードしたデータがご利用になれます。
5.2. データベース設定
GramlocTester.exe を起動すると、以下のダイアログが開きます。
- 『接続文字列(C):』に、接続文字列を入力してください。
- 『接続テスト(T)』を押して、接続の確認をしてください。
次に、『テーブル作成』タブを選択してください。
作成するテーブルは2種類で、検索対象のテキストを格納するデータ・テーブルと、全文検索に使用するインデックス・テーブルです。
-
作成するテーブルをチェックしてください。
データ・テーブルは必須です。インデックスは1つ以上を選択してください。
- 『作成(M)』ボタンを押すと、テーブルを作成します。
テーブルは、Management Studio等で作成してもかまいません。
以下の構造のテーブルを作成してください。使用するテーブル名、列名は、ダイアログの『テーブル』、『列』タブで設定できます。
データ・テーブル
列名 |
データ型 |
ID |
int |
SENTENCE |
ntext |
- ID列は、「IDENTITYの指定」を「はい」に設定し、主キーにしてください。
インデックス・テーブル
列名 |
データ型 |
CHARCODE |
nchar(1),nchar(2),nchar(4),smallint,int,bigint |
ID |
int |
POSITION |
smallint |
- CHARCODE列のデータ型は、どれか1つを選択してください。
- 3つの列を主キーに設定します。
5.3. データの挿入
テーブルにテスト・データを挿入します。
- 『ファイルの選択(F)』を押して、テキスト・ファイルを選択してください。
- 『目標データ数(T):』に、数値を入力してください。
- 『開始(S)』ボタンを押すと、データの挿入を開始します。
5.4. 検索
指定した文字列を含むレコードを検索します。
- 検索する文字列を入力してください。
-
検索に使用するインデックスを選択してください。
『LIKE』を選択するとインデックスを使用せずに、LIKE 演算子を使用して検索します。
- 『実行』ボタンを押してください。
- 検索に要した処理時間、ヒット件数が表示されます。
以上のようにして、LIKE 演算子で検索した場合と、N-Gram インデックスを使用した場合との比較が出来ます。