SQL Server リンクサーバーとして Azure Data Lake Storage のデータに接続
SQL Server リンクサーバーは、SQL Server データベースエンジンがリモートデータソースからデータを読み取り、 SQL Server インスタンス外部のリモートデータベースサーバーに対してコマンドを実行できるようにします。通常、リンクサーバーは 別の SQL Server インスタンスや Oracle などの他のデータベース製品のテーブルを含む T-SQL ステートメントの実行を可能にするために設定されます。 CData Connect AI と組み合わせると、リンクサーバーは SQL Server データベースからリアルタイムのAzure Data Lake Storage のデータへの即座のアクセスを提供します。この記事では、Connect AI を使用して Azure Data Lake Storage に接続し、 SQL Server Management Studio(SSMS)でAzure Data Lake Storage のデータをクエリする方法を説明します。
CData Connect AI は、Azure Data Lake Storage 向けの純粋な SQL Server インターフェースを提供し、ネイティブにサポートされるデータベースに データをレプリケートすることなく Azure Data Lake Storage のデータをクエリできます。 最適化されたデータ処理機能を標準搭載しており、CData Connect AI はフィルタや JOIN などのサポート対象の SQL 操作を Azure Data Lake Storage へ直接送信し、サーバーサイド処理を活用して要求された Azure Data Lake Storage のデータを迅速に返します。
SQL Server 用の Azure Data Lake Storage 接続を設定
SQL リンクサーバーから Azure Data Lake Storage への接続は、CData Connect AI を通じて実現できます。SQL リンクサーバーからAzure Data Lake Storage のデータを操作するには、まず Azure Data Lake Storage への接続を作成・設定します。
- Connect AI にログインして「Sources」をクリック、次に「 Add Connection」をクリック
- 接続を追加パネルから「Azure Data Lake Storage」を選択
-
Azure Data Lake Storage に接続するために必要な認証プロパティを入力します。
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への認証」セクションをご確認ください。
- 「Save & Test」をクリック
-
Azure Data Lake Storage 接続の追加ページで「Permissions」タブに移動し、ユーザーベースの権限を更新します。
パーソナルアクセストークンの追加
REST API、OData API、または仮想 SQL Server を通じて Connect AI に接続する場合、パーソナルアクセストークン(PAT)を使用して Connect AI への接続を認証します。アクセスを細かく管理するため、サービスごとに個別の PAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- パーソナルアクセストークンは作成時にのみ表示されるため、必ずコピーして今後の使用に備えて安全に保管してください。
接続が設定され PAT が生成されたので、 からAzure Data Lake Storage のデータに接続する準備が整いました。
Connect AI を使用して SQL Server から Azure Data Lake Storage に接続
SQL Server リンクサーバーから CData Connect AI の仮想 SQL Server API への接続を確立するには、以下の手順に従ってください。
- Microsoft SQL Server Management Studio を開きます。
- オブジェクトエクスプローラーペインで、サーバーオブジェクトを開き、「リンクサーバー」を右クリックして「新しいリンク サーバー」を選択します。
-
「新しいリンク サーバー」ダイアログが開きます。「全般」ページで、以下の情報を入力します:
- 「リンク サーバー」フィールドにサーバー名を入力します。
- 「その他のデータ ソース」ラジオボタンを選択し、プロバイダーとして「SQL Server Native Client 11.0」を選択します。
- 「データ ソース」フィールドに tds.cdata.com,14333 を入力します。
- 「カタログ」フィールドに、接続したい CData Connect AI データソースの接続名を入力します(例:ADLS1)。
-
「セキュリティ」ページを選択します。下部で「このセキュリティ コンテキストを使用する」というラベルのラジオボタンを選択し、以下の情報を入力します:
- リモート ログイン - CData Connect AI のユーザー名を入力します。これは CData Connect AI インターフェースの右上に表示されます。例:[email protected]
- パスワード - 設定ページで生成した PAT を入力します。
- 「OK」をクリックしてサーバーを作成します。 これでリンクサーバーを使用して、指定したデータソースのデータにアクセスできます。より多くのソースからデータにアクセスする必要がある場合は、各ソースに対して別のリンクサーバーを作成してください。
クエリの実行
これで、SQL Server に接続できる任意のツールから Azure Data Lake Storage リンクサーバーに対してクエリを実行できます。 SQL クエリの例:
SELECT * FROM [CDATA CONNECT CLOUD].[ADLS1].[ADLS].[Resources]
Azure Data Lake Storage のデータをクエリできるリンクサーバーが正常に作成されました。
CData Connect AI を入手
SQL Server データベースから直接 300 以上の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを取得するには、 CData Connect AI を今すぐお試しください!