1 Oracle Big Data SQLとは

Oracle Big Data SQLでは、Apache Hive、HDFS、Object Store、Oracle NoSQL Database、Apache Kafka、Apache HBaseおよびその他のNoSQLデータベースなど、複数のビッグ・データ・ソースに格納された非リレーショナル・データに対する問合せがサポートされています。

分散データの統合問合せが、Oracle Big Data SQLでサポートされています。したがって、ユーザーは、異なるデータ・ストアからのデータがすべてOracleデータベースに格納されているかのようにシームレスに表示および分析できるようになります。

Oracle Big Data SQLを使用すると、手動または既存のアプリケーションによって、Hadoopエコシステム内のデータに対する非常に複雑なSQL SELECT文を実行できます。たとえば、Oracle Advanced Analyticsのユーザーである場合は、Oracle Big Data SQLを使用してOracle Databaseデータ・マイニング・モデルをHadoopのビッグ・データに拡張できます。

次のアーキテクチャ図は、ドライバ、外部表、Hadoopクラスタおよびノードなど、問合せに関連するコンポーネントを含むSQL問合せのデータ・フローを示しています。

bdsql_architecture.pngの説明が続きます。
図bdsql_architecture.pngの説明

上の図では、次の問合せのデータ・フローが示されています。

  • Oracle SQL Access to Kafka (OSaK)を使用したKafkaへの問合せ - Oracle SQL Access to Kafkaにより、Oracle SQLでHiveまたはHadoopを使用せずにKafkaトピックにアクセスできます。ORA_KAFKA PL/SQLパッケージには、これを有効にする関数およびプロシージャが含まれています。Kafkaを問い合せる前に、ORA_KAFKA.REGISTER_CLUSTERを使用してデータベース・スキーマにKafkaクラスタを登録してから、ORA_KAFKA.CREATE_VIEWSプロシージャを使用してビューを作成します。このプロシージャによって内部で外部表が作成されるため、外部表を明示的に作成する必要はありません。Oracle SQL Access to Kafkaを参照してください。
  • Hiveストレージ・ハンドラを使用したKafkaの問合せ - ORACLE_HIVEアクセス・ドライバは、Oracle Big Data SQLインストールに含まれているHiveストレージ・ハンドラを使用してKafkaトピックにアクセスできます。KafkaトピックにアクセスするHive外部表を最初に作成してから、その表に対するOracle Big Data SQL表を作成します。OracleのKafka用Hiveストレージ・ハンドラを使用したKafkaトピック用Hive外部表の作成を参照してください。
  • Query Apache HBase - ORACLE_HIVEアクセス・ドライバを使用して、Apache HBaseに格納されているデータにアクセスすることもできます。HBase表にアクセスするHive外部表を作成してから、その表に対するOracle Big Data SQL表を作成します。Apache HBaseのOracle外部表の作成を参照してください。
  • NoSQLの問合せ - ORACLE_HIVEアクセス・ドライバは、Oracle NoSQL Databaseに格納されているデータへのアクセスに使用されます。KVStoreにアクセスするHive外部表を最初に作成してから、その表に対するOracle Big Data SQLに外部表を作成します。Oracle NoSQL Databaseの外部表の作成を参照してください。
  • オブジェクト・ストアの問合せ - ORACLE_BIGDATAアクセス・ドライバを使用すると、オブジェクト・ストアに格納されているデータに対する外部表を作成できます。Oracle Big Data SQLは、Oracle Object Store、Amazon S3およびAzure Blob Storageなどのオブジェクト・ストアへのアクセスをサポートしています。オブジェクト・ストア・アクセス用のOracle外部表の作成を参照してください。
  • HDFSの問合せ - ORACLE_HDFSアクセス・ドライバを使用すると、HDFSに格納されている様々なタイプのデータにアクセスできますが、HDFSにはHiveメタデータはありません。テキスト・データのレコード形式を定義することも、特定のデータ形式のSerDeを指定することもできます。HDFSファイルのOracle外部表の作成を参照してください。