AnalyticDB for MySQL で Spark SQL を使用して、Data Lake Formation (DLF) でメタデータが管理されているテーブルをクエリします。DLF は、統合されたメタデータ管理、統合された権限とセキュリティ管理、便利なデータレイクへの取り込み、およびワンクリックのデータ探索を提供します。
前提条件
開始する前に、以下があることを確認してください。
AnalyticDB for MySQL Data Lakehouse Edition クラスター
クラスター用に作成されたジョブ リソースグループです。詳細については、「リソースグループの作成と管理」をご参照ください。
クラスター用のデータベースアカウント。
Alibaba Cloud アカウント (root ユーザー):特権アカウントです。詳細については、「データベースアカウントの作成」の「特権アカウントの作成」セクションをご参照ください。
Resource Access Management (RAM) ユーザー: 特権アカウントと標準アカウントの両方であり、標準アカウントは RAM ユーザーに関連付けられています。詳細については、「データベースアカウントを作成する」および「データベースアカウントを RAM ユーザーに関連付ける、または関連付けを解除する」をご参照ください。
AnalyticDB for MySQL に、AliyunADBSparkProcessingDataRole ロールを偽装する権限が付与されている必要があります。 詳細については、「権限付与」をご参照ください。
DLF がアクティブ化されており、クラスターと同じリージョンにカタログが作成されていること。詳細については、「カタログ」Topic の「カタログの作成」セクションをご参照ください。
Data Lake Formation (DLF) で管理されているデータのクエリ
AnalyticDB for MySQL コンソールにログインします。 左上隅で、リージョンを選択します。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。 [Data Lakehouse Edition] タブで、クラスターを見つけ、クラスター ID をクリックします。
左側のナビゲーションウィンドウで、[ジョブ開発] > [SQL 開発] を選択します。
「SQLConsole」タブで、[Spark] エンジンとジョブ リソースグループを選択します。
次の Spark SQL ステートメントを実行します。プレースホルダー値は、実際の認証情報とカタログ ID に置き換えてください。
-- Data Lake Formation (DLF) にアクセスする権限が付与されている Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID SET spark.hadoop.dlf.catalog.accessKeyId=****************; -- Data Lake Formation (DLF) にアクセスする権限が付与されている Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey Secret SET spark.hadoop.dlf.catalog.accessKeySecret=****************; -- Data Lake Formation (DLF) カタログ ID。カタログ ID を検索するには、「カタログ」Topic の「カタログのクエリ」をご参照ください。 SET spark.hadoop.dlf.catalog.id=default; -- Spark が Data Lake Formation (DLF) をこのセッションの Hive メタストアとして扱うように「dlf」に設定します。 SET spark.sql.hive.metastore.version=dlf; SHOW DATABASES;次の表は、パラメーターについて説明しています。
パラメーター 必須 説明 spark.hadoop.dlf.catalog.accessKeyIdはい Data Lake Formation (DLF) にアクセスする権限が付与されている Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID。AccessKey ID と AccessKey Secret の取得方法の詳細については、「アカウントと権限」をご参照ください。 spark.hadoop.dlf.catalog.accessKeySecretはい Data Lake Formation (DLF) にアクセスする権限が付与されている Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey Secret。AccessKey ID と AccessKey Secret の取得方法の詳細については、「アカウントと権限」をご参照ください。 spark.hadoop.dlf.catalog.idはい カタログ ID。カタログ ID を検索するには、「カタログ」Topic の「カタログのクエリ」セクションをご参照ください。 spark.sql.hive.metastore.versionはい メタストアバージョン。これを dlfに設定します。追加のパラメーターについては、「Spark アプリケーション構成パラメーター」をご参照ください。
「実行」をクリックします。結果を表示するには、「ログ」を「操作」列でクリックします。「アプリケーション」タブの「Spark JAR 開発」ページで、この操作を行います。詳細については、「Spark エディター」トピックの「Spark アプリケーションに関する情報を表示する」セクションをご参照ください。