ヘッダーをスキップ
Oracle Ultra Search管理者ガイド
11gリリース1(11.1)
E05790-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

A メタデータのOracle Ultra Searchへのロード

Oracle Ultra Searchでは、メタデータをOracle Ultra Searchデータベースにロードするためのコマンドライン・ツールが提供されます。データが大量にある場合は、このツールによってHTMLベースの管理ツールより速くロードできます。

このローダー・ツールは次の種類のメタデータをサポートします。

メタデータ・ローダーはJavaアプリケーションです。このプログラムを使用するには、後述するXML Schemaの書式に準拠したXMLファイルにメタデータを格納する必要があります。これによって、XMLファイル名、データベース関連パラメータおよびローダー・タイプ・パラメータを指定してJavaプログラムを起動できます。プログラムではXMLファイルを解析し、メタデータをアップロードします。ステータスとエラーのメッセージは、端末のコンソールに表示されます。

ロード・ツールの起動

ローダー・プログラムのバイナリ・ファイルは、%ULTRASEARCH_HOME%/bin/MetaLoader.classディレクトリにあります。

使用するコンピュータには、Java 1.5以上に準拠したJava Runtimeが必要です。システムのJava CLASSPATHには、次のJavaライブラリが含まれている必要があります。

基本のJava Archive(JAR)ファイル、ojdbc5.jarおよびojdbc6.jarには、キャラクタ・セットのUS7ASCII、WE8DEC、WE8ISO8859P1、WE8MSWIN1252およびUTF8の完全なグローバリゼーション・サポートを提供するために必要なすべてのクラスが含まれています。

オブジェクトまたはコレクションのCHARまたはVARCHARデータ・メンバーで他のキャラクタ・セットを使用するには、アプリケーションのCLASSPATH環境変数にorai18n.jarを含める必要があります。


注意:

以前のリリースはnls_charset12.zipファイルに依存していました。このファイルは現在では廃止されています。

システムのJava CLASSPATHには、Oracle Ultra Searchのバイナリ・ファイルのパス(UNIXの場合は%ULTRASEARCH_HOME%/bin、Windowsの場合は%ULTRASEARCH_HOME%\bin)も含めます。

ファイルを起動するには、次のように入力します。

% java MetaLoader -db database_connection_string -u user_name -p password      -i instance_name -type loader_type -f input_file

コマンド・オプションの意味は、次のとおりです。

たとえば、このツールを使用してXMLファイルtest.xmlに指定されている属性LOVをロードする際、次の引数を指定するとします。

次の文によってローダー・プログラムを起動します。

% java MetaLoader -db dlsun576:5521:isearch -u wk_test -p welcome -i wk_inst -type lov -f test.xml

ドキュメントおよび関連性スコアのロード

このローダー・ツールを使用してドキュメントとその検索オプション・スコアをOracle Ultra Searchに追加するには、パラメータ-typeの値をdocにする必要があります。

入力XMLファイル

ドキュメントURLおよび検索オプション・スコアは、XMLファイルに定義されています。検索対象のドキュメントは1つ以上定義できます。各ドキュメントに、1つ以上の検索オプション・スコアのペアを指定できます。XMLファイルの定義は、XML Schemaに格納されます。

ドキュメント検索オプション用のXMLファイルの例

<?xml version = "1.0" encoding = "UTF-8"?>
<doc_list>
  <doc url="http://www.oracle.com" data_source_name="Data Source A">
    <term score="100">database</term>
    <term score="90">internet</term>
    <term score="80">software</term>
  </doc>
  <doc url="http://www-st.us.oracle.com" data_source_name="Data Source B">
    <term score="100">Sever Technology</term>
    <term score="100">ST Web site</term>
    <term score="95">st</term>
  </doc>
</doc_list>

この例では、ドキュメントURL http://www.oracle.comがデータ・ソースData Source Aにロードされます。これは、検索オプション項目にdatabase(スコア100)、internet(スコア90)、software(スコア80)を指定することで、Oracle Ultra Searchで定義されます。


注意:

データ・ソース名は、データ・ソースの表示名ではなく、元のデータ・ソース名です。

検索属性LOVおよびLOV表示名のロード

ローダー・ツールを使用してLOVエントリおよび表示名をOracle Ultra Searchに追加するには、パラメータ-typeの値をlovにする必要があります。

LOV XMLファイル

LOVエントリおよび表示名は、XMLファイルに定義されています。XMLファイルには、検索属性LOVを1つ以上定義できます。デフォルトLOVおよびデータ・ソース固有のLOVは、両方ともXMLファイルに格納されます。XMLファイルの定義は、XML Schemaに格納されます。

LOV XMLファイルの例

<?xml version = "1.0" encoding = "UTF-8"?>
<lov_list>
  <lov search_attr_name="Department" search_attr_type="string">
    <default>
      <lov_values>
        <entry value="100"></entry>
        <entry value="200"></entry>
      </lov_values>
      <lov_display_names lang="en-US">
        <entry value="100" display_name="Human Resource"></entry>
        <entry value="200" display_name="Finance"></entry>
      </lov_display_names>
    </default>
    <data_source name ="data source a">
      <lov_values>
        <entry value="300"></entry>
        <entry value="400"></entry>
      </lov_values>
      <lov_display_names lang="en-US">
        <entry value="300" display_name="Sales"></entry>
        <entry value="400" display_name="Marketing"></entry>
      </lov_display_names>
    </data_source>
    <data_source name ="data source b">
      <lov_values>
        <entry value="500"></entry>
        <entry value="600"></entry>
      </lov_values>
      <lov_display_names lang="en-US">
        <entry value="500" display_name="Production"></entry>
        <entry value="600" display_name="Research"></entry>
      </lov_display_names>
    </data_source>
  </lov>
