カスタム言語データの作成および使用

独自の言語固有の条件(一般的な略語など)を作成して、データをチャンク化するときに使用します。

ここでは、DBMS_VECTOR_CHAINパッケージのチャンカ・ヘルパー関数CREATE_LANG_DATAを使用して、簡体字中国語のデータ・ファイルをロードします。このデータ・ファイルには、選択した言語の略語トークンが含まれています。
  1. ローカル・ユーザーとして接続し、データ・ダンプ・ディレクトリを準備します。
    1. SQL*PlusにSYSユーザーとしてログインし、SYSDBAとして接続します。
      conn sys/password as sysdba
      CREATE TABLESPACE tbs1
      DATAFILE 'tbs5.dbf' SIZE 20G AUTOEXTEND ON
      EXTENT MANAGEMENT LOCAL
      SEGMENT SPACE MANAGEMENT AUTO;
      SET ECHO ON
      SET FEEDBACK 1
      SET NUMWIDTH 10
      SET LINESIZE 80
      SET TRIMSPOOL ON
      SET TAB OFF
      SET PAGESIZE 10000
      SET LONG 10000
    2. ローカル・ユーザー(docuser)を作成し、必要な権限を付与します。
      drop user docuser cascade;
      create user docuser identified by docuser DEFAULT TABLESPACE tbs1 quota unlimited on tbs1;
      grant DB_DEVELOPER_ROLE to docuser;
    3. 言語データ・ファイルを格納するローカル・ディレクトリ(VEC_DUMP)を作成します。必要な権限を付与します。
      create or replace directory VEC_DUMP as '/my_local_dir/';
      grant read, write on directory VEC_DUMP to docuser;
      
      commit;
    4. 必要な言語のデータ・ファイルをVEC_DUMPディレクトリに転送します。たとえば、dreoszhs.txt (簡体中国語)です。

      使用している言語のデータ・ファイルの場所を確認するには、サポートされている言語およびデータ・ファイルの場所を参照してください。

    5. ローカル・ユーザー(docuser)として接続します:
      conn docuser/password
  2. リレーショナル表(doc_langtab)を作成して、略語トークンを格納します。
    CREATE TABLE doc_langtab(token nvarchar2(64))
      ORGANIZATION EXTERNAL
      (default directory VEC_DUMP
       ACCESS PARAMETERS (RECORDS DELIMITED BY NEWLINE CHARACTERSET AL32UTF8)
       location ('dreoszhs.txt'));
  3. DBMS_VECTOR_CHAIN.CREATE_LANG_DATAをコールして、言語データ(doc_lang_data)を作成します。
    DECLARE
      lang_params clob := '{
                             "table_name"      : "doc_langtab",
                             "column_name"     : "token",
                             "language"        : "simplified chinese",
                             "preference_name" : "doc_lang_data"
                           }';
    BEGIN
      dbms_vector_chain.create_lang_data(json(lang_params));
    END;
    /
言語データをロードした後、VECTOR_CHUNKSまたはUTL_TO_CHUNKSLANGUAGEチャンク化パラメータを指定することで、言語固有のチャンク化を使用できるようになりました。