SQL Server リンクサーバーとして Amazon S3 のデータに接続

Dibyendu Datta
Dibyendu Datta
Lead Technology Evangelist
CData Connect AI を使用して、リアルタイムのAmazon S3 のデータ用のリンクサーバーを作成できます。

SQL Server リンクサーバーは、SQL Server データベースエンジンがリモートデータソースからデータを読み取り、 SQL Server インスタンス外部のリモートデータベースサーバーに対してコマンドを実行できるようにします。通常、リンクサーバーは 別の SQL Server インスタンスや Oracle などの他のデータベース製品のテーブルを含む T-SQL ステートメントの実行を可能にするために設定されます。 CData Connect AI と組み合わせると、リンクサーバーは SQL Server データベースからリアルタイムのAmazon S3 のデータへの即座のアクセスを提供します。この記事では、Connect AI を使用して Amazon S3 に接続し、 SQL Server Management Studio(SSMS)でAmazon S3 のデータをクエリする方法を説明します。

CData Connect AI は、Amazon S3 向けの純粋な SQL Server インターフェースを提供し、ネイティブにサポートされるデータベースに データをレプリケートすることなく Amazon S3 のデータをクエリできます。 最適化されたデータ処理機能を標準搭載しており、CData Connect AI はフィルタや JOIN などのサポート対象の SQL 操作を Amazon S3 へ直接送信し、サーバーサイド処理を活用して要求された Amazon S3 のデータを迅速に返します。

SQL Server 用の Amazon S3 接続を設定

SQL リンクサーバーから Amazon S3 への接続は、CData Connect AI を通じて実現できます。SQL リンクサーバーからAmazon S3 のデータを操作するには、まず Amazon S3 への接続を作成・設定します。

  1. Connect AI にログインして「Sources」をクリック、次に「 Add Connection」をクリック
  2. 接続を追加パネルから「Amazon S3」を選択
  3. Amazon S3 に接続するために必要な認証プロパティを入力します。

    Amazon S3 リクエストを認可するには、管理者アカウントまたはカスタム権限を持つIAM ユーザーの認証情報を入力します。AccessKey をアクセスキーID に設定します。SecretKey をシークレットアクセスキーに設定します。

    Note: AWS アカウント管理者として接続できますが、AWS サービスにアクセスするにはIAM ユーザー認証情報を使用することをお勧めします。

    尚、CData 製品はAmazon S3 のファイルの一覧表示やユーザー管理情報の取得用です。S3 に保管されているExcel、CSV、JSON などのファイル内のデータを読み込みたい場合には、Excel DriverCSV DriverJSON Driver をご利用ください。

    アクセスキーの取得

    IAM ユーザーの資格情報を取得するには:

    1. IAM コンソールにサインインします。
    2. ナビゲーションペインで「ユーザー」を選択します。
    3. ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してから「セキュリティ認証情報」タブを選択します。

    AWS ルートアカウントの資格情報を取得するには:

    1. ルートアカウントの資格情報を使用してAWS 管理コンソールにサインインします。
    2. アカウント名または番号を選択し、表示されたメニューで「My Security Credentials」を選択します。
    3. 「Continue to Security Credentials」をクリックし、「Access Keys」セクションを展開して、ルートアカウントのアクセスキーを管理または作成します。

    AWS ロールとして認証

    多くの場合、認証にはAWS ルートユーザーのダイレクトなセキュリティ認証情報ではなく、IAM ロールを使用することをお勧めします。RoleARN を指定することでAWS ロールを代わりに使用できます。これにより、CData 製品は指定されたロールの資格情報を取得しようと試みます。

    (すでにEC2 インスタンスなどで接続されているのではなく)AWS に接続している場合は、ロールを引き受けるIAM ユーザーのAccessKey とSecretKey を追加で指定する必要があります。AWS ルートユーザーのAccessKey および SecretKey を指定する場合、ロールは使用できません。

    SSO 認証

    SSO 認証を必要とするユーザーおよびロールには、RoleARN およびPrincipalArn 接続プロパティを指定してください。各Identity Provider に固有のSSOProperties を指定し、AccessKey とSecretKey を空のままにする必要があります。これにより、CData 製品は一時的な認証資格情報を取得するために、リクエストでSSO 認証情報を送信します。

  4. 「Save & Test」をクリック
  5. Amazon S3 接続の追加ページで「Permissions」タブに移動し、ユーザーベースの権限を更新します。

パーソナルアクセストークンの追加

REST API、OData API、または仮想 SQL Server を通じて Connect AI に接続する場合、パーソナルアクセストークン(PAT)を使用して Connect AI への接続を認証します。アクセスを細かく管理するため、サービスごとに個別の PAT を作成することをお勧めします。

  1. Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
  2. 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします。
  3. PAT に名前を付けて「Create」をクリックします。
  4. パーソナルアクセストークンは作成時にのみ表示されるため、必ずコピーして今後の使用に備えて安全に保管してください。

接続が設定され PAT が生成されたので、 からAmazon S3 のデータに接続する準備が整いました。

Connect AI を使用して SQL Server から Amazon S3 に接続

SQL Server リンクサーバーから CData Connect AI の仮想 SQL Server API への接続を確立するには、以下の手順に従ってください。

  1. Microsoft SQL Server Management Studio を開きます。
  2. オブジェクトエクスプローラーペインで、サーバーオブジェクトを開き、「リンクサーバー」を右クリックして「新しいリンク サーバー」を選択します。
  3. 「新しいリンク サーバー」ダイアログが開きます。「全般」ページで、以下の情報を入力します:
    • 「リンク サーバー」フィールドにサーバー名を入力します。
    • 「その他のデータ ソース」ラジオボタンを選択し、プロバイダーとして「SQL Server Native Client 11.0」を選択します。
    • 「データ ソース」フィールドに tds.cdata.com,14333 を入力します。
    • 「カタログ」フィールドに、接続したい CData Connect AI データソースの接続名を入力します(例:AmazonS31)。
  4. 「セキュリティ」ページを選択します。下部で「このセキュリティ コンテキストを使用する」というラベルのラジオボタンを選択し、以下の情報を入力します:
    • リモート ログイン - CData Connect AI のユーザー名を入力します。これは CData Connect AI インターフェースの右上に表示されます。例:[email protected]
    • パスワード - 設定ページで生成した PAT を入力します。
  5. 「OK」をクリックしてサーバーを作成します。
  6. これでリンクサーバーを使用して、指定したデータソースのデータにアクセスできます。より多くのソースからデータにアクセスする必要がある場合は、各ソースに対して別のリンクサーバーを作成してください。

クエリの実行

これで、SQL Server に接続できる任意のツールから Amazon S3 リンクサーバーに対してクエリを実行できます。 SQL クエリの例:

		SELECT * FROM [CDATA CONNECT CLOUD].[AmazonS31].[AmazonS3].[ObjectsACL]
	
Amazon S3 のデータをクエリできるリンクサーバーが正常に作成されました。

CData Connect AI を入手

SQL Server データベースから直接 300 以上の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを取得するには、 CData Connect AI を今すぐお試しください!

はじめる準備はできましたか?

CData Connect AI の詳細、または無料トライアルにお申し込みください:

無料トライアル お問い合わせ