BigQuery データ ソースへの接続

TIBCO Data Science - Team Studio を GCP BigQuery データ ソースに接続できます。

このタスクは、TIBCO Data Science - Team Studio サーバーがインストールされているコンピュータで実行します。
始める前にTIBCO Data Science - Team Studio サーバーへの書き込み権限が必要です。また、GCP BigQuery 設定ファイルへのアクセス権も必要です。
    手順
  1. BigQuery ドライバを以下のディレクトリにコピーし、これらのコピーの所有者を TIBCO Data Science - Team Studio を実行するユーザー(通常は、ユーザー「Chorus」)に変更します。
    • $CHORUS_HOME/shared/ALPINE_DATA_REPOSITORY/jdbc_driver/Public
    • $CHORUS_HOME/shared/libraries
  2. これらのコピーの所有権を、TIBCO Data Science - Team Studio を実行するユーザーに変更します。

    通常、そのユーザー名は 「Chorus」です。

  3. $CHORUS_HOME/shared/ALPINE_DATA_REPOSITORY/jdbc/bigquery という名前の bigquery ディレクトリを作成します。
  4. ファイル driver.properties をディレクトリ $CHORUS_HOME/shared/ALPINE_DATA_REPOSITORY/jdbc/default から新しく作成した bigquery ディレクトリにコピーします。
  5. ファイル $CHORUS_HOME/shared/ALPINE_DATA_REPOSITORY/jdbc/bigquery/driver.properties の内容を次のように編集します。
    # Specify the JDBC class driver for the desired database type.
    # Examples:
    # Oracle = oracle.jdbc.driver.OracleDriver
    # Greenplum = org.postgres#ql.Driver
    # DB2 = com.ibm.db2.jcc.DB2Driver
    # Netezza = org.netezza.Driver
    # PostgreSQL = org.postgresql.Driver
    # SQLServer = com.microsoft.sqlserver.jdbc.SQLServerDriver
    # MySQL = com.mysql.jdbc.Driver
    # Teradata = com.teradata.jdbc.TeraDriver
    # Vertica = com.vertica.jdbc.Driver
    # Sybase = com.sybase.jdbc2.jdbc.SybDriver
    # Informix = com.informix.jdbc.IfxDriver
    # SAPDB = com.sap.dbtech.jdbc.DriverSapDB
    # InterBase = interbase.interclient.Driver
    # HSqlDB = org.hsqldb.jdbcDriver
    # MariaDB = org.mariadb.jdbc.Driver
    # MySQL = com.mysql.jdbc.Driver
    driverClass=com.simba.googlebigquery.jdbc42.Driver
    
    # BigQuery (like Hive) does not support "schema"."tablename".
    # For BigQuery, this entry must be empty string: identiferQuotation=
    # with no whitespace (except newline) or characters after the equals sign
    identifierQuotation=
    
  6. ファイル Additional_jdbc_drivers.rb を見つけて開き、編集します。

    このパスは、/usr/chorus/install/releases/6.3.2.0.8068-7ac910ae3/components/core/app/mixins/sequel/extensions/Additional_jdbc_drivers.rb のようなパスと似ています。

  7. bigquery クラスの行を追加し、内容が次のようになります。
    module Sequel
      module AdditionalJdbcDrivers
        MAP =  {
            mariadb: ->(db) { org.mariadb.jdbc.Driver },
            teradata: ->(db) { com.teradata.jdbc.TeraDriver },
            vertica: ->(db) { com.vertica.jdbc.Driver },
            hive2: ->(db) { org.apache.hive.jdbc.HiveDriver },
            hive: ->(db) { org.apache.hadoop.hive.jdbc.HiveDriver },
            bigquery: ->(db) { com.simba.googlebigquery.jdbc42.Driver }
            }
     
            MAP.each do |key, driver|
            ::Sequel::JDBC::DATABASE_SETUP[key] = driver
          end
        end
      end
    重要: TIBCO Data Science - Team Studio をアップグレード後に、この変更をファイル Additional_jdbc_drivers.rb に再度適用する必要があります。
  8. ファイル $CHORUS_HOME/shared/ALPINE_DATA_REPOSITORY/configuration/alpine.conf を開き、次の構成パラメータを追加します。
    database.bigquery.batchSize (default = 1000)

    ノート:BigQuery がバッチ更新を処理する方法の特異性により、狭いテーブルをアップロードするとエラーが発生する可能性があります。この構成パラメータは、考えられるバッチ サイズの問題に対処します。

  9. TIBCO Data Science - Team Studio を再起動します。
  10. データ ソースの追加 ダイアログを開きます。

    データ ソースの追加 - BigQuery

  11. データ ソース タイプデータ ソース名、および説明 (オプション)を指定します。
  12. 次のような URL を使用してデータ接続 (JDBC URL) を設定します。

    ヒント: GCP BigQuery ページから BigQuery URL をコピーできます。

    jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;ProjectId=teamstudio-user@teamstudio-alpine.iam.gserviceaccount.com
  13. [ワークスペースの可視性] を指定します。
    [制限付き] の可視性を持つデータ ソースは、ワークスペースのメンバーがデータ ソースを使用できるように手動でワークスペースに関連付ける必要があります。デフォルトでは、このオプションは [パブリック] に設定されています。
  14. すべてのユーザーが自分の認証情報を使用せずにデータ ソースにアクセスできるようにする場合は、[データベース認証情報を共有アカウントとして設定する] を選択します。

    ユーザーは、データ ソース所有者としての資格情報を使用してデータベースにアクセスします。このチェックボックスを選択しない場合、各ユーザーはそのデータ ソースにアクセスするために資格情報を提供する必要があります。必要になった場合は、後でボックスをオンにすることができます。