</lov_list>

前述の例では、文字列タイプの検索属性Departmentに関する複数のLOVがOracle Ultra Searchにロードされます。次のLOVがロードされます。

  • 検索属性「Department」に関するデフォルトのLOVエントリ

  • データ・ソース「data source a」用の検索属性「Department」のLOV

  • データ・ソース「data source b」用の検索属性「Department」のLOV

ドキュメント検索オプション用のXML Schema

ドキュメント検索オプション項目およびスコア用のXML Schemaは、次のようになります。

<?xml version = "1.0" encoding = "UTF-8"?>
<!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema-->
<xsd:schema xmlns:xsd = "http://www.w3.org/2001/XMLSchema"
         elementFormDefault = "qualified">
  <xsd:element name = "doc_list">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name = "doc" maxOccurs = "unbounded">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name = "term" maxOccurs = "unbounded">
                <xsd:complexType>
                  <xsd:simpleContent>
                    <xsd:extension base = "xsd:string">
                      <xsd:attribute name = "score" use = "required" type = "xsd:integer"/>
                    </xsd:extension>
                  </xsd:simpleContent>
                </xsd:complexType>
              </xsd:element>
            </xsd:sequence>
            <xsd:attribute name = "url" use = "required" type = "xsd:string"/>
            <xsd:attribute name = "data_source_name" use = "required" type = "xsd:string"/>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

LOVおよびLOV表示名用のXML Schema

LOVエントリおよび表示名用のXML Schemaは、次のようになります。

<?xml version = "1.0" encoding = "UTF-8"?>
<!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema-->
<xsd:schema xmlns:xsd = "http://www.w3.org/2001/XMLSchema"
         elementFormDefault = "qualified">
  <xsd:element name = "lov_list">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name = "lov" maxOccurs = "unbounded">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name = "default" minOccurs = "0">
                <xsd:complexType>
                  <xsd:sequence>
                    <xsd:element name = "lov_values" minOccurs = "0">
                      <xsd:complexType>
                        <xsd:sequence>
                          <xsd:element name = "entry" maxOccurs = "unbounded">
                            <xsd:complexType>
                              <xsd:attribute name = "value" use = "required" type = "xsd:string"/>
                            </xsd:complexType>
                          </xsd:element>
                        </xsd:sequence>
                      </xsd:complexType>
                    </xsd:element>
                    <xsd:element name = "lov_display_names" minOccurs = "0" maxOccurs = "unbounded">
                      <xsd:complexType>
                        <xsd:sequence>
                          <xsd:element name = "entry" maxOccurs = "unbounded">
                            <xsd:complexType>
                              <xsd:attribute name = "value" use = "required" type = "xsd:string"/>
                                <xsd:attribute name = "display_name" use = "required" type = "xsd:string"/>
                            </xsd:complexType>
                          </xsd:element>
                        </xsd:sequence>
                        <xsd:attribute name = "lang" use = "required">
                          <xsd:simpleType>
                            <xsd:restriction base = "xsd:string">
                              <xsd:length value = "5"/>
                                <xsd:pattern value = "[a-zA-Z]{2}\-[a-zA-Z]{2}"/>
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:attribute>
                      </xsd:complexType>
                    </xsd:element>
                  </xsd:sequence>
                </xsd:complexType>
              </xsd:element>
              <xsd:element name = "data_source" minOccurs = "0" maxOccurs = "unbounded">
                <xsd:complexType>
                  <xsd:sequence>
                    <xsd:element name = "lov_values" minOccurs = "0">
                      <xsd:complexType>
                        <xsd:sequence>
                          <xsd:element name = "entry" maxOccurs = "unbounded">
                            <xsd:complexType>
                              <xsd:attribute name = "value" use = "required" type = "xsd:string"/>
                            </xsd:complexType>
                          </xsd:element>
                        </xsd:sequence>
                      </xsd:complexType>
                    </xsd:element>
                    <xsd:element name = "lov_display_names" minOccurs = "0">
                      <xsd:complexType>
                        <xsd:sequence>
                          <xsd:element name = "entry" maxOccurs = "unbounded">
                            <xsd:complexType>
                              <xsd:attribute name = "value" use = "required" type = "xsd:string"/>
                              <xsd:attribute name = "display_name" use = "required" type = "xsd:string"/>
                            </xsd:complexType>
                          </xsd:element>
                        </xsd:sequence>
                        <xsd:attribute name = "lang" use = "required">
                          <xsd:simpleType>
                            <xsd:restriction base = "xsd:string">
                              <xsd:length value = "5"/>
                                <xsd:pattern value = "[a-zA-Z]{2}\-[a-zA-Z]{2}"/>
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:attribute>
                      </xsd:complexType>
                    </xsd:element>
                  </xsd:sequence>
                  <xsd:attribute name = "name" use = "required" type = "xsd:string"/>
                </xsd:complexType>
              </xsd:element>
            </xsd:sequence>
            <xsd:attribute name = "search_attr_name" use = "required" type = "xsd:string"/>
            <xsd:attribute name = "search_attr_type" use = "required">
              <xsd:simpleType>
                <xsd:restriction base = "xsd:string">
                  <xsd:enumeration value = "string"/>
                    <xsd:enumeration value = "number"/>
                      <xsd:enumeration value = "date"/>
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:attribute>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>