Azure Data CatalogにAWSDataCatalogのデータをRegistration Toolを使って登録する
やりたいこと
AWSのGlueやAthenaの使っているAWSDataCatalogのデータもAzure Data Catalogに登録したい。
作業環境
- Windows Server または Windows 10
- Azure Data Catalog Registration Toolがインストール済み
Registration ToolにODBCがあるので、これを使ってAthenaからODBC経由でカタログデータを取得します。
手順
AthenaのODBCドライバインストール
以下のAWSの公式サイトからAthenaのODBCドライバをダウンロードします。
https://docs.aws.amazon.com/ja_jp/athena/latest/ug/connect-with-odbc.html
インストーラーがダウンロードされますので、実行します。
画像のようなインストールが起動します。選択肢はインストール場所程度のなので、手順は省略します。
Registration Tool利用したデータカタログ同期
ODBCデータベースをデータソースとして選択
ODBC Driverのパラメータ入力
パラメータ入力画面が表示されるので以下のように入力して「接続」します。
この表の情報が、この手順で一番大事です。
項目 | 入力値 |
---|---|
ドライバー | Simba Athena ODBC Driver |
接続文字列(※) | AwsRegion=ap-northeast-1;S3OutputLocation=s3://your-bucket |
データベース | AwsDataCatalog |
ユーザ | [AWS Access Key] |
パスワード | [AWS Secret Access Key] |
※ 接続文字列は最低限 AwsRegion
と S3OutputLocation
が必要です。他の項目はODBC Driverのダウンロードページにあるドキュメントの Using a Connection String
の項目に記載があります。
対象のテーブルを選択
接続が成功すると AwsDataCatalog
というカタログ名がツリーのトップとして表示されます。
下にDBがぶら下がっているので、 machine_a
というテスト用のDBの sensor_b_tab
というテーブルの情報をAzure DataCatalogに転送してみようと思います。
設定項目に 「プレビューを含める」
と、 「データプロファイルを含める」
があります。大きなテーブルではこの項目の有効化は注意して行ってください。例えばNull値の数を数えるクエリが列数分流れたりと場合によっては課金対象が大きくなるかもしれません。今回の例では小さなテーブルなのでチェック付けてます
対象のテーブルを選んだら「登録」ボタンをクリックします。
テーブルのカタログ情報の登録処理
カタログ情報の取得と登録の処理が流れます。
上に太字で書いた通り、取得内容に、 「プレビューを含める」
や 「データプロファイルを含める」
を選択している際にはここで時間がかかる場合があります。この際にAthena側を見ると先程の注意書きに書いた通り、Null値の数を列毎に数えるクエリやデータを取得するクエリが流れているが確認できます。
カタログ情報の確認
AWSでの見え方
AWSのGlueでは以下のように見えるテーブルです。小さいものを選びました。
Azure DataCatalogでの見え方
最上位は AwsDataCatalog
となっていて、Glueでいう Database
は Schema
という名前で表現されています。階層数は同じです。
今回はプレビューも含めるとしたので、プレビューデータも見えてます。
裏でAthenaで複数クエリで取得されていたプロファイル情報です。
(Tips)トラブルシュート
Registration Toolのログファイルの場所
実は、最初繋がらなかった時にエラー特定するためにログの場所を探すのに一番時間かかりました。
%appdata%\AzureDataCatalogErrorEventLogProd.log
ODBC Driverのログレベル設定
Driverログレベルを変更することも可能です。
自分で環境でINIファイルで設定する方法と、以下のようにODBCデータソースをセットアップして、接続文字列で指定する方法があります。WARNING以上を見ると権限の問題などエラーがある場合に原因を追及することが可能です。
DSN=MyAthena;AwsRegion=ap-northeast-1;S3OutputLocation=s3://your-bucket
インストール後必要なLibraryが無い場合がある
以下のファイルなどが使われているのですが、正常にDriverがインストールされているように見えてライブラリが無い場合がありました。
C:\Program Files\Simba Athena ODBC Driver\lib\AthenaODBC_sb64.dll
再度インストーラーをダウンロードしてもライブラリが無い場合は以下のようなダウンロードリンクを取って別のバージョンをインストールすると上手くいく場合があります。
https://s3.amazonaws.com/athena-downloads/drivers/ODBC/SimbaAthenaODBC_1.1.5/Windows/Simba+Athena+1.1+64-bit.msi
関連URL
- Azure DataCatalogの使い方書いた記事
- [BigQueryの情報をAzure DataCatalogに取得した記事」(https://qiita.com/yomon8/items/935316c863e8b3f686e1)
Author And Source
この問題について(Azure Data CatalogにAWSDataCatalogのデータをRegistration Toolを使って登録する), 我々は、より多くの情報をここで見つけました https://qiita.com/yomon8/items/ed11fa751d4b820f6e07著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .