E-MapReduce で クラスターを要求すると、デフォルトで Hive 環境が提供されます。 Hive を使用して、テーブルとデータを作成および操作します。
手順
- 事前に Hive スクリプトを準備します。 たとえば、以下のとおりです。
USE DEFAULT; DROP TABLE uservisits; CREATE EXTERNAL TABLE IF NOT EXISTS uservisits (sourceIP STRING,destURL STRING,visitDate STRING,adRevenue DOUBLE,userAgent STRING,countryCode STRING,languageCode STRING,searchWord STRING,duration INT) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS SEQUENCEFILE LOCATION '/HiBench/Aggregation/Input/uservisits'; DROP TABLE uservisits_aggre; CREATE EXTERNAL TABLE IF NOT EXISTS uservisits_aggre (sourceIP STRING, sumAdRevenue DOUBLE) STORED AS SEQUENCEFILE LOCATION '/HiBench/Aggregation/Output/uservisits_aggre'; INSERT OVERWRITE TABLE uservisits_aggre SELECT sourceIP, SUM(adRevenue) FROM uservisits GROUP BY sourceIP;
- このスクリプトを uservisits_aggre_hdfs.hive などのスクリプトファイルに保存し、OSS ディレクトリにアップロードします (たとえば、oss://path/to/uservisits_aggre_hdfs.hive)。
- Alibaba Cloud E-MapReduce コンソールにログインします。
- ナビゲーションバーの上部にある、[データプラットフォーム] をクリックします。
- [操作] 列で、指定のプロジェクトの隣にある [ワークフローの設計] をクリックします。
- ジョブの編集ページの左側で、操作するフォルダを右クリックして[新規ジョブ] を選択します。
- [新規ジョブ] ダイアログボックスで、ジョブの名前と説明を入力します。
- Hive ジョブタイプを選択して Hive ジョブを作成します。 このタイプのジョブは以下の方法を使用してバックグラウンドで送信されます。
hive [user provided parameters]
- [OK] をクリックします。
注 フォルダを右クリックして、サブフォルダを作成、フォルダ名を変更、フォルダを削除します。
- "コンテンツ" フィールドに Hive コマンドに続けてパラメーターを入力します。 たとえば、OSS にアップロードされた Hive スクリプトを使用する場合は、以下のように入力します。
-f ossref://path/to/uservisits_aggre_hdfs.hive
[OSS パスの選択] をクリックして OSS から表示および選択します。システムによって OSS 上の Hive スクリプトのパスは自動的に完成されます。[リソースタイプの切り替え] をクリックして Hive スクリプトのプレフィックスを ossref に切り替えます。 切り替えることで、E-MapReduce によってファイルが正しくダウンロードされます。
- [保存] をクリックして Hive ジョブの設定を完了します。