このトピックでは、E-MapReduce (EMR) クラスターでPrestoを使用して、OSS-HDFSに格納されているデータをクエリする方法について説明します。
前提条件
EMR V3.42.0以降、またはEMR V5.8.0以降のクラスターが作成され、Prestoサービスが選択されています。 詳細については、「クラスターの作成」をご参照ください。
バケットのOSS-HDFSが有効になり、OSS-HDFSに対するアクセス許可が付与されます。 OSS-HDFSを有効にする方法の詳細については、「OSS-HDFSの有効化とアクセス許可の付与」をご参照ください。
手順
EMRクラスターにログインします。
EMRコンソールにログインします。 左側のナビゲーションウィンドウで、[ECS上のEMR] をクリックします。
作成したEMRクラスターをクリックします。
[ノード] タブをクリックし、ノードグループの左側にある [] をクリックします。
ECSインスタンスのIDをクリックします。 [インスタンス] ページで、インスタンスIDの横にある [接続] をクリックします。
SSHキーペアまたはSSHパスワードを使用してWindowsまたはLinuxでクラスターにログインする方法の詳細については、「クラスターにログインする」をご参照ください。
OSS-HDFSに保存されたクエリデータ。
Prestoサーバーにログインします。
Prestoサーバーのアドレスとポートを取得するには、次の手順を使用します。ECSのEMRページに移動し、クラスターの名前をクリックし、[サービス] > [Presto] > [設定] をクリックします。
presto-- server <presto_server_address >:< presto_server_port> -- catalog
- OSSのスキーマを作成します。
(location='oss://<Bucket>.<Endpoint>/<schema_dir>') を使用してスキーマtestDBを作成します。
- スキーマを使用します。
使用testDB;
- テーブルを作成します。
テーブルtbl (key int、val int) を作成します。
- テーブルにデータを挿入します。
tbl値に挿入する (1,666) 。
- テーブル内のクエリデータをします。
選択 * からtbl;