データ・フローSQLエンドポイントを開始する前に

データ・フローSQLエンドポイントの前提条件を確認します。

データ・フローSQLエンドポイントを使用するには、次のものが必要です:

  • Oracle Cloud Infrastructureアカウント。トライアル・アカウントは、データ・フローの表示に使用できます。
  • Oracle Cloudサービスのサービス管理者ロール。サービスがアクティブ化されると、選択したアカウント管理者に資格証明およびURLが送信されます。アカウント管理者は、サービスへのアクセスを必要とする各ユーザーのアカウントを作成します。
  • 次のようなサポート対象ブラウザがあります:
    • Microsoft Internet Explorer 11.x以上

    • Mozilla Firefox ESR 38以上

    • Google Chrome 42以降

    ノート

    Spark UIでは、Google Chromeのみを使用します。
  • 処理用のデータがオブジェクト・ストレージにロードされました。データは外部データ・ソースまたはクラウド・サービスから読み取ることができます。データ・フローのSQLエンドポイントは、オブジェクト・ストレージに格納されているデータのパフォーマンスとセキュリティを最適化します。

ノート

Oracle Cloud Infrastructure Console、APIまたはCLIを使用してクラウド・リソースに説明、タグまたはわかりやすい名前を割り当てる場合、機密情報を入力しないでください。これは、データ・フローでアプリケーションを作成または編集するときに適用されます。

SQLエンドポイントの理解

データ・フローSQLエンドポイントは、テナンシ内で長時間実行されるコンピュート・クラスタを使用するサービス・エンティティです。コンピュート・シェイプと使用するインスタンスの数を選択します。各クラスタは、管理者が停止するまで実行されます。Sparkはクラスタで実行されます。そのSQLエンジンは高速で、データ・フローと統合されており、非構造化データをサポートしています。ODBCまたはJDBCを使用して接続し、IAM資格証明で認証します。

データ・フローSQLエンドポイントの概要

データ・フローSQLエンドポイントは、開発者、データ・サイエンティストおよび上級アナリストが、データの対話型問合せをデータ・レイク内のデータが存在する場所で直接行えるように設計されています。このデータは、リレーショナル、半構造化、非構造化(ログ、センサー・ストリーム、ビデオ・ストリームなど)で、通常はオブジェクト・ストアに格納されます。データの量と複雑さが増すにつれて、データレイク内のデータを変換または移動するのではなく、ネイティブ形式で探索および分析するツールが重要になります。データ・フローのSQLエンドポイントを使用すると、アクセスの制御に使用されるクラウド・ネイティブ・セキュリティを使用して、大量のRAWデータを経済的に処理できます。必要なインサイトにセルフサービスでアクセスできます。複雑なITプロジェクトを調整したり、古いデータを心配する必要はありません。データ・フローのSQLエンドポイントの問合せは、スケジュールされた本番パイプラインのデータ・フロー・バッチとシームレスに相互運用されます。これにより、高速データ分析が可能になり、サイズが固定され、管理者が停止するまで実行される長時間実行の自動スケーリング・コンピュート・クラスタが使用されます。

データ・フローSQLエンドポイント:

  • データレイクに対してインタラクティブな分析を直接提供します。
  • Spark上に構築され、非構造化データのスケールアウト、容易な読取りおよび書込み、および既存のデータ・フローとの相互運用性を実現します。
  • SQLを使用して分析を容易にします。
  • IAM資格証明を使用したODBCまたはJDBC接続を使用して、主要なビジネス・インテリジェンス(BI)ツールをサポートします。
  • オブジェクト・ストレージにロードされた処理にデータを使用します。データは外部データ・ソースまたはクラウド・サービスから読み取ることができます。

データ・フローのSQLエンドポイントは、Sparkでサポートされているのと同じタイプのファイルをすべてサポートします。たとえば、JSON、Parquet、CSVおよびAvroです。

データ・カタログ・メタストア統合に関する考慮事項

データ・フローSQLエンドポイントとデータ・カタログ・メタストア(メタストア)間の緊密な統合は、外部表と管理対象表の両方に一貫性があり、信頼性が高く、管理されたアクセスを提供するための基礎となります。この統合を通じて、SQLエンドポイントは、スキーマ、表定義、パーティション・メタデータおよび記憶域の場所の認可リポジトリとしてメタストアを使用し、基礎となるファイルを繰り返しスキャンすることなく問合せを計画および最適化できます。

外部表の場合、メタストアは、スキーマおよびパーティション情報がオブジェクト・ストレージのレイアウトと一貫性を保ち、管理対象表およびデルタ表の場合、トランザクション・メタデータ、系統およびライフサイクル操作を追跡します。この統合メタデータ・レイヤーにより、Spark SQLは予測可能なパフォーマンスを提供し、ガバナンスとアクセス制御を適用し、スキーマの進化をサポートし、ワークロードとクラスタ間の互換性を維持できます。

メタストアでは、軽量ロック・メカニズムを使用して、SQLエンドポイントを介して発行された同時データ定義言語(DDL)操作がメタデータを破損させたり、一貫性のない表状態を作成しないようにします。CREATE/ALTER TABLE/PARTITIONDROP TABLE/PARTITIONなどのDDL文が実行されると、メタストアは排他ロックを取得して、操作が完了するまで他のセッションがスキーマまたはメタデータを変更しないようにします。

このロック・コーディネーションは、同じ表を同時に変更する2人のユーザーなど、競合状態から保護し、SQLエンドポイントが一貫したシリアライズされたメタデータ・ビューで動作することを保証します。DDL実行をメタストア・レベルのロック強制と結合することで、SQLエンドポイントは、高度に同時実行されたマルチユーザー環境でも、メタデータ操作のトランザクション整合性を維持します。

ただし、ロックによって表メタデータへのアクセスが一時的にブロックされ、長時間実行されるDDL操作によって、メタデータ読取りを必要とする他のユーザーの問合せ(特に共有環境または高度に同時実行された環境)で顕著な遅延が発生する可能性があります。

これらの影響を最小限に抑えるために、低トラフィックのメンテナンス・ウィンドウ中または調整済のワークフローを介してDDLアクティビティを調整し、ピーク時の問合せ実行期間外でスキーマの変更が行われるようにします。