CData Sync App は、Apache Kafka データをデータベース、データレイク、またはデータウェアハウスに継続的にパイプライン化する簡単な方法を提供し、分析、レポート、AI、および機械学習で簡単に利用できるようにします。
Apache Kafka コネクタはCData Sync アプリケーションから使用可能で、Apache Kafka からデータを取得して、サポートされている任意の同期先に移動できます。
Sync App はApache Kafka クライアントライブラリを使用してKafka トピックへの双方向アクセスを実現します。
必須プロパティについては、設定タブを参照してください。
通常必須ではない接続プロパティについては、高度な設定タブを参照してください。
BootstrapServers を設定し、Apache Kafka サーバーのアドレスを指定します。
デフォルトでは、Sync App はデータソースとPLAINTEXT で通信し、これはすべてのデータが暗号化なしで送信されることを意味します。通信を暗号化するには、Sync App がSSL 暗号化を使用するように設定する必要があります。 これを行うには、UseSSL をtrue に設定し、SSLServerCert およびSSLServerCertType をサーバー証明書を読み込むように設定します。
ProxyServer のようなプロキシ設定やFirewallServer のようなファイアウォール設定は、Apache Kafka ブローカーへの接続には影響しないことに注意してください。 内部的には、Sync App はプロキシをサポートしない公式ライブラリを使ってApache Kafka に接続します。 これらのオプションは、トピックからのメタデータの抽出 で説明したように、Sync App がスキーマレジストリに接続する場合にのみ使用されます。
Apache Kafka データソースは、次の認証メソッドをサポートしています:
Apache Kafka の特定のオンプレミスデプロイメントでは、認証接続プロパティの設定なしでApache Kafka に接続できます。そのためには、AuthScheme をNone (デフォルト)に設定するだけで接続できるようになります。
User およびPassword プロパティを指定する必要があります。AuthScheme はPlain に設定します。
User およびPassword プロパティを指定する必要があります。AuthScheme は'SCRAM'(SCRAM-SHA-256 用)または'SCRAM-SHA-512' に設定します。
SSLClientCert およびSSLClientCertType プロパティを指定し、AuthScheme はSSLCertificate に設定します。
Sync App は、OAuth および共有アクセス署名を使用したAzure Event Hubs への接続をサポートします。 開始する前に、Event Hubs のネームスペースがKafka プロトコルを使用した接続をサポートしていることを確認してください。 Sync App ではこの機能を必須としており、価格体系によってはご利用いただけない場合があります。
Azure への接続はすべて、以下で説明するスキーム固有のプロパティに加えて、これらのプロパティを設定する必要があります。
CData は、認証を簡略化する埋め込みOAuth アプリケーションを提供します。代わりに、認証用のカスタムアプリケーションを作成することも可能です。カスタムアプリケーションの作成およびその理由については、カスタムOAuth アプリケーションの作成 を参照してください。
認証に関して、CData が提供する(埋め込み)アプリケーションを使用する場合と独自のカスタムアプリケーションを作成する場合の唯一の違いは、カスタムOAuth アプリケーションを使用する場合に、高度な設定タブで2つの接続プロパティを追加で設定する必要があることだけです。
接続の前に、カスタムAzure AD アプリケーションの場合のみ以下の変数を設定します。
Apache Kafka への接続 をクリックして、デフォルトブラウザでOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。
ドライバーは、以下のようにOAuth プロセスを完了します。
Azure サービスプリンシパルは、ロールに基づいたアプリケーションベースの認証です。これは、認証がユーザーごとではなく、アプリケーションごとに行われることを意味します。 アプリケーションで実行されるすべてのタスクは、デフォルトユーザーコンテキストなしで、割り当てられたロールに基づいて実行されます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。
Azure サービスプリンシパル認証の設定方法については、カスタムOAuth アプリケーションの作成 を参照してください。
Azure VM 上でApache Kafka を実行しており、MSI を利用して接続したい場合は、AuthScheme をAzureMSI に設定します。
VM に複数のユーザーが割り当てられたマネージドID がある場合は、OAuthClientId も指定する必要があります。
Sync App は、共有アクセス署名を使用したパスワードベースの認証もサポートしています。 共有シークレットを作成したら、次のオプションでSync App を設定します。
このセクションでは、Apache Kafka Sync App の高度な機能を厳選して説明します。
Sync App を使用すると、事前設定されたクエリによって内容が決定されるユーザー定義ビューと呼ばれる仮想テーブルを定義できます。 このビューは、ドライバーに発行されるクエリを直接制御できない場合に有効です。 カスタムビューの作成と設定の概要については、ユーザー定義ビュー を参照してください。
SSL の設定 を使用して、Sync App が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。 詳しくは、接続文字列オプションにあるSSLServerCert プロパティを参照してください。
Windows プロキシとHTTP プロキシを含むファイアウォールとプロキシ に合致するようSync App を設定します。トンネル接続を設定することもできます。
Sync App は、Apache Kafka にできるだけ多くのSELECT ステートメント処理をオフロードし、残りのクエリをクライアント側のインメモリで処理します。
詳しくはクエリ処理 を参照してください。
CData ログを調整するために使用可能な設定の概要については、ログ を参照してください。基本的なロギングでは、 次の2つの接続プロパティを設定するだけです。LogModules 接続プロパティを使用してログに記録する情報のサブセットを選択できる、 より洗練されたロギングをサポートする多数の機能があります。
デフォルトでは、Sync App はサーバーの証明書をシステムの信頼できる証明書ストアと照合してSSL / TLS のネゴシエーションを試みます。
別の証明書を指定するには、利用可能なフォーマットについてSSLServerCert プロパティを参照してください。
Apache Kafka Sync App はクライアント証明書の設定もサポートしています。次を設定すれば、クライアント証明書を使って接続できます。
Windows のシステムプロキシ経由の接続では、接続プロパティを追加で設定する必要はありません。他のプロキシに接続するには、ProxyAutoDetect をfalse に設定します。
さらにHTTP プロキシへの認証には、ProxyServer とProxyPort に加えてProxyAuthScheme、ProxyUser、およびProxyPassword を設定します。
次のプロパティを設定します。
SELECTing from a topic returns existing messages on the topic, as well as live messages posted before the number of seconds specified by the ReadDuration have elapsed.
ストアドプロシージャ are function-like interfaces to Apache Kafka. They can be used to create schema files, commit messages, and more.
Connections that the Sync App makes to Apache Kafka are always part of a consumer group. You can control the consumer group by setting a value for the ConsumerGroupId connection property. Using the same consumer group ID across multiple connections puts those connections into the same consumer group. The Sync App generates a random consumer group ID if one is not provided.
All members of a consumer group share an offset that determines what messages are read next within each topic and partition. The Sync App supports two ways of updating the offset:
If there is no existing offset, the Sync App uses the OffsetResetStrategy to determine what the offset should be. This may happen if the broker does not recognize the consumer group or if the consumer group never committed an offset.
The Sync App supports reading bulk messages from topics using the CSV, JSON, or XML SerializationFormat.
For example, if a single message contained this CSV data, the Sync App would expand it into three rows:
"1","alpha" "2","beta" "3","gamma"
Apache Kafka does not natively support bulk messages, which can lead to rows being skipped in some circumstances. For example:
Consider what happens if this procedure is performed on the following topic.
The first connection consumes all rows from the first message and one row from the second.
However, the Sync App has no way to report to Apache Kafka that only part of the second message was read.
This means that step 3 commits the offset 3 and the second connection starts on row 5, skipping row 4.
"row 1" "row 2" /* End of message 1 */ "row 3" "row 4" /* End of message 2 */ "row 5" "row 6" /* End of message 3 */
プロパティ | 説明 |
AuthScheme | The scheme used for authentication with the Apache Kafka broker. |
User | The user who is authenticating to Apache Kafka. |
Password | The password used to authenticate to Apache Kafka. |
BootstrapServers | The address of the Apache Kafka BootstrapServers to which you are connecting to. |
Topic | The topic used for read and write operations. |
UseSSL | This field sets whether SSL is enabled. Automatically enabled if AuthScheme is set to SSL. |
プロパティ | 説明 |
ConsumerGroupId | Specifies which group the consumers created by the driver should belong to. |
AutoCommit | Specifies if the Apache Kafka consumer should autocommit after each poll. |
プロパティ | 説明 |
AzureTenant | データにアクセスするために使用されるMicrosoft Online テナント。指定しない場合は、デフォルトのテナントが使用されます。 |
AzureResource | 認証するAzure Active リソース(Azure OAuth 交換時に使用されます)。 |
プロパティ | 説明 |
OAuthClientId | OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。 |
OAuthClientSecret | OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。 |
プロパティ | 説明 |
KerberosKeytabFile | The Keytab file containing your pairs of Kerberos principals and encrypted keys. |
KerberosSPN | The service principal name (SPN) for the Kerberos Domain Controller. |
KerberosServiceName | The name of the Kerberos service you want to authenticate with. |
UseKerberosTicketCache | Set this to use a ticket cache with the logged in user instead of a keytab file. |
プロパティ | 説明 |
SSLServerCert | The SSL server certificate used to validate to the Apache Kafka broker. |
SSLServerCertType | The format of the SSL server certificate used to verify the Apache Kafka broker. |
SSLClientCert | The SSL client certificate used to connect to the Apache Kafka broker. |
SSLClientCertType | The format of the SSL client certificate used to connect to the Apache Kafka broker. |
SSLClientCertPassword | The password used to decrypt the certificate in SSLClientCert . |
SSLIdentificationAlgorithm | The endpoint identification algorithm used by the Apache Kafka data provider client app to validate server host name. |
プロパティ | 説明 |
RegistryUrl | The server for the schema registry. When this property is specified, the driver will read Apache Avro schema from the server. |
RegistryType | Type of the schema specified for the a specific topic. |
RegistryService | The Schema Registry service used for working with topic schemas. |
RegistryAuthScheme | The scheme used to authenticate to the schema registry. |
RegistryUser | Username to authorize with the server specified in RegistryUrl . |
RegistryPassword | Password to authorize with the server specified in RegistryUrl . |
RegistryClientCert | The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL) with the schema registry. |
RegistryClientCertType | The type of key store used by the TLS/SSL client certificate given in RegistryClientCert . |
RegistryClientCertPassword | The password for the TLS/SSL client certificate given in RegistryClientCert . |
RegistryClientCertSubject | The subject of the TLS/SSL client certificate given in RegistryClientCert . |
RegistryVersion | Version of the schema read from RegistryUrl for the specified topic. |
RegistryServerCert | The certificate to be accepted from the schema registry when connecting using TLS/SSL. |
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
プロパティ | 説明 |
LogModules | ログファイルに含めるコアモジュール。 |
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
プロパティ | 説明 |
AggregateMessages | Specifies whether or not to return the message as a whole string. |
CompressionType | Data compression type. Batches of data will be compressed together. |
ConsumerProperties | Additional options used to configure Kafka consumers. |
CreateTablePartitions | The number of partitions assigned to a topic created with CREATE TABLE. |
CreateTableReplicationFactor | The number of replicas assigned to a topic created with CREATE TABLE. |
EnableIdempotence | If set to true, the Apache Kafka will ensure messages are delivered in the correct order, and without duplicates. |
FlattenArrays | By default, nested arrays won't show up if TypeDetectionScheme is set to SchemaRegistry. The FlattenArrays property can be used to flatten the elements of nested arrays into columns of their own. Set FlattenArrays to the number of elements you want to return from nested arrays. |
GenerateSchemaFiles | スキーマを生成して保存するユーザーの好みのタイミングを示します。 |
MaximumBatchSize | Specifies maximum batch size to gather before sending a request. |
MaxRows | クエリで集計またはGROUP BY を使用しない場合に返される行数を制限します。これはLIMIT 句よりも優先されます。 |
MessageKeyColumn | If specified, the message key sent to Apache Kafka will be read from this column. |
MessageKeyType | If MessageKeyColumn is specified, this property must be set to the expected type for the pertinent column. |
OffsetResetStrategy | Specifies an offset for the consumer group. |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
Pagesize | The maximum number of rows to fetch from Kafka at one time. |
ProduceMeta | Specifies whether or not to send a meta message while producing the outgoing message. |
ProducerProperties | Additional options used to configure Kafka producers. |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
ReadDuration | The duration which additional messages are allowed. |
RowScanDepth | The maximum number of messages to scan for the columns available in the topic. |
SerializationFormat | Specifies how to serialize/deserialize message contents. |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
TypeDetectionScheme | Comma-separated list of options specifying how the provider will scan the data to determine the fields and datatypes for the bucket. |
UseConfluentAvroFormat | Specifies how Avro data should be formatted during an INSERT. |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
ValidateRegistryTopics | Specifies whether or not to validate schema registry topics against the Apache Kafka broker. Only has an effect when TypeDetectionScheme =SchemaRegistry |
このセクションでは、本プロバイダーの接続文字列で設定可能なAuthentication プロパティの全リストを提供します。
プロパティ | 説明 |
AuthScheme | The scheme used for authentication with the Apache Kafka broker. |
User | The user who is authenticating to Apache Kafka. |
Password | The password used to authenticate to Apache Kafka. |
BootstrapServers | The address of the Apache Kafka BootstrapServers to which you are connecting to. |
Topic | The topic used for read and write operations. |
UseSSL | This field sets whether SSL is enabled. Automatically enabled if AuthScheme is set to SSL. |
The scheme used for authentication with the Apache Kafka broker.
The supported schemes are described as follows:
Auto | Lets the Sync App decide automatically based on the other connection properties you have set. |
None | Anonymous authentication will be used, and you can connect to the data source without specifying the user credentials. |
Plain | The plain text login module will be used. |
SCRAM | The SCRAM login module will be used with SHA-256 hashing. |
SCRAM-SHA-512 | The SCRAM login module will be used with SHA-512 hashing. |
Kerberos | Kerberos authentication will be used, when using this value the system kerberos configuration file should be specified. |
SSLCertificate | SSL client certificate authentication will be used. |
In addition, the following schemes are supported when connecting to Azure Event Hubs:
AzureAD | Set this to perform Azure Active Directory OAuth authentication. |
AzureMSI | Set this to automatically obtain Managed Service Identity credentials when running on an Azure VM. |
AzureServicePrincipal | Set this to authenticate as an Azure Service Principal using a Client Secret. |
AzureServicePrincipalCert | Set this to authenticate as an Azure Service Principal using a Certificate. |
The user who is authenticating to Apache Kafka.
If not specified, the driver will attempt unauthorized connection.
The password used to authenticate to Apache Kafka.
If not specified, the driver will attempt an unauthorized connection.
The address of the Apache Kafka BootstrapServers to which you are connecting to.
Specify both the server and port. The server may be either a hostname or IP address, for example: 10.1.2.3:9092. Multiple comma-separated addresses may be provided. As long as one of the bootstrap servers is in the list responses, the connection will be successful.
If you are connecting to Confluent Cloud, you can find this on the Cluster settings.
The topic used for read and write operations.
By default the Sync App supports producing into and consuming from all topics in Kafka. You can limit it to just one topic by setting this option.
This field sets whether SSL is enabled. Automatically enabled if AuthScheme is set to SSL.
This field sets whether the Sync App will attempt to negotiate TLS/SSL connections to the server. By default, the Sync App checks the server's certificate against the system's trusted certificate store. To specify another certificate, set SSLServerCert.
このセクションでは、本プロバイダーの接続文字列で設定可能なConnection プロパティの全リストを提供します。
プロパティ | 説明 |
ConsumerGroupId | Specifies which group the consumers created by the driver should belong to. |
AutoCommit | Specifies if the Apache Kafka consumer should autocommit after each poll. |
Specifies which group the consumers created by the driver should belong to.
If not specified, the driver will assign a random string.
Specifies if the Apache Kafka consumer should autocommit after each poll.
If true, the consumer's offset will be periodically committed in the background.
このセクションでは、本プロバイダーの接続文字列で設定可能なAzure Authentication プロパティの全リストを提供します。
プロパティ | 説明 |
AzureTenant | データにアクセスするために使用されるMicrosoft Online テナント。指定しない場合は、デフォルトのテナントが使用されます。 |
AzureResource | 認証するAzure Active リソース(Azure OAuth 交換時に使用されます)。 |
データにアクセスするために使用されるMicrosoft Online テナント。指定しない場合は、デフォルトのテナントが使用されます。
データにアクセスするために使用されるMicrosoft Online テナント。例えば、contoso.onmicrosoft.com です。あるいは、 テナントId を指定します。この値は[Azure ポータル]->[Azure Active Directory]->[プロパティ]のディレクトリId です。
通常、Tenant を指定する必要はありません。OAuthGrantType をCODE(デフォルト)に設定している場合は、Microsoft が自動的に決定します。 ただし、ユーザーがマルチテナントに所属している場合は失敗する可能性があります。 例えば、ドメインA の管理者がドメインB のユーザーをゲストユーザーとして招待した場合。ユーザーは両方のテナントに属していることになります。 Tenant を指定するのはグッドプラクティスですが、一般的には指定しなくてもうまく動作するはずです。
OAuthGrantType をCLIENT に設定する場合は、AzureTenant が必須です。クライアント資格情報を使用する場合、ユーザーコンテキストはありません。 資格情報は、アプリ自体のコンテキストから取得されます。Microsoft ではTenant を指定せずにクライアント資格情報を取得することを許容していますが、使用する特定のテナントを選択する可能性ははるかに低くなっています。 このため、接続するドメインに適用される資格情報を確実に取得するために、すべてのクライアント資格情報接続に対してAzureTenant を明示的に指定する必要があります。
データにアクセスするために使用されるMicrosoft Online テナント。例えば、contoso.onmicrosoft.com です。あるいは、 テナントId を指定します。この値は[Azure ポータル]->[Azure Active Directory]->[プロパティ]のディレクトリId です。
通常、Tenant を指定する必要はありません。OAuthGrantType をCODE(デフォルト)に設定している場合は、Microsoft が自動的に決定します。 ただし、ユーザーがマルチテナントに所属している場合は失敗する可能性があります。 例えば、ドメインA の管理者がドメインB のユーザーをゲストユーザーとして招待した場合。ユーザーは両方のテナントに属していることになります。 Tenant を指定するのはグッドプラクティスですが、一般的には指定しなくてもうまく動作するはずです。
OAuthGrantType をCLIENT に設定する場合は、AzureTenant が必須です。クライアント資格情報を使用する場合、ユーザーコンテキストはありません。 資格情報は、アプリ自体のコンテキストから取得されます。Microsoft ではTenant を指定せずにクライアント資格情報を取得することを許容していますが、使用する特定のテナントを選択する可能性ははるかに低くなっています。 このため、接続するドメインに適用される資格情報を確実に取得するために、すべてのクライアント資格情報接続に対してAzureTenant を明示的に指定する必要があります。
認証するAzure Active リソース(Azure OAuth 交換時に使用されます)。
Azure OAuth を使用する場合は、リソースを指定する必要があります。 Web API(セキュアリソース)のApp Id URI に設定されなければなりません。
このセクションでは、本プロバイダーの接続文字列で設定可能なOAuth プロパティの全リストを提供します。
プロパティ | 説明 |
OAuthClientId | OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。 |
OAuthClientSecret | OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。 |
OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。
OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId 値、およびクライアントシークレットOAuthClientSecret が提供されます。
OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。
OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId が提供されます。また、コンシューマーシークレットと呼ばれるクライアントシークレットも提供されます。クライアントシークレットをOAuthClientSecret プロパティに設定します。
このセクションでは、本プロバイダーの接続文字列で設定可能なKerberos プロパティの全リストを提供します。
プロパティ | 説明 |
KerberosKeytabFile | The Keytab file containing your pairs of Kerberos principals and encrypted keys. |
KerberosSPN | The service principal name (SPN) for the Kerberos Domain Controller. |
KerberosServiceName | The name of the Kerberos service you want to authenticate with. |
UseKerberosTicketCache | Set this to use a ticket cache with the logged in user instead of a keytab file. |
The Keytab file containing your pairs of Kerberos principals and encrypted keys.
The Keytab file containing your pairs of Kerberos principals and encrypted keys.
The service principal name (SPN) for the Kerberos Domain Controller.
The service principal name (SPN) for the Kerberos Domain Controller.
The name of the Kerberos service you want to authenticate with.
The name of the Kerberos service you want to authenticate with.
Set this to use a ticket cache with the logged in user instead of a keytab file.
Set this to use a ticket cache with the logged in user instead of a keytab file
このセクションでは、本プロバイダーの接続文字列で設定可能なSSL プロパティの全リストを提供します。
プロパティ | 説明 |
SSLServerCert | The SSL server certificate used to validate to the Apache Kafka broker. |
SSLServerCertType | The format of the SSL server certificate used to verify the Apache Kafka broker. |
SSLClientCert | The SSL client certificate used to connect to the Apache Kafka broker. |
SSLClientCertType | The format of the SSL client certificate used to connect to the Apache Kafka broker. |
SSLClientCertPassword | The password used to decrypt the certificate in SSLClientCert . |
SSLIdentificationAlgorithm | The endpoint identification algorithm used by the Apache Kafka data provider client app to validate server host name. |
The SSL server certificate used to validate to the Apache Kafka broker.
The value of this property must be provided in the format described on the SSLServerCertType page. Please refer to it for more details.
The format of the SSL server certificate used to verify the Apache Kafka broker.
This property is used to determine what format the SSLServerCert property expects. This property can take one of the following values:
PEMKEY_FILE | The certificate store is the name of a PEM-encoded file that contains a the server certificate. |
PEMKEY_BLOB | The certificate store is a string that contains the server certificate. |
The SSL client certificate used to connect to the Apache Kafka broker.
The value of this property must be provided in the format described on the SSLClientCertType page. Please refer to it for more details.
The format of the SSL client certificate used to connect to the Apache Kafka broker.
This property is used to determine what format the SSLClientCert property expects. This property can take one of the following values:
PEMKEY_FILE | The certificate store is the name of a PEM-encoded file that contains a private key and certificate. |
PEMKEY_BLOB | The certificate store is a string that contains a private key and certificate, optionally encoded in base64. |
The password used to decrypt the certificate in SSLClientCert .
Leave this blank if the client certificate isn't password protected.
The endpoint identification algorithm used by the Apache Kafka data provider client app to validate server host name.
The default value is 'https' and the server host name validation is enabled. You can disable it by setting its value to a blank space.
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema Registry プロパティの全リストを提供します。
プロパティ | 説明 |
RegistryUrl | The server for the schema registry. When this property is specified, the driver will read Apache Avro schema from the server. |
RegistryType | Type of the schema specified for the a specific topic. |
RegistryService | The Schema Registry service used for working with topic schemas. |
RegistryAuthScheme | The scheme used to authenticate to the schema registry. |
RegistryUser | Username to authorize with the server specified in RegistryUrl . |
RegistryPassword | Password to authorize with the server specified in RegistryUrl . |
RegistryClientCert | The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL) with the schema registry. |
RegistryClientCertType | The type of key store used by the TLS/SSL client certificate given in RegistryClientCert . |
RegistryClientCertPassword | The password for the TLS/SSL client certificate given in RegistryClientCert . |
RegistryClientCertSubject | The subject of the TLS/SSL client certificate given in RegistryClientCert . |
RegistryVersion | Version of the schema read from RegistryUrl for the specified topic. |
RegistryServerCert | The certificate to be accepted from the schema registry when connecting using TLS/SSL. |
The server for the schema registry. When this property is specified, the driver will read Apache Avro schema from the server.
Note this property provides no additional features when SerializationFormat is not set to Avro.
Type of the schema specified for the a specific topic.
Currently we do not support Protobuf. If this value is set to Auto, then we driver will try to detect the valid Schema Registry Type for the selected Topic.
The Schema Registry service used for working with topic schemas.
The Schema Registry service used for working with topic schemas.
The scheme used to authenticate to the schema registry.
The schemes are as follows. Note that some schemes are only available when connecting to a specific RegistryService:
Auto | Lets the Sync App decide automatically based on the other connection properties you have set. |
None | No authentication will be used. |
Basic | RegistryUser and RegistryPassword are used. In Confluent these are the API user/password, while in Glue these are the IAM access key/secret key. |
SSLCertificate | RegistryClientCert is used with SSL client authentication. This is only supported when connecting to a Confluent registry. |
Username to authorize with the server specified in RegistryUrl .
If you are connecting to Confluent Cloud, this corresponds to the Access Key value in Schemas > Schema Registry > API access.
Password to authorize with the server specified in RegistryUrl .
If you are connecting to Confluent Cloud, this corresponds to the Secret Key value in Schemas > Schema Registry > API access.
The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL) with the schema registry.
The name of the certificate store for the client certificate.
The RegistryClientCertType field specifies the type of the certificate store specified by RegistryClientCert. If the store is password protected, specify the password in RegistryClientCertPassword.
RegistryClientCert is used in conjunction with the RegistryClientCertSubject field in order to specify client certificates. If RegistryClientCert has a value, and RegistryClientCertSubject is set, a search for a certificate is initiated. See RegistryClientCertSubject for more information.
Designations of certificate stores are platform-dependent.
The following are designations of the most common User and Machine certificate stores in Windows:
MY | A certificate store holding personal certificates with their associated private keys. |
CA | Certifying authority certificates. |
ROOT | Root certificates. |
SPC | Software publisher certificates. |
In Java, the certificate store normally is a file containing certificates and optional private keys.
When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (for example, PKCS12 certificate store).
The type of key store used by the TLS/SSL client certificate given in RegistryClientCert .
This property can take one of the following values:
USER - default | For Windows, this specifies that the certificate store is a certificate store owned by the current user. Note that this store type is not available in Java. |
MACHINE | For Windows, this specifies that the certificate store is a machine store. Note that this store type is not available in Java. |
PFXFILE | The certificate store is the name of a PFX (PKCS12) file containing certificates. |
PFXBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format. |
JKSFILE | The certificate store is the name of a Java key store (JKS) file containing certificates. Note that this store type is only available in Java. |
JKSBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in JKS format. Note that this store type is only available in Java. |
PEMKEY_FILE | The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate. |
PEMKEY_BLOB | The certificate store is a string (base64-encoded) that contains a private key and an optional certificate. |
PUBLIC_KEY_FILE | The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate. |
PUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate. |
SSHPUBLIC_KEY_FILE | The certificate store is the name of a file that contains an SSH-style public key. |
SSHPUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains an SSH-style public key. |
P7BFILE | The certificate store is the name of a PKCS7 file containing certificates. |
PPKFILE | The certificate store is the name of a file that contains a PuTTY Private Key (PPK). |
XMLFILE | The certificate store is the name of a file that contains a certificate in XML format. |
XMLBLOB | The certificate store is a string that contains a certificate in XML format. |
The password for the TLS/SSL client certificate given in RegistryClientCert .
If the certificate store is of a type that requires a password, this property is used to specify that password to open the certificate store.
The subject of the TLS/SSL client certificate given in RegistryClientCert .
When loading a certificate the subject is used to locate the certificate in the store.
If an exact match is not found, the store is searched for subjects containing the value of the property. If a match is still not found, the property is set to an empty string, and no certificate is selected.
The special value "*" picks the first certificate in the certificate store.
The certificate subject is a comma separated list of distinguished name fields and values. For example, "CN=www.server.com, OU=test, C=US, [email protected]". The common fields and their meanings are shown below.
Field | Meaning |
CN | Common Name. This is commonly a host name like www.server.com. |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
If a field value contains a comma, it must be quoted.
Version of the schema read from RegistryUrl for the specified topic.
Version of the schema read from RegistryUrl for the specified topic.
The certificate to be accepted from the schema registry when connecting using TLS/SSL.
TLS/SSL 接続を使用する場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。コンピュータによって信頼されていない他の証明書はすべて拒否されます。
このプロパティは、次のフォームを取ります:
説明 | 例 |
フルPEM 証明書(例では省略されています) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
証明書を保有するローカルファイルへのパス。 | C:\cert.cer |
公開鍵(例では省略されています) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
MD5 Thumbprint (hex 値はスペースおよびコロン区切り) | ecadbdda5a1529c58a1e9e09828d70e4 |
SHA1 Thumbprint (hex 値はスペースおよびコロン区切り) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。
すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。
このセクションでは、本プロバイダーの接続文字列で設定可能なFirewall プロパティの全リストを提供します。
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロキシベースのファイアウォールで使われるプロトコル。
このプロパティは、Sync App がFirewallServer プロキシ経由でトンネルトラフィックを使うためのプロトコルを指定します。デフォルトでは、Sync App はシステムプロキシに接続します。この動作を無効化し次のプロキシタイプのどれかで接続するには、ProxyAutoDetect をfalse に設定します。
タイプ | デフォルトポート | 説明 |
TUNNEL | 80 | これが設定されている場合、Sync App はApache Kafka への接続を開き、プロキシを経由して通信が行われます。 |
SOCKS4 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 4 プロキシ経由で送信し、接続リクエストが許容されるかどうかを決定します。 |
SOCKS5 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 5 プロキシ経由で送信します。プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。 |
HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthScheme、ProxyUser、およびProxyPassword を使ってください。
プロキシベースのファイアウォールの名前もしくはIP アドレス。
ファイアウォールトラバーサルを許容するために設定するIP アドレス、DNS 名、もしくはプロキシホスト名を指定するプロパティです。プロトコルはFirewallType で指定されます。このプロパティとFirewallServer を使って、SOCKS 経由での接続、もしくはトンネリングが可能です。HTTP プロキシへの接続には、ProxyServer を使用します。
Sync App はデフォルトでシステムプロキシを使うので注意してください。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定してください。
プロキシベースのファイアウォールのTCP ポート。
ファイアウォールトラバーサルを許容するために設定するプロキシベースのファイアウォールのTCP ポート。名前もしくはIP アドレスを指定するには、FirewallServer を使います。FirewallType でプロトコルを指定します。
プロキシベースのファイアウォールに認証するために使うユーザー名。
FirewallUser およびFirewallPassword プロパティは、FirewallType により指定された認証方式に則り、FirewallServer、およびFirewallPort で指定されたプロキシに対しての認証に使われます。
プロキシベースのファイアウォールへの認証に使われるパスワード。
このプロパティは、FirewallType により指定された認証メソッドに則り、FirewallServer およびFirewallPort で指定されたプロキシに渡されます。
このセクションでは、本プロバイダーの接続文字列で設定可能なProxy プロパティの全リストを提供します。
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
これは、システムプロキシ設定を使用するかどうかを示します。
これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。HTTP プロキシへの認証には、Sync App はHTTP、Windows(NTLM)、もしくはKerberos 認証タイプを使用することができます。
SOCKS プロキシを経由して接続する、もしくは接続をトンネルするには、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定します。
ProxyServer プロキシが起動しているTCP ポート。
HTTP トラフィックをリダイレクトするHTTP プロキシが実行されているポート。ProxyServer でHTTP プロキシを指定します。その他のプロキシタイプについては、FirewallType を参照してください。
ProxyServer プロキシへの認証で使われる認証タイプ。
この値は、ProxyServer およびProxyPort で指定されるHTTP プロキシに認証するために使われる認証タイプを指定します。
Sync App は、デフォルトでsystem proxy settings を使い、追加での設定が不要です。他のプロキシへの接続をする場合には、ProxyServer およびProxyPort に加え、ProxyAutoDetect をfalse に設定します。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
認証タイプは、次のどれかになります。
SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。
ProxyServer プロキシへの認証に使われるユーザー名。
ProxyUser および ProxyPassword オプションは、ProxyServer で指定されたHTTP プロキシに対して接続および認証するために使用されます。
ProxyAuthScheme で使用可能な認証タイプを選択することができます。HTTP 認証を使う場合、これをHTTP プロキシで識別可能なユーザーのユーザー名に設定します。Windows もしくはKerberos 認証を使用する場合、このプロパティを次の形式のどれかでユーザー名に設定します。
user@domain domain\user
ProxyServer プロキシへの認証に使われるパスワード。
このプロパティは、NTLM(Windows)、Kerberos、もしくはHTTP 認証をサポートするHTTP プロキシサーバーに認証するために使われます。HTTP プロキシを指定するためには、ProxyServer およびProxyPort を設定します。認証タイプを指定するためにはProxyAuthScheme を設定します。
HTTP 認証を使う場合、さらにHTTP プロキシにProxyUser およびProxyPassword を設定します。
NTLM 認証を使う場合、Windows パスワードにProxyUser およびProxyPassword を設定します。Kerberos 認証には、これらを入力する必要があります。
SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシに接続する場合には、これをfalse に設定します。
ProxyServer プロキシへの接続時に使用するSSL タイプ。
このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この値は、AUTO、ALWAYS、NEVER、TUNNEL のいずれかです。有効な値は次のとおりです。
AUTO | デフォルト設定。URL がHTTPS URL の場合、Sync App は、TUNNEL オプションを使います。URL がHTTP URL の場合、コンポーネントはNEVER オプションを使います。 |
ALWAYS | 接続は、常にSSL 有効となります。 |
NEVER | 接続は、SSL 有効になりません。 |
TUNNEL | 接続は、トンネリングプロキシを経由します。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。 |
ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。
ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。
Sync App は、追加設定なしにデフォルトでシステムのプロキシ設定を使います。この接続のプロキシ例外を明示的に構成するには、ProxyAutoDetect をfalse に設定して、ProxyServer およびProxyPort を設定する必要があります。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
ログファイルに含めるコアモジュール。
指定された(';' で区切られた)モジュールのみがログファイルに含まれます。デフォルトではすべてのモジュールが含まれます。
概要はログ ページを参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。
Sync App のスキーマファイル(テーブルとビューの場合は.rsd ファイル、ストアドプロシージャの場合は.rsb ファイル)を含むディレクトリへのパス。このフォルダの場所は、実行ファイルの場所からの相対パスにすることができます。Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。
指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\ApacheKafka Data Provider\\Schema" となり、%APPDATA% はユーザーのコンフィギュレーションディレクトリに設定されます:
Platform | %APPDATA% |
Windows | APPDATA 環境変数の値 |
Linux | ~/.config |
このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
スキーマをデータベースからリストすると、負荷がかかる可能性があります。接続文字列でスキーマのリストを提供すると、 パフォーマンスが向上します。
このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。
テーブルを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でテーブルのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。
ビューを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でビューのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。
プロパティ | 説明 |
AggregateMessages | Specifies whether or not to return the message as a whole string. |
CompressionType | Data compression type. Batches of data will be compressed together. |
ConsumerProperties | Additional options used to configure Kafka consumers. |
CreateTablePartitions | The number of partitions assigned to a topic created with CREATE TABLE. |
CreateTableReplicationFactor | The number of replicas assigned to a topic created with CREATE TABLE. |
EnableIdempotence | If set to true, the Apache Kafka will ensure messages are delivered in the correct order, and without duplicates. |
FlattenArrays | By default, nested arrays won't show up if TypeDetectionScheme is set to SchemaRegistry. The FlattenArrays property can be used to flatten the elements of nested arrays into columns of their own. Set FlattenArrays to the number of elements you want to return from nested arrays. |
GenerateSchemaFiles | スキーマを生成して保存するユーザーの好みのタイミングを示します。 |
MaximumBatchSize | Specifies maximum batch size to gather before sending a request. |
MaxRows | クエリで集計またはGROUP BY を使用しない場合に返される行数を制限します。これはLIMIT 句よりも優先されます。 |
MessageKeyColumn | If specified, the message key sent to Apache Kafka will be read from this column. |
MessageKeyType | If MessageKeyColumn is specified, this property must be set to the expected type for the pertinent column. |
OffsetResetStrategy | Specifies an offset for the consumer group. |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
Pagesize | The maximum number of rows to fetch from Kafka at one time. |
ProduceMeta | Specifies whether or not to send a meta message while producing the outgoing message. |
ProducerProperties | Additional options used to configure Kafka producers. |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
ReadDuration | The duration which additional messages are allowed. |
RowScanDepth | The maximum number of messages to scan for the columns available in the topic. |
SerializationFormat | Specifies how to serialize/deserialize message contents. |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
TypeDetectionScheme | Comma-separated list of options specifying how the provider will scan the data to determine the fields and datatypes for the bucket. |
UseConfluentAvroFormat | Specifies how Avro data should be formatted during an INSERT. |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
ValidateRegistryTopics | Specifies whether or not to validate schema registry topics against the Apache Kafka broker. Only has an effect when TypeDetectionScheme =SchemaRegistry |
Specifies whether or not to return the message as a whole string.
When set to false, the result will be parsed and detected fields will appear in the resultset.
Data compression type. Batches of data will be compressed together.
The following values are supported:
NONE | Messages will not be compressed. |
GZIP | Messages will be compressed using gzip. |
SNAPPY | Messages will be compressed using snappy. |
LZ4 | Messages will be compressed using lz4. |
Additional options used to configure Kafka consumers.
The Sync App exposes several Kafka consumer configuration values directly as connection properties. Internally, these are all mapped into properties that are passed to the Kafka client libraries.
If the Sync App does not expose an option for the consumer configuration, it can be set here. This option takes a connection string value and passes all its options directly to the consumer. For example, security.protocol=SASL_SSL;sasl.mechanism=SCRAM-SHA-512 sets the security.protocol and sasl.mechanism consumer properties.
The number of partitions assigned to a topic created with CREATE TABLE.
When executing a CREATE TABLE statement, the Sync App creates a new empty topic. By default, the Sync App creates this new topic with 1 partition.
You can create topics with more partitions by changing this setting. This can be useful if you plan on having multiple consumers process the messages on this topic.
The number of replicas assigned to a topic created with CREATE TABLE.
When executing a CREATE TABLE statement, the Sync App creates a new empty topic. By default, the Sync App creates this topic with a replication factor of 3.
You can create topics with a different number of replicas by changing this setting. There are two main cases where this is useful:
If set to true, the Apache Kafka will ensure messages are delivered in the correct order, and without duplicates.
Gives each message a sequence number when enabled. Specifies how to serialize/deserialize the incoming or outgoing message.
By default, nested arrays won't show up if TypeDetectionScheme is set to SchemaRegistry. The FlattenArrays property can be used to flatten the elements of nested arrays into columns of their own. Set FlattenArrays to the number of elements you want to return from nested arrays.
Set FlattenArrays to the number of elements you want to return from nested arrays. The specified elements are returned as columns.
For example, you can return an arbitrary number of elements from an array of strings:
["FLOW-MATIC","LISP","COBOL"]When FlattenArrays is set to 1, the preceding array is flattened into the following table:
Column Name | Column Value |
languages.0 | FLOW-MATIC |
スキーマを生成して保存するユーザーの好みのタイミングを示します。
このプロパティは、Location で指定されたパスの.rsd ファイルにスキーマをアウトプットします。
有効な設定は次のとおりです。
GenerateSchemaFiles をOnUse に設定すると、Sync App はSELECT クエリを実行したときにスキーマを生成します。スキーマはクエリのそれぞれの参照されたテーブルに対して生成されます。
GenerateSchemaFiles をOnCreate に設定すると、CREATE TABLE クエリが実行されたときにのみスキーマが生成されます。
このプロパティのもう一つの使い方は、接続するときにデータベース内のすべてのテーブルのスキーマを取得することです。これには、GenerateSchemaFiles をOnStart に設定して接続します。
Specifies maximum batch size to gather before sending a request.
A batch can be formed by one or more messages. The size is specified in bytes.
クエリで集計またはGROUP BY を使用しない場合に返される行数を制限します。これはLIMIT 句よりも優先されます。
クエリで集計またはGROUP BY を使用しない場合に返される行数を制限します。これはLIMIT 句よりも優先されます。
If specified, the message key sent to Apache Kafka will be read from this column.
If specified, the message key sent to Apache Kafka will be read from this column.
If MessageKeyColumn is specified, this property must be set to the expected type for the pertinent column.
Be advised that, when this value is set to null, MessageKeyColumn will be ignored.
The available types are as follows:
Null | The key column type will be treated as null. |
Binary | The key column type will be treated as a binary. The value will be reported in base64. |
String | The key column type will be treated as a string. |
Long | The key column type will be treated as a long. |
Integer | The key column type will be treated as an integer. |
Specifies an offset for the consumer group.
Select one of the following strategies:
Latest | Will only consume messages that are produced after the consumer group is created. |
Earliest | Will consume any unconsumed messages including any message produced before the lifetime of the consumer group. |
これらの隠しプロパティは特定のユースケースでのみ使用されます。
以下にリストされているプロパティは、特定のユースケースで使用可能です。通常のドライバーのユースケースおよび機能では、これらのプロパティは必要ありません。
複数のプロパティをセミコロン区切りリストで指定します。
DefaultColumnSize | データソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。 |
ConvertDateTimeToGMT | 日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。 |
RecordToFile=filename | 基底のソケットデータ転送を指定のファイルに記録します。 |
The maximum number of rows to fetch from Kafka at one time.
The Sync App batches reads to Kafka to reduce overhead. Instead of fetching a single row from the broker every time a query row is read, the Sync App will read multiple rows and save them to the resultset. This means that only the first row read from the resultset must wait for the broker. Later rows can be read out of this buffer directly.
This option controls the maximum number of rows the Sync App stores on the resultset. Setting this to a higher value will use more memory but requires waiting on the broker less often. Lower values will give lower throughput while using less memory.
Specifies whether or not to send a meta message while producing the outgoing message.
This option is only used if SerializationFormat is set to CSV.
Additional options used to configure Kafka producers.
This option is like ConsumerProperties but applies to producers instead. Please refer to that property for more information.
このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。
Entity Framework ではテーブルカラムでない疑似カラムに値を設定できないため、この設定はEntity Framework で特に便利です。この接続設定の値は、"Table1=Column1, Table1=Column2, Table2=Column3" の形式です。"*=*" のように"*" 文字を使用して、すべてのテーブルとすべてのカラムを含めることができます。
The duration which additional messages are allowed.
A timeout for the Sync App to stop waiting for additional messages to come.
The maximum number of messages to scan for the columns available in the topic.
Setting a high value may decrease performance. Setting a low value may prevent the data type from being determined properly.
Specifies how to serialize/deserialize message contents.
The Sync App uses this property differently based on the value of TypeDetectionScheme:
Available formats:
NONE | Message will be always BASE64 encoded on both the consume and produce operations. |
AUTO | Attempt to automatically figure out the current topic's serialization format. |
JSON | Message will be serialized using the JSON format. |
CSV | Message will be serialized using the CSV format. |
XML | Message will be serialized using the XML format. |
AVRO | Message will be serialized using the Avro format. |
タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。
Timeout が0に設定されている場合は、操作がタイムアウトしません。処理が正常に完了するか、エラー状態になるまで実行されます。
Timeout の有効期限が切れても処理が完了していない場合は、Sync App は例外をスローします。
Comma-separated list of options specifying how the provider will scan the data to determine the fields and datatypes for the bucket.
The type dection schemes are:
None | Setting TypeDetectionScheme to None will return all columns as string type. |
RowScan | Setting TypeDetectionScheme to RowScan will scan rows to heuristically determine the data type. The RowScanDepth determines the number of rows to be scanned. Can be used with RowScanDepth in order to change the number of rows to be scanned. |
SchemaRegistry | Setting TypeDetectionScheme to SchemaRegistry will determine will make use of the Schema Registry API and use a list of predefined AVRO schemas. |
MessageOnly | Setting TypeDetectionScheme to MessageOnly will push all information as a single aggregate value on a column named Message. |
Specifies how Avro data should be formatted during an INSERT.
By default the Sync App writes out Avro data as a series of file blocks (as defined in the Avro specification). Confluent tools and libraries cannot decode this format and it cannot be used with Confluent schema validation. However, it is more compact because it allows multiple rows of Avro data to be stored in a single message.
Enable this option if you use Confluent schema validation, or otherwise require compatibility with Confluent tools and libraries. Each row inserted into an Avro topic will be a separate message and contain a reference to an schema stored in the registry.
Note that this cannot be enabled if there is no RegistryUrl set or RegistryUrl points to an AWS Glue schema registry. AWS Glue schemas do not support schema IDs which are a key part of how Confluent handles Avro data.
カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。
ユーザー定義ビューは、UserDefinedViews.json というJSON 形式のコンフィギュレーションファイルで定義されています。Sync App は、このファイルで指定されたビューを自動的に検出します。
また、複数のビュー定義を持ち、UserDefinedViews 接続プロパティを使用して制御することも可能です。このプロパティを使用すると、指定されたビューのみがSync App によって検知されます。
このユーザー定義ビューのコンフィギュレーションファイルは、次のようにフォーマットされています。
次に例を示します。
{ "MyView": { "query": "SELECT * FROM SampleTable_1 WHERE MyColumn = 'value'" }, "MyView2": { "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)" } }UserDefinedViews 接続プロパティを使用して、JSON コンフィギュレーションファイルの場所を指定します。次に例を示します。
"UserDefinedViews", C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json指定されたパスは引用符で囲まれていないことに注意してください。
Specifies whether or not to validate schema registry topics against the Apache Kafka broker. Only has an effect when TypeDetectionScheme =SchemaRegistry
Schema registries can include metadata for topics that cannot be accessed in Kafka. This can happen because the topic doesn't exist on the broker. It is also possible that the principal the connection is authenticated to does not have access to the topic.
By default, the Sync App will get a list of schemas from the registry and then filter out any that the broker does not report. All the remaining valid topics are exposed as tables. You can disable this behavior by setting this option to false. This will report all schemas in the registry as tables regardless of whether they are accessible on the broker.