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の説明が続きます

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

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

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

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

また、パイプラインをモニター、停止または削除できます。

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

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

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

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

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

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

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

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形式のオブジェクト・ストアにエクスポートし、パイプラインの開始後15分ごとに(interval属性値に基づいて)実行します。

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

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

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

詳細は、Oracle管理パイプラインの使用を参照してください。