DataGrip で Azure Data Lake Storage のデータ をクエリ
DataGrip は、SQL 開発者がデータベースへのクエリ、作成、管理を行えるデータベース IDE です。CData JDBC Driver for Azure Data Lake Storage と組み合わせることで、DataGrip からリアルタイムAzure Data Lake Storage のデータを操作できます。この記事では、DataGrip で Azure Data Lake Storage のデータ への接続を確立方法を説明します。
Azure Data Lake Storage 用の新しいドライバー定義を作成
以下のステップでは、DataGrip で Azure Data Lake Storage 用の新しいデータソースを作成する方法を説明します。
- DataGrip で、File -> New -> Project をクリックしてプロジェクト名を入力します。
- Database Explorer で、プラスアイコン()をクリックして Driver を選択します。
- Driver タブで以下を設定します。
- Name をわかりやすい名前に設定します(例:"CData Azure Data Lake Storage Driver")。
- Driver Files を適切な JAR ファイルに設定します。ファイルを追加するには、プラス()をクリックし、「Add Files」を選択して、ドライバーのインストールディレクトリ内の「lib」フォルダに移動し、JAR ファイル(例:cdata.jdbc.adls.jar)を選択します。
- Class を cdata.jdbc.adls.ADLS.jar に設定します。
また、詳細タブでは、ドライバーのプロパティや、VM Options、VM environment、VM home path、DBMS などの設定を変更できます。 - ほとんどの場合、Expert options で DBMS type を「Unknown」に変更して、ネイティブの SQL Server クエリ(Transact-SQL)を回避してください。これを行わないと、無効な関数エラーが発生する可能性があります。
- 「Apply」をクリックし、「OK」をクリックして接続を保存します。
Azure Data Lake Storage への接続を設定
- 接続を保存したら、プラス()をクリックし、「Data Source」→「CData Azure Data Lake Storage Driver」を選択して、新しい Azure Data Lake Storage データソースを作成します。
- 新しいウィンドウで、JDBC URL を使用して Azure Data Lake Storage への接続を設定します。
組み込みの接続文字列デザイナー
JDBC URL の構築には、Azure Data Lake Storage JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.adls.jar接続プロパティを入力し、接続文字列をクリップボードにコピーします。
Azure Data Lake Storage 接続プロパティの取得・設定方法
Azure Data Lake Storage Gen2 への接続
それでは、Gen2 Data Lake Storage アカウントに接続していきましょう。接続するには、以下のプロパティを設定します。
- Account:ストレージアカウントの名前
- FileSystem:このアカウントに使用されるファイルシステム名。例えば、Azure Blob コンテナの名前
- Directory(オプション):レプリケートされたファイルが保存される場所へのパス。パスが指定されない場合、ファイルはルートディレクトリに保存されます
Azure Data Lake Storage Gen2への認証
続いて、認証方法を設定しましょう。CData 製品では、5つの認証方法をサポートしています:アクセスキー(AccessKey)の使用、共有アクセス署名(SAS)の使用、Azure Active Directory OAuth(AzureAD)経由、Azure サービスプリンシパル(AzureServicePrincipal またはAzureServicePrincipalCert)経由、およびManaged Service Identity(AzureMSI)経由です。
アクセスキー
アクセスキーを使用して接続するには、まずADLS Gen2ストレージアカウントで利用可能なアクセスキーを取得する必要があります。
Azure ポータルでの手順は以下のとおりです:
- ADLS Gen2ストレージアカウントにアクセスします
- 設定でアクセスキーを選択します
- 利用可能なアクセスキーの1つの値をAccessKey 接続プロパティにコピーします
接続の準備ができたら、以下のプロパティを設定してください。
- AuthScheme:AccessKey
- AccessKey:先ほどAzure ポータルで取得したアクセスキーの値
共有アクセス署名(SAS)
共有アクセス署名を使用して接続するには、まずAzure Storage Explorer ツールを使用して署名を生成する必要があります。
接続の準備ができたら、以下のプロパティを設定してください。
- AuthScheme:SAS
- SharedAccessSignature:先ほど生成した共有アクセス署名の値
その他の認証方法については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「Azure Data Lake Storage Gen2への認証」セクションをご確認ください。
- URL を接続文字列に設定します。例:
jdbc:adls:Schema=ADLSGen2;Account=myAccount;FileSystem=myFileSystem;AccessKey=myAccessKey;
- 「Apply」と「OK」をクリックして接続文字列を保存します。
これで、Data Explorer にデータソースが表示されます。
Azure Data Lake Storage に対して SQL クエリを実行
JDBC Driver を介してアクセス可能な Azure Data Lake Storage のエンティティ(テーブルとして利用可能)を参照するには、データソースを展開します。
クエリを実行するには、任意のテーブルを右クリックして「New」→「Query Console」を選択します。
Console で、実行したい SQL クエリを記述します。例:
SELECT FullPath, Permission FROM Resources WHERE Type = 'FILE'
CData JDBC Driver for Azure Data Lake Storage の30日間の無料トライアルをダウンロードして、DataGrip でリアルタイムAzure Data Lake Storage のデータを操作してみてください。ご不明な点があれば、サポートチームにお問い合わせください。