VPC環境で利用できます。
Data Catalogを Apache Hiveの Metastoreに設定する方法を説明します。
注意
本設定は、NAVERクラウドプラットフォームのメインアカウントでのみ使用可能です。
準備事項
Hiveの実行が可能な独自の環境が構築されている必要があります。
参考
NAVERクラウドプラットフォームの Cloud Hadoopは、クラスタの作成過程での設定により、Data Catalogを Hive Metastore保存場所に連携できます。
1. Apache Hiveパッチを適用後にインストール
-
Apache Hiveを cloneします。
git clone https://github.com/apache/hive.git -
branch_3.1.patchファイルをダウンロードした後、Apache Hive 3.1バージョンにその patchを適用します。その後、新たにビルドを実行します。
- ダウンロードリンク: https://github.com/awslabs/aws-glue-data-catalog-client-for-apache-hive-metastore/blob/branch-3.4.0/branch_3.1.patch
cd <your local hive source path> git checkout branch-3.1 git apply -3 branch_3.1.patch mvn clean install -DskipTests -
ビルド後、 hive-exec-3.1.3.jar 、 hive-common-3.1.3.jar ファイルを Hiveの CLASSPATHに配置します。
参考
- Hiveの CLASSPATHは一般的に
{HIVE_HOME}/lib/に指定されます。
2. Data Catalog用 Hive Clientのダウンロード
- Data Catalog用 Hive Clientをダウンロードします。
- その後、当該 jarファイルを Hiveの CLASSPATHに配置します。
参考
Hiveの CLASSPATHは一般的に {HIVE_HOME}/lib/に指定されます。
3. Object Stroage関連ライブラリのダウンロード
wget https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-aws/3.2.4/hadoop-aws-3.2.4.jar
wget https://repo1.maven.org/maven2/com/amazonaws/aws-java-sdk-bundle/1.11.375/aws-java-sdk-bundle-1.11.375.jar
- その後、当該 jarファイルを Hiveの CLASSPATHに配置します。
参考
Hiveの CLASSPATHは一般的に {HIVE_HOME}/lib/に指定されます。
4. hive-site.xmlの変更
NAVERクラウドプラットフォームの Data Catalogと Object Storageバケットを Hiveで使用するには、hive-site.xmlに以下の内容を追加します。
<configuration>
<!-- Data Catalog設定 -->
<property>
<name>hive.metastore.client.factory.class</name>
<value>com.navercorp.ncp.catalog.metastore.NCPCatalogMetastoreClientFactory</value>
</property>
<property>
<name>hive.metastore.api.endpoint</name>
<value>https://datacatalog.apigw.ntruss.com</value>
</property>
<!-- Object Storage設定 -->
<property>
<name>fs.s3a.endpoint</name>
<value>http://kr.objectstorage.ncloud.com</value>
</property>
<property>
<name>fs.s3a.access.key</name>
<value>{your-access-key}</value>
</property>
<property>
<name>fs.s3a.secret.key</name>
<value>{your-secret-key}</value>
</property>
<property>
<name>fs.s3a.connection.ssl.enabled</name>
<value>false</value>
</property>
<property>
<name>fs.s3a.impl</name>
<value>org.apache.hadoop.fs.s3a.S3AFileSystem</value>
</property>
</configuration>
参考
hive-site.xmlは一般的に {HIVE_HOME}/conf/ 下位に位置します。
連携確認
Hive CLIを実行して commandが正常に動作するか確認します。
参考
- MySQL、MSSQL、Postgresqlなどの DBMSとの連携はサポートしません。
- Icebergテーブルとの連携もサポートしません。