目次

Search

  1. はじめに
  2. 一括取り込みデータベース

一括取り込みデータベース

一括取り込みデータベース

KafkaターゲットとKafka対応Azure Event Hubsターゲット

KafkaターゲットとKafka対応Azure Event Hubsターゲット

次のリストは、Kafkaターゲットを使用する際の考慮事項を示しています。
  • 一括取り込みデータベース
    は、増分ロードジョブのターゲットとして、Apache Kafka、Confluent Kafka、Amazon Managed Streaming for Apache Kafka(MSK)、およびKafka対応Azure Event Hubsをサポートします。これらすべてのKafkaターゲットタイプは、Kafka接続タイプを使用します。
    Kafkaターゲットタイプを指定するには、タスク定義またはKafka接続プロパティでKafkaプロデューサプロパティを指定する必要があります。タスクのこれらのプロパティを指定するには、タスクウィザードの
    [ターゲット]
    ページの
    [プロデューサ設定プロパティ]
    フィールドに、
    key
    :
    value
    ペアのカンマ区切りのリストを入力します。Kafka接続を使用するすべてのタスクのプロデューサプロパティを指定するには、プロパティのリストを接続プロパティの
    [追加接続プロパティ]
    フィールドに入力します。タスクレベルでプロデューサプロパティを定義することにより、特定のタスクの接続レベルのプロパティをオーバーライドできます。プロデューサプロパティの詳細については、Apache Kafka、Confluent Kafka、Amazon MSK、またはKafka用Azure Event Hubsのドキュメントを参照してください。
  • [AVRO]
    をKafkaターゲットの出力形式として選択した場合、
    一括取り込みデータベース
    は次の形式の名前で、各テーブルのスキーマ定義ファイルを生成します。
    schemaname
    _
    tablename
    .txt
    ソーススキーマの変更により、増分ロードジョブのターゲットが変更されることが予想される場合は、
    一括取り込みデータベース
    がタイムスタンプを含む一意の名前でAvroスキーマ定義ファイルを再生成します。
    schemaname
    _
    tablename
    _
    YYYYMMDDhhmmss
    .txt
    この一意の命名パターンにより、古いスキーマ定義ファイルが監査目的で保持されます。
  • Confluent Schema Registryを使用してスキーマを格納するConfluent Kafkaターゲットがある場合は、タスクウィザードの
    [ターゲット]
    ページで次の設定を行う必要があります。
    • [出力形式]
      フィールドで、
      [AVRO]
      を選択します。
    • [Avroシリアル化形式]
      フィールドで、
      [なし]
      を選択します。
  • Kafkaプロデューサプロパティをタスクウィザードの
    [ターゲット]
    ページの
    [プロデューサ設定プロパティ]
    フィールド、またはKafka接続プロパティの
    [追加接続プロパティ]
    フィールドいずれかで指定できます。ビジネスニーズに合うように、Kafkaベンダーによってサポートされているproperty=valueのペアを入力します。
    例えば、Confluent Kafkaを使用する場合は、
    [プロデューサ設定プロパティ]
    フィールドまたは
    [追加接続プロパティ]
    フィールドで次のエントリを使用してスキーマレジストリのURLを指定し、基本認証を有効にすることができます。
    schema.registry.url=http://schema-registry:8081, key.serializer=org.apache.kafka.common.serialization.StringSerializer, value.serializer=io.confluent.kafka.serializers.KafkaAvroSerializer, basic.auth.credentials.source=USER_INFO, basic.auth.user.info=myname:mypassword
    Amazon MSKを使用する場合は、次の
    [追加接続プロパティ]
    エントリを使用して、Amazon MSKターゲットにアクセスするためのIAMロール認証を有効にすることができます。
    security.protocol=SASL_SSL,sasl.mechanism=AWS_MSK_IAM,sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;,sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
    必ずSecure AgentがインストールされているAmazon EC2インスタンスでIAMロール認証を有効にしてください。
    Kafkaプロパティの詳細については、Kafkaベンダーのドキュメントを参照してください。
  • データベース取り込み増分ロードジョブで、Confluent Kafka、Amazon MSK、およびAzure Event Hubsターゲットを含め、SASL_SSLで保護されたアクセスをサポートするKafkaターゲットに変更データをレプリケートできます。Administratorで、
    [追加接続プロパティ]
    フィールドの適切なプロパティをはじめとするKafka接続を設定する必要があります。例えば、Azure Event Hubsの場合、次の
    [追加接続プロパティ]
    エントリを使用して、SASL_SSLを有効にすることができます。
    bootstrap.servers=NAMESPACENAME.servicebus.windows.net:9093 security.protocol=SASL_SSL sasl.mechanism=PLAIN sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{YOUR.EVENTHUBS.CONNECTION.STRING}";