Autonomous Databaseでのデータ・パイプラインについて

Autonomous Databaseデータ・パイプラインは、ロード・パイプラインまたはエクスポート・パイプラインです。

ロード・パイプラインは、外部ソースからの継続的な増分データ・ロードを提供します(データがオブジェクト・ストアに到着すると、データベース表にロードされます)。エクスポート・パイプラインは、オブジェクト・ストアへの継続的な増分データ・エクスポートを提供します(新しいデータがデータベース表に表示されると、オブジェクト・ストアにエクスポートされます)。パイプラインはデータベース・スケジューラを使用して、増分データを継続的にロードまたはエクスポートします。

Autonomous Databaseデータ・パイプラインには、次のものがあります:

  • 統合操作: パイプラインを使用すると、データを迅速かつ簡単にロードまたはエクスポートし、新しいデータに対して定期的にこれらの操作を繰り返すことができます。DBMS_CLOUD_PIPELINEパッケージは、パイプライン構成、およびロードまたはエクスポート操作のスケジュール済ジョブの作成と開始のためのPL/SQLプロシージャの統合セットを提供します。

  • スケジュール済データ処理: パイプラインはデータ・ソースをモニターし、新しいデータが到着したときにデータを定期的にロードまたはエクスポートします。

  • High Performance: パイプラインは、Autonomous Databaseで使用可能なリソースを使用してデータ転送操作をスケーリングします。デフォルトでは、パイプラインはすべてのロードまたはエクスポート操作に並列性を使用し、Autonomous Databaseで使用可能なCPUリソースに基づいて、または構成可能な優先度属性に基づいてスケーリングします。

  • 原子性およびリカバリ: パイプラインは、オブジェクト・ストア内のファイルがロード・パイプラインに対して1回のみロードされるように、原子性を保証します。

  • モニタリングおよびトラブルシューティング: パイプラインには、パイプライン操作のモニターおよびデバッグを可能にする詳細なログ表およびステータス表が用意されています。

  • マルチクラウド対応: Autonomous Database上のパイプラインは、アプリケーションを変更することなく、クラウド・プロバイダ間の簡単な切替えをサポートしています。パイプラインは、Autonomous Databaseがサポートするすべての資格証明およびオブジェクト・ストアのURI形式(Oracle Cloud Infrastructure Object Storage、Amazon S3、Azure Blob StorageまたはAzure Data Lake Storage、Google Cloud StorageおよびAmazon S3互換オブジェクト・ストア)をサポートしています。

Autonomous Databaseでのデータ・パイプラインのライフサイクルについて

DBMS_CLOUD_PIPELINEパッケージは、パイプラインを作成、構成、テストおよび起動するためのプロシージャを提供します。パイプライン・ライフサイクルとプロシージャは、ロード・パイプラインとエクスポート・パイプラインの両方で同じです。

pipeline_lifecycle.epsの説明が続きます
図pipeline_lifecycle.epsの説明

どちらのパイプライン・タイプでも、次のステップを実行してパイプラインを作成および使用します。

  1. パイプラインを作成して構成します。詳細は、パイプラインの作成と構成を参照してください。

  2. 新しいパイプラインをテストします。詳細は、「パイプラインのテスト」を参照してください。

  3. パイプラインを開始します。詳細は、パイプラインの開始を参照してください。

さらに、パイプラインを監視、停止または削除できます。

Autonomous Databaseでのロード・パイプラインについて

ロード・パイプラインは、オブジェクト・ストア内の外部ファイルからデータベース表への継続的な増分データ・ロードに使用します。ロード・パイプラインは、オブジェクト・ストア内の新しいファイルを定期的に識別し、新しいデータをデータベース表にロードします。

ロード・パイプラインは次のように動作します(これらの機能の一部は、パイプライン属性を使用して構成できます)。

  • オブジェクト・ストア・ファイルは、データベース表にパラレルにロードされます。

    • ロード・パイプラインは、オブジェクト・ストア・ファイル名を使用して、新しいファイルを一意に識別してロードします。
    • オブジェクト・ストア内のファイルがデータベース表にロードされると、ファイル・コンテンツがオブジェクト・ストアで変更されても、再度ロードされません。
    • オブジェクト・ストア・ファイルが削除されても、データベース表のデータには影響しません。
  • 障害が発生した場合、ロード・パイプラインは自動的に操作を再試行します。再試行は、パイプラインのスケジュール済ジョブの後続の実行ごとに試行されます。

  • ファイル内のデータがデータベース表に準拠していない場合、FAILEDとしてマークされ、問題をデバッグおよびトラブルシューティングするために確認できます。

    • いずれかのファイルのロードに失敗した場合、パイプラインは停止せず、他のファイルのロードを続行します。
  • ロード・パイプラインでは、JSON、CSV、XML、Avro、ORC、Parquetなど、複数の入力ファイル形式がサポートされています。

