Hive catalog
Hive catalog は、外部 catalog の一種であり、以下のことができます。
- Apache Hive™(以下、Hive)に保存されたデータを手動でテーブルを作成することなく直接クエリする。
- INSERT INTO や非同期マテリアライズドビューを使用して、Hive に保存されたデータを処理し、CelerData にデータをロードする。
- CelerData 上で操作を行い、Hive データベースやテーブルを作成または削除したり、CelerData テーブルから Parquet 形式の Hive テーブルにデータをシンクする(この機能は v3.2 以降でサポートされています)。
Hive クラスターで SQL ワークロードを成功させるためには、CelerData クラスターが Hive クラスターのストレージシステムとメタストアにアクセスできる必要があります。CelerData は以下のストレージシステムとメタストアをサポートしています。
-
AWS S3 や Microsoft Azure Storage などのオブジェクトストレージ
-
Hive メタストア(HMS)や AWS Glue などのメタストア
注意
ストレージとして AWS S3 を選択した場合、メタストアとして HMS または AWS Glue を使用できます。他のストレージシステムを選択した場合、メタストアとして HMS のみを使用できます。
使用上の注意
-
CelerData がサポートする Hive のファイル形式は Parquet、ORC、Textfile です。
- Parquet フ ァイルは、以下の圧縮形式をサポートしています:SNAPPY、LZO、LZ4、ZSTD、GZIP、NO_COMPRESSION。
- ORC ファイルは、以下の圧縮形式をサポートしています:ZLIB、SNAPPY、LZO、LZ4、ZSTD、NO_COMPRESSION。
- Textfile ファイルは、LZO 圧縮形式をサポートしています。
-
CelerData がサポートしていない Hive のデータ型は INTERVAL、BINARY です。また、CelerData は Textfile 形式の Hive テーブルに対して MAP および STRUCT データ型をサポートしていません。
-
Hive catalog は データのクエリ のみに使用できます。Hive catalog を使用して、Hive クラスターにデータを削除、削除、または挿入することはできません。
準備
Hive catalog を作成する前に、CelerData クラスターが Hive クラスターのストレージシステムとメタストアと統合できることを確認してください。
Hive メタストア
Hive クラスターがメタストアとして Hive メタストアを使用している場合、CelerData が Hive メタストアのホストにアクセスできることを確認してください。
注意
通常、CelerData クラスターと Hive メタストアの統合を有効にするために、以下のいずれかのアクションを実行できます。
- CelerData クラスターと Hive メタストアを同じ VPC にデプロイする。
- CelerData クラスターの VPC と Hive メタストアの VPC の間に VPC ピアリング接続を構成する。
次に、Hive メタストアのセキュリティグループの設定を確認し、そのインバウンドルールが CelerData クラスターのセキュリティグループからのインバウンドトラフィックを許可し、そのポート範囲がデフォルトポート 9083 をカバーしていることを確認してください。
AWS
Hive クラスターがストレージとして AWS S3 を使用している場合、またはメタストアとして AWS Glue を使用している場合、適切な認証方法を選択し、IAM ロールやユーザーの作成、指定された IAM ロールやユーザーへの IAM ポリシーの追加など、必要な準備を行い、CelerData クラスターがこれらの AWS リソースにアクセスできるようにします。詳細については、AWS リソースへの認証 > 準備 を参照してください。
Microsoft Azure Storage
Hive クラスターがストレージとして Azure を使用している場合、適切な認証方法を選択し、ロールの割り当ての追加など、必要な準備を行います。詳細については、Azure クラウドストレージへの認証 を参照してください。
Hive catalog の作成
構文
CREATE EXTERNAL CATALOG <catalog_name>
[COMMENT <comment>]
PROPERTIES
(
"type" = "hive",
GeneralParams,
MetastoreParams,
StorageCredentialParams,
MetadataUpdateParams
)