Node.js からGoogle Cloud Storage のデータをSQL Server データベースとしてクエリ

加藤龍彦
加藤龍彦
デジタルマーケティング
Node.js からGoogle Cloud Storage のデータにSQL Server クエリを実行します。

CData Connect AI を使用すると、SQL Server インターフェース経由でGoogle Cloud Storage のデータをクエリできます。以下のステップに従って、Connect AI にGoogle Cloud Storage の仮想データベースを作成し、Node.js を使用してクエリを実行します。

CData Connect AI は、Google Cloud Storage のピュアMySQL かつクラウドベースのインターフェースを提供し、ネイティブにサポートされているデータベースにデータを複製することなくNode.js からの手軽なリアルタイムGoogle Cloud Storage のデータクエリを実現します。Node.js でデータをクエリすると、CData Connect AI はサポートされているすべてのSQL 操作(フィルタ、JOIN など)を直接Google Cloud Storage にプッシュし、サーバー側の処理を活用してGoogle Cloud Storage のデータを高速で返します。

Connect AI からGoogle Cloud Storage に接続する

CData Connect AI は直感的なクリック操作ベースのインターフェースを使ってデータソースに接続します。
  1. Connect AI にログインし、 Add Connection をクリックします。 コネクションを追加
  2. Add Connection パネルから「Google Cloud Storage」を選択します。 データソースを選択
  3. 必要な認証情報を入力し、Google Cloud Storage に接続します。

    ユーザーアカウントでの認証

    ユーザー資格情報の接続プロパティを設定することなく接続できます。InitiateOAuth をGETANDREFRESH に設定したら、接続の準備が完了です。

    接続すると、Google Cloud Storage OAuth エンドポイントがデフォルトブラウザで開きます。ログインして権限を付与すると、OAuth プロセスが完了します。

    サービスアカウントでの認証

    サービスアカウントには、ブラウザでユーザー認証を行わないサイレント認証があります。サービスアカウントを使用して、企業全体のアクセススコープを委任することもできます。

    このフローでは、OAuth アプリケーションを作成する必要があります。詳しくは、ヘルプドキュメントを参照してください。以下の接続プロパティを設定したら、接続の準備が完了です:

    • InitiateOAuth: GETANDREFRESH に設定。
    • OAuthJWTCertType: PFXFILE に設定。
    • OAuthJWTCert: 生成した.p12 ファイルへのパスに設定。
    • OAuthJWTCertPassword: .p12 ファイルのパスワードに設定。
    • OAuthJWTCertSubject: 証明書ストアの最初の証明書が選ばれるように"*" に設定。
    • OAuthJWTIssuer: 「サービスアカウント」セクションで「サービスアカウントの管理」をクリックし、このフィールドをサービスアカウントID フィールドに表示されているE メールアドレスに設定。
    • OAuthJWTSubject: サブジェクトタイプが"enterprise" に設定されている場合はエンタープライズID に設定し、"user" に設定されている場合はアプリユーザーID に設定。
    • ProjectId: 接続するプロジェクトのID に設定。

    これで、サービスアカウントのOAuth フローが完了します。

    コネクションの設定(Salesforce の例)
  4. Create & Test をクリックします。
  5. Edit Google Cloud Storage Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。 権限の更新

パーソナルアクセストークンを追加する

OAuth 認証をサポートしないサービス、アプリケーション、プラットフォーム、フレームワークから接続する場合、パーソナルアクセストークン(PAT)を認証に使用できます。きめ細かくアクセスを管理するために、サービスごとに個別のPAT を作成するのがベストプラクティスです。

    1. User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
    2. PAT の名前を入力して Create をクリックします。 新しいPAT を作成
    3. パーソナルアクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。

    接続が設定されたら、Node.js からGoogle Cloud Storage のデータに接続できるようになります。

    Node.js からGoogle Cloud Storage をクエリ

    以下の例は、SQL Server モジュールを使用してGoogle Cloud Storage へのクエリを実行する方法を説明しています。以下の情報が必要です。

    • servertds.cdata.com
    • port:14333
    • user:Connect AI ユーザー(例:[email protected]
    • password:上記のユーザーのPAT
    • database:Google Cloud Storage 用に構成した接続(GoogleCloudStorage1)

    以下のコードで、Google Cloud Storage に接続してクエリが実行できます。

    var sql = require('mssql')
    var config = {
    	server: 'tds.cdata.com',
    	port:14333,
    	user: '[email protected]', //update me
    	password:'CONNECT_USER_PAT', //update me
    	options: {
    		encrypt: true,
    		database: 'GoogleCloudStorage1'
    	}
    }
    
    sql.connect(config, err => {
        if(err){
            throw err ;
        }
        new sql.Request().query('SELECT * FROM Buckets', (err, result) => {
            console.dir(result)
        })
    
    });
    
    sql.on('error', err => {
        console.log("SQL Error: " ,err);
    })
    

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

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

無料トライアル