11.20 RDFデータをバルク・ロードするためのORARDFLDRユーティリティ
この項では、ORARDFLDRユーティリティ・プログラムを使用したRDFデータのバルク・ロードについて説明します。
このユーティリティ・プログラムは、ディレクトリ内のすべてのファイルをOracle AI Database内のRDFグラフにロードします。RDF/XML、Turtle、N-Triple、N-Quads、Trigなど、複数のRDFシリアライズをサポートしています。gzipで圧縮されたファイルは、gzipファイルを解凍せずに直接ロードできます。また、Unicode文字エスケープおよびロング・リテラル(CLOB)は自動的に処理されます。
ORARDFLDRユーティリティ・プログラムの実行
ORARDFLDRを実行するコマンドを次に示します。
前提条件: 環境変数${ORACLE_JENA_HOME}がOTNキットが格納されているディレクトリを指していることを確認します。
java -cp ${ORACLE_JENA_HOME}/jar/'*' oracle.spatial.rdf.client.jena.utilities.RDFLoader <command_line_arguments>java -cp ${ORACLE_JENA_HOME}/jar/'*' oracle.spatial.rdf.client.jena.utilities.RDFLoader --help便宜上、binディレクトリ内のシェル・スクリプトも実行できます。次に、このスクリプトを使用するコマンドについて説明します。
前提条件: ${ORACLE_JENA_HOME}を設定し、${ORACLE_JENA_HOME}/binがUnix PATH環境変数に含まれていることを確認します。
orardfldr <command_line_arguments>
orardfldr --help
11.20.1 Oracle Autonomous AI DatabaseでのORARDFLDRの使用
この項では、ORARDFLDRユーティリティをOracle Autonomous AI Databaseで使用する方法について説明します。
Support for Apache Jenaに含まれるORARDFLDRユーティリティを使用して、クライアント・コンピュータからOracle Autonomous AI DatabaseにRDFファイルをバルク・ロードできます。Autonomous AI Databaseに接続するためのJDBC URLを取得する方法の詳細は、「Oracle Autonomous AI DatabaseへのJDBCベースのRDFアプリケーションの接続」を参照してください。
次の例では、19cと18.3 JDBCを使用したJava接続で説明されているアプローチに従って、Autonomous AI DatabaseへのJDBC接続の確立について説明します。
例11-34 Oracle Autonomous AI DatabaseへのJDBC接続
前提条件: Oracle jarファイルojdbc8.jar、ucp.jar、oraclepki.jar、osdt_core.jarおよびosdt_cert.jarがあることを確認します。
wallet_<dbname>.zipファイルを解凍します。ファイルを解凍すると、次のリストのようなもの表示されます。
[oracle@localhost Wallet_Info]$ ls cwallet.sso keystore.jks README tnsnames.ora ewallet.p12 ojdbc.properties sqlnet.ora truststore.jks
次のJDBC URLを使用します。
jdbc:oracle:thin:@dbname_alias?TNS_ADMIN=<path_to_wallet_directory>次の例では、rdfdbという名前のデータベースに対してORAFLDRユーティリティを使用し、ウォレット・ディレクトリを/home/oracle/RDF/Wallet_Info/にしてRDFファイルをロードします。
例11-35 ORAFLDRユーティリティを使用したRDFデータ・ファイルのロード
前提条件: 例11-34にリストされている前提条件jarが$ORACLE_JENA_HOME/jar/にコピーされていることを確認します。
ORARDFLDRを起動して、クライアント・コンピュータからAutonomous AI DatabaseにRDFファイルをロードします。
orardfldr --modelName=M1 --fileDir=./data --lang=N-TRIPLE
--jdbcUrl=jdbc:oracle:thin:@rdfdb_medium?TNS_ADMIN=/home/oracle/RDF/Wallet_Info/
--user="RDFUSER" --password=password --networkOwner="RDFUSER" --networkName=NET1RDFデータをN-Triple形式でRDFUSERが所有するNET1という名前のネットワーク内のM1という名前のモデルにロードします。RDFUSERは、データベース接続にも使用されます。