load-pipeline.epsの説明が続きます
図load-pipeline.epsの説明

Oracle以外のデータベースからの移行は、ロード・パイプラインで考えられるユースケースの1つです。Oracle以外のデータベースからOracle Autonomous Databaseにデータを移行する必要がある場合は、データを抽出してAutonomous Databaseにロードできます(Oracle Data Pump形式は、Oracle以外のデータベースからの移行には使用できません)。CSVなどの汎用ファイル形式を使用して、Oracle以外のデータベースからデータをエクスポートすることで、データをファイルに保存し、ファイルをオブジェクト・ストアにアップロードできます。次に、Autonomous Databaseにデータをロードするパイプラインを作成します。ロード・パイプラインを使用して大量のCSVファイルをロードすると、フォルト・トレランス、再開および再試行操作などの重要な利点が得られます。大規模なデータ・セットを使用した移行の場合、Oracle以外のデータベース・ファイル用に1つずつ複数のパイプラインを作成して、Autonomous Databaseにデータをロードできます。

Autonomous Databaseでのパイプラインのエクスポートについて

エクスポート・パイプラインは、データベースからオブジェクト・ストアへのデータの継続的な増分エクスポートに使用します。エクスポート・パイプラインは、候補データを定期的に識別し、データをオブジェクト・ストアにアップロードします。

次の3つのエクスポート・パイプライン・オプションがあります(エクスポート・オプションはパイプライン属性を使用して構成できます)。

  • 新しいデータを追跡するためのキーとして日付列またはタイムスタンプ列を使用して、問合せの増分結果をオブジェクト・ストアにエクスポートします。

  • 新しいデータを追跡するためのキーとして日付列またはタイムスタンプ列を使用して、表の増分データをオブジェクト・ストアにエクスポートします。

  • 問合せを使用してオブジェクト・ストアに表のデータをエクスポートし、日付列またはタイムスタンプ列を参照せずにデータを選択します(これにより、パイプラインは、各スケジューラ実行に対して問合せによって選択されるすべてのデータをエクスポートします)。

エクスポート・パイプラインには、次の機能があります(これらの一部は、パイプライン属性を使用して構成できます)。

  • 結果はオブジェクト・ストアに並行してエクスポートされます。

  • 障害が発生した場合、後続のパイプライン・ジョブはエクスポート操作を繰り返します。

  • エクスポート・パイプラインでは、CSV、JSON、ParquetまたはXMLなど、複数のエクスポート・ファイル形式がサポートされています。

Oracleメンテナンス・パイプラインについて

Autonomous Databaseには、ログをオブジェクト・ストアにエクスポートするための組込みのパイプラインが用意されています。これらのパイプラインは事前構成されており、ADMINユーザーが起動できます。

Oracleメンテナンス・パイプラインは次のとおりです。

  • ORA$AUDIT_EXPORT: このパイプラインは、データベース監査ログをJSON形式でオブジェクト・ストアにエクスポートし、パイプラインの起動後(interval属性値に基づいて)15分ごとに実行します。

  • ORA$APEX_ACTIVITY_EXPORT: このパイプラインは、Oracle APEXワークスペース・アクティビティ・ログをJSON形式でオブジェクト・ストアにエクスポートします。このパイプラインは、APEXアクティビティ・レコードを取得するためのSQL問合せを使用して事前構成されており、パイプラインの起動後(interval属性値に基づいて)15分ごとに実行されます。

Oracleメンテナンス・パイプラインはADMINユーザーが所有し、Oracleメンテナンス・パイプラインの属性はADMINユーザーが変更できます。

デフォルトでは、Oracleメンテナンス・パイプラインはcredential_nameとしてOCI$RESOURCE_PRINCIPALを使用します。

詳細は、「Oracleメンテナンス・パイプラインの使用」を参照してください。