複数DataConnectorインスタンスのサポート - Access Module

Teradata® Tools and Utilities Access Moduleリファレンス

Product
Access Module
Release Number
17.10
Published
2021年10月
Language
日本語
Last Update
2021-11-16
dita:mapPath
ja-JP/uur1608578381725.ditamap
dita:ditavalPath
ja-JP/obe1474387269547.ditaval
dita:id
B035-2425
Product Category
Teradata Tools and Utilities

Teradata Access Module for Kafkaは、Kafkaトピックにデータを書き込む場合の複数Dataconnectorインスタンスをサポートしています。

ユーザーはTeradataからデータをエクスポートし、TPT DCオペレータの複数インスタンスを使用して複数のKafkaトピックに並列的にデータを書き込むことができるため、スループットが向上します。

Teradata Access Module for Kafkaは、Kafkaトピック パーティションをTPT FileWriterの複数インスタンスに均等に分配するので、DBSから受け取ったデータを複数のKafkaトピック パーティションに並列的にエクスポートできます。

この例では、8つのFILE_WRITERインスタンスと16個のパーティションを使用しています。

DEFINE JOB EXPORT_FROM_TERADATA
DESCRIPTION 'Export data from Teradata to Kafka topic partitions using Multiple FileWriter instances'
(
      STEP EXPORT_THE_DATA
      (
         APPLY TO OPERATOR ( $FILE_WRITER()[8]
         ATTR
         (
           AccessModuleName = 'libkafkaaxsmod.so',
           AccessModuleInitStr = '-M P -T <TopicName> -B <BrokerID> -P [0-15] -S y -BKSZ 1200'
          )
        )
      SELECT * FROM OPERATOR ( $EXPORT
      ATTR
      (
         SelectStmt = 'SELECT * FROM S3W001_src;'
      )
     );
   );
);

実行する手順

tbuild -C -f kafka_multi.tpt -v jobvar_multiinstance -j kafka15
-Cコマンド ライン オプションは、トピック間でデータを均等に分散する場合は必須です。デフォルトでは、TPTはデータ ストリームからファイル ライターの複数のインスタンスにデータをラウンドロビン方式では分配しません。Dataconnectorの複数インスタンスを実行するTPT-Kafkaエクスポート ジョブでは、tbuildで"-C"を使用します。

AccessModuleKafkaは、ユーザーがインスタンス数よりも少ないパーティション数を指定している場合に、次のエラーを返して終了します。

Dataconnector Instances: %d are greater than total partition count: %d

AccessModuleKafkaは、合計16個のパーティションを振り分けて、2個のパーティションを8つのTPT FileWriterインスタンスに均等に分配します。

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 8 of 8
KAFKA_AXSMOD: Partition : 1 and Instance number : 8
KAFKA_AXSMOD: Partition : 0 and Instance number : 8

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 3 of 8
KAFKA_AXSMOD: Partition : 11 and Instance number : 3
KAFKA_AXSMOD: Partition : 10 and Instance number : 3

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 6 of 8
KAFKA_AXSMOD: Partition : 5 and Instance number : 6
KAFKA_AXSMOD: Partition : 4 and Instance number : 6

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 2 of 8
KAFKA_AXSMOD: Partition : 13 and Instance number : 2
KAFKA_AXSMOD: Partition : 12 and Instance number : 2

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 4 of 8
KAFKA_AXSMOD: Partition : 9 and Instance number : 4
KAFKA_AXSMOD: Partition : 8 and Instance number : 4

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 5 of 8
KAFKA_AXSMOD: Partition : 7 and Instance number : 5
KAFKA_AXSMOD: Partition : 6 and Instance number : 5

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 7 of 8
KAFKA_AXSMOD: Partition : 3 and Instance number : 7
KAFKA_AXSMOD: Partition : 2 and Instance number : 7

KAFKA_AXSMOD: Running in Multi-Instance mode. This is Instance 1 of 8
KAFKA_AXSMOD: Partition : 15 and Instance number : 1
KAFKA_AXSMOD: Partition : 14 and Instance number : 1