JDBCドライバーをエンジンに追加する - Cloud

Talend Remote Engine Gen2クイックスタートガイド

author
Talend Documentation Team
EnrichVersion
Cloud
EnrichProdName
Talend Cloud
task
インストールとアップグレード
デプロイメント > デプロイ中 > パイプラインの実行
EnrichPlatform
Talend Management Console
Talend Pipeline Designer

Talend Cloud Data Inventoryで明示的にサポートされていないデータベースに接続するために、JDBCドライバーをRemote Engine Gen2に追加することができます。

生成されるSQLステートメントには、SQL-92との間に互換性があります。

手順

  1. Remote Engine Gen2のインストールディレクトリーに移動します。
  2. docker-compose.ymlファイルを編集します。これは、エンジンの開始時に使ったDocker設定ファイルです。
  3. livyコンテナを見つけ、[environment] (環境)セクションの下にこのJDBCドライバー設定を追加します:
    livy:
        image: ${LIVY_IMG}
        networks:
          default:
            aliases:
              - livy
        environment:
          LIVY_JOB_SPARK_SUBMIT_OPTS: "-Djdbc.drivers[10].id=<DATABASE_ID> -Djdbc.drivers[10].displayName=<DISPLAY_NAME> -Djdbc.drivers[10].order=<ORDER_IN_THE_LIST> -Djdbc.drivers[10].className=<JDBC_DRIVER_CLASS> -Djdbc.drivers[10].paths[0]=<MAVEN GROUP>:<MAVEN ARTIFACT>:jar:<MAVEN VERSION>"
          [...]

    上記で、<DATABASE_ID> (データベース識別子)、<DISPLAY_NAME> (データベース表示名)、<ORDER_IN_THE_LIST> (アプリ内の接続リストにおけるデータベースの位置)、<JDBC_DRIVER_CLASS> (データベースJDBCドライバークラス)、<MAVEN GROUP>:<MAVEN ARTIFACT>:jar:<MAVEN VERSION> (データベースアーティファクト)は、ご自身のデータベース情報に置き換える必要があります。

    例え

    DB2データベースの場合
    livy:
        image: ${LIVY_IMG}
        networks:
          default:
            aliases:
              - livy
        environment:
    		LIVY_JOB_SPARK_SUBMIT_OPTS: "-Djdbc.drivers[10].id=DB2 -Djdbc.drivers[10].displayName=DB2 -Djdbc.drivers[10].order=900 -Djdbc.drivers[10].className=com.ibm.db2.jcc.DB2Driver -Djdbc.drivers[10].paths[0]=com.ibm.db2:jcc:jar:11.5.0.0"
    		[...]
  4. [component-server] (コンポーネントサーバー)コンテナを見つけ、この設定をenvironment/_JAVA_OPTIONSセクションの下に追加して、JDBCドライバーをコネクターリストに追加します。対応するサービスを呼び出すことができるようにするには、以下の手順を実行します。
    component-server:
        image: ${COMPONENTS_IMG}
        networks:
          default:
            aliases:
              - component-server
        environment:
          [...]
          _JAVA_OPTIONS: -Xmx${COMPONENTS_MEM} -Dhttp=443
    		[...@=]
    		-Djdbc.drivers[10].id=<DATABASE_ID>
    		-Djdbc.drivers[10].displayName=<DISPLAY_NAME>
    		-Djdbc.drivers[10].order=<ORDER_IN_THE_LIST>
    		-Djdbc.drivers[10].className=<JDBC_DRIVER_CLASS>
    		-Djdbc.drivers[10].paths[0]=<MAVEN GROUP>:<MAVEN ARTIFACT>:jar:<MAVEN VERSION>
    		[...]

    例え

    DB2データベースの場合
    component-server:
        image: ${COMPONENTS_IMG}
        networks:
          default:
            aliases:
              - component-server
        environment:
          [...]
          _JAVA_OPTIONS: -Xmx${COMPONENTS_MEM} -Dhttp=443
            [...@=]
            -Djdbc.drivers[10].id=DB2
            -Djdbc.drivers[10].displayName=DB2
            -Djdbc.drivers[10].order=900
            -Djdbc.drivers[10].className=com.ibm.db2.jcc.DB2Driver
            -Djdbc.drivers[10].paths[0]=com.ibm.db2:jcc:jar:11.5.0.0
    		[...]
  5. [connectors] (コネクター)コンテナ画像を見つけ、この設定を[environment] (環境)セクションの下に追加して、JDBCドライバーライブラリーをダウンロードします。
    connectors:
        image: talend/connectors:20200528132950116
        networks:
          - default
        environment:
          CONNECTORS_SETUP_OPTS: setup --component-jdbc-auto-download-drivers
            [...]
            --artifact=<MAVEN GROUP>:<MAVEN ARTIFACT>:jar:<MAVEN VERSION>
            [...]

    例え

    DB2データベースの場合
    connectors:
        image: talend/connectors:20200528132950116
        networks:
          - default
        environment:
          CONNECTORS_SETUP_OPTS: setup --component-jdbc-auto-download-drivers
            [...]
            --artifact=com.ibm.db2:jcc:jar:11.5.0.0
    		[...]
  6. previewrunnerコンテナを見つけて次のように設定し、データのサンプルプレビューがTalend Cloud Data Inventory内のデータセットエディションフォームから使えるようにします。
    previewrunner:
        image: ${PREVIEW_RUNNER_IMG}
        user: root
        command: /opt/talend/app/bin/data-streams-previewrunner-ee-svc -Djdbc.drivers[10].id=<DATABASE_ID>
    	-Djdbc.drivers[10].displayName=<DISPLAY_NAME> -Djdbc.drivers[10].order=<ORDER_IN_THE_LIST>
    	-Djdbc.drivers[10].className=<JDBC_DRIVER_CLASS> -Djdbc.drivers[10].paths[0]=<MAVEN GROUP>:<MAVEN ARTIFACT>:jar:<MAVEN VERSION>
    	-Dhttp.port=80 -Dlogger.resource=dss-logback.xml -Dtalend.component.manager.m2.repository=/opt/talend/connectors
    	-Dtalend.component.manager.classloader.container.classesAndPackages=org.talend.components.common.

    例え

    DB2データベースの場合
    previewrunner:
        image: ${PREVIEW_RUNNER_IMG}
        user: root
        command: /opt/talend/app/bin/data-streams-previewrunner-ee-svc -Djdbc.drivers[10].id=DB2
    	-Djdbc.drivers[10].displayName=DB2 -Djdbc.drivers[10].order=900
    	-Djdbc.drivers[10].className=com.ibm.db2.jcc.DB2Driver -Djdbc.drivers[10].paths[0]=com.ibm.db2:jcc:jar:11.5.0.0
    	-Dhttp.port=80 -Dlogger.resource=dss-logback.xml -Dtalend.component.manager.m2.repository=/opt/talend/connectors
    	-Dtalend.component.manager.classloader.container.classesAndPackages=org.talend.components.common.
  7. 変更を保存してエンジンを再起動します。