統合

Oracle NoSQL Databaseは、Apache HadoopやOracleスタックの製品と統合できます。次の各項では、統合の詳細について説明します。

Hadoop統合

Oracle NoSQL Databaseは、oracle.kv.hadoop.KVInputFormatクラスを使用してApache Hadoopシステムと統合できます。このクラスを使用すると、Oracle NoSQL Databaseからデータを読み取り、それをHadoopシステムへ挿入する準備を行うことができます。データをOracle NoSQL Databaseに戻すには、標準メカニズムを使用してHadoopシステムからデータを読み取り、APIを使用してOracle NoSQL Databaseにレコードを書き込みます。KVInputFormatを使用してMap/ReduceジョブでOracle NoSQL Databaseからデータを読み取る例が<KVHOME>/examples/hadoopディレクトリに用意されています。統合ガイドApache Hadoop MapReduceとの統合を参照してください。

Oracle Big Data SQLとApache Hive

Oracle Big Data SQLは、Hadoop、HDFS、HiveおよびOracle NoSQL Databaseに格納されたデータへの共通のSQLアクセス・レイヤーです。これにより、顧客がHiveまたはOracle DatabaseからOracle NoSQLデータを問い合せることができるようになります。ユーザーは、セキュア・アクセス用に構成されたOracle NoSQL Databaseに格納されているデータに対してMapReduceジョブを実行できます。最新リリースでは、プリミティブ・データ型と複合データ型もサポートされています。統合ガイドOracle Big Data SQLとの統合を参照してください。

また、NoSQLデータベース・ストアに含まれている表データに対して、指定した一連のHive基本問合せを実行できます。この場合、データベースはセキュアでも非セキュアでもかまいません。統合ガイドApache Hiveとの統合を参照してください

エラスティック・サーチとの統合による全文検索

全文検索では、問合せに適合する自然言語のドキュメントを識別する機能、およびオプションで問合せとの関連性でそれらをソートする機能が提供されます。Oracle NoSQL Databaseは、Oracle NoSQL Database表に格納されたデータに対する全文検索機能を実現するために、サードパーティ製オープン・ソース検索エンジンであるElasticsearchと統合されています。統合ガイド全文検索のためのElasticsearchとの統合を参照してください。

Oracle外部表統合

Oracle NoSQL Databaseデータは、Oracle Databaseの外部表機能を使用してアクセスできます。この機能を使用すると、NoSQL DatabaseデータをOracle Databaseに読み込むことができます。外部表機能を使用してOracle NoSQL Databaseデータを変更することはできません。

これは、Oracle NoSQL Database Enterprise Editionのユーザーのみが使用可能な機能であることに注意してください。

Oracle Databaseの外部表機能を使用してOracle NoSQL Databaseデータを読み取るには、<KVHOME>/exttab/bin/nosql_streamプリプロセッサを使用してOracle表にデータを移入する必要があります。外部表機能を使用するようにOracle Databaseを構成する必要があります。

nosql_streamプリプロセッサの使用方法、および外部表を使用するようにOracle Databaseを構成する方法の詳細は、Javaダイレクト・ドライバAPIリファレンスoracle.kv.exttabパッケージ要約を参照してください。

Oracle GoldenGate統合

Oracle GoldenGateからのトランザクション・データは、Oracle NoSQL Handlerを使用してターゲットのOracle NoSQL Databaseにレプリケートできます。Oracle NoSQLハンドラは、Oracle NoSQL Java SDKを使用してOracle NoSQL Databaseにチェンジ・データ・キャプチャをストリーミングします。Oracle NoSQL Java SDKでは、Oracle NoSQLデータベースのオンプレミスおよびOCIクラウド・インスタンスが両方ともサポートされています。

Oracle NoSQLハンドラは、同期APIを使用してOracle NoSQLに操作を移動します。Oracle NoSQLデータベースでは、挿入、更新および削除操作が、従来のRDBMSとは異なる方法で処理されます。

次に、挿入、更新および削除操作が操作モードに応じてハンドラでどのように解釈されるかについて説明します。
  • 挿入: データベースに行が存在しない場合、挿入操作は挿入として処理されます。行が存在する場合、挿入操作は更新として処理されます。
  • 更新: データベースに行が存在しない場合、更新操作は挿入として処理されます。行が存在する場合、更新操作は更新として処理されます。
  • 削除: データベースに行が存在しない場合、削除操作は無効です。行が存在する場合、削除操作は削除として処理されます。

Oracle NoSQLデータベース内のデータの状態は冪等です。ソース証跡ファイルまたは証跡ファイルのセクションを再生できます。最終的には、証跡データがOracle NoSQLに書き込まれた回数に関係なく、Oracle NoSQLデータベースの状態は同じになります。

Oracle NoSQLハンドラの操作は、プロパティ・ファイルを使用して構成します。これらのプロパティは、Javaアダプタのプロパティ・ファイルにあります。

詳細は、Oracle GoldenGate for Big Dataの使用Oracle NoSQL Handlerの使用を参照してください。