Self-built Hive data warehouse across versions
ベストプラクティスの概要
アプリケーションシナリオ
お客様は、IDC またはパブリッククラウド環境で自己構築した Hadoop クラスターを運用し、データを HDFS ファイルシステムに一元保存して、Hive で一般的な ETL タスクを実行しています。クラウド移行を決定した後、自己構築 Hadoop クラスターのデータを Alibaba Cloud の自己構築 Hadoop または EMR に移行します。
技術アーキテクチャ
本プラクティスは、下図に示す技術アーキテクチャおよび主要プロセスに基づいています。
ソリューションのメリット
・使いやすさ
必要な ECS モデル (CPU、メモリ) とディスクを選択し、必要なソフトウェアを選択するだけで自動デプロイできます。
・コスト効率
オンデマンドでクラスターを作成でき、バッチジョブの実行後にクラスターをリリースし、必要に応じてノードを動的に追加できます。
・深い統合
E-MapReduce は、他の Alibaba Cloud 製品 (OSS、MNS、RDS、MaxCompute など) と深く統合されており、これらの製品を Hadoop/Spark 計算エンジンの入力ソースまたは出力先として利用できます。
・セキュリティ
E-MapReduce は Alibaba Cloud RAM のリソース権限管理システムと統合され、マスターアカウントとサブアカウントでサービス権限を分離します。
・信頼性
Alibaba Cloud のデータベースである ApsaraDB RDS を使用して Hive メタデータ情報を保存することで、データ信頼性とサービス可用性を向上し、お客様による MySQL データベースの運用保守を不要にします。
前提条件
本記事を進める前に、以下の準備を完了する必要があります。
・Alibaba Cloud アカウントを登録し、実名認証を完了していること。Alibaba Cloud コンソールにログインし、実名認証ページで実名認証の完了状況を確認できます。
・Alibaba Cloud アカウント残高が 100 元以上であること。Alibaba Cloud コンソールにログインし、アカウント概要ページでアカウント残高を確認できます。
・ICP 許可を取得したドメイン名を所有していること。
・ECS、OSS、EMR、RDS、DTS、VPN Gateway などのサービスを有効化していること。
リソースプランニングの説明
・本ソリューションは実習用です。本番環境で実行する際は、実際のビジネスシステムの構成に合わせて調整してください。
・本ソリューションで購入するすべてのクラウド製品仕様はデモンストレーション用です。実際のビジネス要件に応じて、適切な仕様の製品とサービスを購入してください。
・本ソリューションは移行の考え方と方法のデモンストレーションに重点を置いており、オフライン IDC のシミュレーション環境をコンポーネント構成で示しています。
1. 基本環境の構築
本プラクティスでは、技術アーキテクチャ図に従って、Apache ログ生成サーバー、
Kafka キュー、Hadoop クラスター、Hive + MySQL メタベースを含む、比較的完全なプラクティス環境を構築します。
1.1. Hadoop + Kafka + ログ生成環境の構築
自己構築 Hadoop データの Alibaba Cloud EMR への移行に関するベストプラクティスを参照してください。
第 1 章:1. 自己構築 Hadoop クラスター環境の構築を完了して、本プラクティスの基本環境セットアップを行います。
1.2. Hive メタデータデータベースの作成
本プラクティスでは、ECS に MySQL データベースをインストールして Hive のメタデータ情報を保存します。
手順 1 クラウドサーバーコンソールにログインし、リージョンを中国 (上海) に設定します。
手順 2 インスタンスリストページで、右上の「インスタンスの作成」をクリックします。
手順 3 カスタム購入モードで、各種設定を行います。
基本設定:
課金モデル:本プラクティスではプリエンプティブインスタンスを使用します。
注:ソリューションのデモンストレーションでは、コスト削減のためプリエンプティブインスタンスを選択しています。実際の本番環境では、ビジネスシナリオに適した ECS インスタンスの課金モデルを選択してください。プリエンプティブインスタンスの詳細については、
リージョンとアベイラビリティゾーン:中国 (上海) ゾーン F
例
インスタンス仕様:ecs.g6.large (2 vCPU 8 GiB、汎用型 g6)
単一インスタンス仕様の価格上限:プリエンプティブインスタンスを作成するには、単一インスタンス仕様の価格上限を設定する必要があります。
a) 単一上限価格の設定を選択します。
b) 「過去価格の表示」をクリックします。
c) プリエンプティブインスタンスの過去価格グラフで、中国 (上海) ゾーン F のインスタンスの現在の市場価格が 0.034 ¥/インスタンス/時間であることが確認できます。そのため、単一インスタンスの上限価格を 0.04 ¥/インスタンス/時間に設定します。現在の市場価格よりやや高めに設定します。実際の操作時は、画面に表示されるリアルタイム価格を参照してください。
購入インスタンス数:1
イメージ:
a) イメージマーケットプレイスを選択します。
b) イメージマーケットプレイスから「その他のオプション (オペレーティングシステムを含む)」をクリックします。
c) 「magento」と入力して検索をクリックします。
d) Magento オープンソース E コマースシステム (LAMP | デモデータ付き) を選択し、「使用」をクリックします。このイメージには MySQL データベースが含まれており、root ユーザーのデフォルトパスワードは「123456」です。
ストレージ:システムディスク
高効率クラウドディスク 80 GiB
手順 4 設定完了後、「次へ:ネットワークとセキュリティグループ」をクリックします。
手順 5 ネットワークとセキュリティグループページで、下表を参照して関連パラメーターを設定します。
設定完了後、「次へ:システム設定」をクリックします。
手順 6 システム設定ページで、下表を参照して関連パラメーターを設定します。
設定完了後、「注文の確認」をクリックします。
手順 7 注文確認ページで、パラメーター情報を確認します。内容が正しいことを確認し、「クラウドサーバー ECS 利用規約」と「イメージ製品利用規約」を確認、同意してチェックを入れ、「インスタンスの作成」をクリックします。
手順 8 タスクの作成と送信が正常に完了した後、「管理コンソール」をクリックして ECS インスタンスリストページに移動し、詳細を確認します。
これで、本プラクティスでお客様の自己構築 Hadoop システムをシミュレートするために使用する ECS の構築が完了しました。
手順 9 以下の URL から MySQL コンソールにログインします。
手順 10 Hive への接続に使用するアカウントを作成します。
完了後、画面は下図のように表示されます。
1.3. Hive のインストールと設定
本プラクティスでは、Hive 1.2.2 バージョンをソースバージョンとして使用します。
手順 1 SSH で hadoop-master ノードにログインし、以下のコマンドを実行して Hive パッケージをダウンロードおよび解凍します。
手順 2 環境変数を設定します。
手順 3 hive-site.xml 設定ファイルを生成します。
説明:
(1) 赤色のフォントで示された 192.168.100.140 を、お使いの環境の MySQL の VPC IP アドレスに置き換えてください。
(2) hive122db は MySQL 内のデータベースで、Hive のメタデータを保存するために使用します。
手順 4 hive-env.sh 起動ファイルを生成して設定します。
ファイルの末尾に以下の内容を追加し、保存して終了します。
手順 5 MySQL ドライバーをダウンロードします。
以下のコマンドで MySQL Connector ライブラリファイルをダウンロードします。
手順 6 ソースデータベースを初期化します。
画面に下図の情報が表示されたら、初期化完了です。
手順 7 Hive を起動して、HQL コマンドラインインタラクティブインターフェイスに入ります。
hive
注:hive コマンドラインインターフェイスでは、quit を使用して終了します。
アプリケーションシナリオ
お客様は、IDC またはパブリッククラウド環境で自己構築した Hadoop クラスターを運用し、データを HDFS ファイルシステムに一元保存して、Hive で一般的な ETL タスクを実行しています。クラウド移行を決定した後、自己構築 Hadoop クラスターのデータを Alibaba Cloud の自己構築 Hadoop または EMR に移行します。
技術アーキテクチャ
本プラクティスは、下図に示す技術アーキテクチャおよび主要プロセスに基づいています。
ソリューションのメリット
・使いやすさ
必要な ECS モデル (CPU、メモリ) とディスクを選択し、必要なソフトウェアを選択するだけで自動デプロイできます。
・コスト効率
オンデマンドでクラスターを作成でき、バッチジョブの実行後にクラスターをリリースし、必要に応じてノードを動的に追加できます。
・深い統合
E-MapReduce は、他の Alibaba Cloud 製品 (OSS、MNS、RDS、MaxCompute など) と深く統合されており、これらの製品を Hadoop/Spark 計算エンジンの入力ソースまたは出力先として利用できます。
・セキュリティ
E-MapReduce は Alibaba Cloud RAM のリソース権限管理システムと統合され、マスターアカウントとサブアカウントでサービス権限を分離します。
・信頼性
Alibaba Cloud のデータベースである ApsaraDB RDS を使用して Hive メタデータ情報を保存することで、データ信頼性とサービス可用性を向上し、お客様による MySQL データベースの運用保守を不要にします。
前提条件
本記事を進める前に、以下の準備を完了する必要があります。
・Alibaba Cloud アカウントを登録し、実名認証を完了していること。Alibaba Cloud コンソールにログインし、実名認証ページで実名認証の完了状況を確認できます。
・Alibaba Cloud アカウント残高が 100 元以上であること。Alibaba Cloud コンソールにログインし、アカウント概要ページでアカウント残高を確認できます。
・ICP 許可を取得したドメイン名を所有していること。
・ECS、OSS、EMR、RDS、DTS、VPN Gateway などのサービスを有効化していること。
リソースプランニングの説明
・本ソリューションは実習用です。本番環境で実行する際は、実際のビジネスシステムの構成に合わせて調整してください。
・本ソリューションで購入するすべてのクラウド製品仕様はデモンストレーション用です。実際のビジネス要件に応じて、適切な仕様の製品とサービスを購入してください。
・本ソリューションは移行の考え方と方法のデモンストレーションに重点を置いており、オフライン IDC のシミュレーション環境をコンポーネント構成で示しています。
1. 基本環境の構築
本プラクティスでは、技術アーキテクチャ図に従って、Apache ログ生成サーバー、
Kafka キュー、Hadoop クラスター、Hive + MySQL メタベースを含む、比較的完全なプラクティス環境を構築します。
1.1. Hadoop + Kafka + ログ生成環境の構築
自己構築 Hadoop データの Alibaba Cloud EMR への移行に関するベストプラクティスを参照してください。
第 1 章:1. 自己構築 Hadoop クラスター環境の構築を完了して、本プラクティスの基本環境セットアップを行います。
1.2. Hive メタデータデータベースの作成
本プラクティスでは、ECS に MySQL データベースをインストールして Hive のメタデータ情報を保存します。
手順 1 クラウドサーバーコンソールにログインし、リージョンを中国 (上海) に設定します。
手順 2 インスタンスリストページで、右上の「インスタンスの作成」をクリックします。
手順 3 カスタム購入モードで、各種設定を行います。
基本設定:
課金モデル:本プラクティスではプリエンプティブインスタンスを使用します。
注:ソリューションのデモンストレーションでは、コスト削減のためプリエンプティブインスタンスを選択しています。実際の本番環境では、ビジネスシナリオに適した ECS インスタンスの課金モデルを選択してください。プリエンプティブインスタンスの詳細については、
リージョンとアベイラビリティゾーン:中国 (上海) ゾーン F
例
インスタンス仕様:ecs.g6.large (2 vCPU 8 GiB、汎用型 g6)
単一インスタンス仕様の価格上限:プリエンプティブインスタンスを作成するには、単一インスタンス仕様の価格上限を設定する必要があります。
a) 単一上限価格の設定を選択します。
b) 「過去価格の表示」をクリックします。
c) プリエンプティブインスタンスの過去価格グラフで、中国 (上海) ゾーン F のインスタンスの現在の市場価格が 0.034 ¥/インスタンス/時間であることが確認できます。そのため、単一インスタンスの上限価格を 0.04 ¥/インスタンス/時間に設定します。現在の市場価格よりやや高めに設定します。実際の操作時は、画面に表示されるリアルタイム価格を参照してください。
購入インスタンス数:1
イメージ:
a) イメージマーケットプレイスを選択します。
b) イメージマーケットプレイスから「その他のオプション (オペレーティングシステムを含む)」をクリックします。
c) 「magento」と入力して検索をクリックします。
d) Magento オープンソース E コマースシステム (LAMP | デモデータ付き) を選択し、「使用」をクリックします。このイメージには MySQL データベースが含まれており、root ユーザーのデフォルトパスワードは「123456」です。
ストレージ:システムディスク
高効率クラウドディスク 80 GiB
手順 4 設定完了後、「次へ:ネットワークとセキュリティグループ」をクリックします。
手順 5 ネットワークとセキュリティグループページで、下表を参照して関連パラメーターを設定します。
設定完了後、「次へ:システム設定」をクリックします。
手順 6 システム設定ページで、下表を参照して関連パラメーターを設定します。
設定完了後、「注文の確認」をクリックします。
手順 7 注文確認ページで、パラメーター情報を確認します。内容が正しいことを確認し、「クラウドサーバー ECS 利用規約」と「イメージ製品利用規約」を確認、同意してチェックを入れ、「インスタンスの作成」をクリックします。
手順 8 タスクの作成と送信が正常に完了した後、「管理コンソール」をクリックして ECS インスタンスリストページに移動し、詳細を確認します。
これで、本プラクティスでお客様の自己構築 Hadoop システムをシミュレートするために使用する ECS の構築が完了しました。
手順 9 以下の URL から MySQL コンソールにログインします。
手順 10 Hive への接続に使用するアカウントを作成します。
完了後、画面は下図のように表示されます。
1.3. Hive のインストールと設定
本プラクティスでは、Hive 1.2.2 バージョンをソースバージョンとして使用します。
手順 1 SSH で hadoop-master ノードにログインし、以下のコマンドを実行して Hive パッケージをダウンロードおよび解凍します。
手順 2 環境変数を設定します。
手順 3 hive-site.xml 設定ファイルを生成します。
説明:
(1) 赤色のフォントで示された 192.168.100.140 を、お使いの環境の MySQL の VPC IP アドレスに置き換えてください。
(2) hive122db は MySQL 内のデータベースで、Hive のメタデータを保存するために使用します。
手順 4 hive-env.sh 起動ファイルを生成して設定します。
ファイルの末尾に以下の内容を追加し、保存して終了します。
手順 5 MySQL ドライバーをダウンロードします。
以下のコマンドで MySQL Connector ライブラリファイルをダウンロードします。
手順 6 ソースデータベースを初期化します。
画面に下図の情報が表示されたら、初期化完了です。
手順 7 Hive を起動して、HQL コマンドラインインタラクティブインターフェイスに入ります。
hive
注:hive コマンドラインインターフェイスでは、quit を使用して終了します。
Related Articles
-
A detailed explanation of Hadoop core architecture HDFS
Knowledge Base Team
-
What Does IOT Mean
Knowledge Base Team
-
6 Optional Technologies for Data Storage
Knowledge Base Team
-
What Is Blockchain Technology
Knowledge Base Team
Explore More Special Offers
-
Short Message Service(SMS) & Mail Service
50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00
