SlideShare a Scribd company logo
Qlik Replicateで
Apache Kafkaを
ターゲットとして使用する
クリックテック・ジャパン株式会社
2
Qlik Replicateの概要
3
Qlik Replicateの「一般的な」アーキテクチャ
Qlik
Replicate
メインフレーム
ファイル
データウェアハウス
RDBMS
Hadoop
メインフレーム
ファイル
データウェアハウス
RDBMS
Hadoop
フルロード
CDC
フルロード
CDCを適用
バッチ バッチ
クラウド
クラウド
オンプレミス オンプレミス
永続ストア
• 多種多様なDB、DWH、ビッグデータプラットフォーム間でデータレプリケーション処理を簡単な操作で行うための製品
• エージェントレスでデータソースへの負荷や影響を最小限にしながら、高速に異種システム間でデータ転送を行える
4
ターゲットとしてのストリーミング環境 - Apache kafkaなど
Qlik
Replicate
メインフレーム
ファイル
データウェアハウス
RDBMS
Hadoop
フルロード
CDC
フルロードとCDCの
レコードデータを
送信 クラウド
クラウド
オンプレミス オンプレミス
永続ストア
• ターゲットとして、ストリーミングアーキテクチャのシステムをサポート
• 実稼働データベースの更新をライブの変更データストリームに変換する、シンプルで汎用的なリアルタイムソリューション
5
Apache Kafkaの概要
6
Apache Kafkaベースのトピックのプロデュース&コンシューム
用語
 Broker - Apache Kafkaサーバー
 Cluster - 複数のBrokerから構成
 Producer - Kafkaクライアント。Broker(Partition)にメッセージ(Message)を送信
 Consumer – Kafkaクライアント。Broker(Partition)からメッセージ(Message)を受信。同一Group内で受信処理を分担可能
 Topic – キュー。複数のPartitionで構成も可能
 Partition – メッセージ(Message)を処理。永続化して一定期間保持
7
Qlik ReplicateのターゲットとしてのApache Kafka
 Qlik Replicate は、Apache Kafka の Producer
 Broker群に接続してメッセージ(Message)をTopicに送信
 各メッセージ(Message)は、Full LoadとApply Changes(CDC)の「1行分のデータ」を表す(サイズには上限あり)
• メッセージ(Message)の形式は、JSON(UTF-8)またはAvro
• メッセージ(Message)には、Message Key(スキーマ名+テーブル名または主キーの値)も付加できる(オプション)
• 処理するPartitionを決めるキー
• メッセージ(Message)は、Snappyまたはgzipで圧縮可能
 Full Load および CDC をサポート(ただしStore Changesモードはサポート無し)
 Apache Kafkaのバージョン 1.x および 2.x をサポート
• Confluent Cloud, Confluent Platformも含む
• https://help.qlik.com/en-US/replicate/May2021/pdf/Replicate%20Support%20Matrix.pdf
8
Apache Kafkaをセットアップする
 Linux/macOS環境を用意(※Windows OS上でのApache Kafkaは若干不安定なのであまりお勧めしません)
• OpenJDK 8 または OpenJDK 11 をインストール
 Apache Kafka(例:2.7.0, Scala 2.13版)をダウンロードして展開
• https://archive.apache.org/dist/kafka/2.7.0/kafka_2.13-2.7.0.tgz
• $>tar -zxvf kafka_2.13-2.7.0.tgz
 Zookeeperを起動
• $>cd kafka_2.13-2.7.0
• $>./bin/zookeeper-server-start.sh config/zookeeper.properties
 Apache kafkaサーバー(Broker)を起動(デフォルトのポート9092を使用)
• $>./bin/kafka-server-start.sh config/server.properties
 付属のコマンドラインツールでTopic(例:quickstart-events)を作成 – ただし、デフォルト設定は必要に応じて自動で作成される
• $>./bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092
 付属のコマンドラインツールでTopicをコンシュームしておく
• $>./bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092 --
property print.offset=true --property print.key=true
9
Confluent - Apache Kafkaベースのストリーミングデータプラットフォーム
Confluent社は、クラウド、マルチクラウドやオンプレミスなどのあらゆる環境に対応するクラウドサービスと自己管理型
ソフトウェアを提供
• Confluent Cloud - Apache Kafka のクラウドネイティブサービス
• Confluent Cloudは、保有するすべてのデータを必要なあらゆる場所で接続し、処理するための完全マネージド型のク
ラウドネイティブ Apache Kafka サービス
• https://www.confluent.jp/confluent-cloud/
• https://docs.confluent.io/ja-jp/cloud/current/overview.html
• Confluent Platform - すべてが揃った Apache Kafka のエンタープライズ版ディストリビューション
• Confluent Platformは、組織全体のデータを継続的にストリーミングし、質の高いカスタマーエクスペリエンスとデータドリ
ブン型の運用を実現する完全な自己管理型のプラットフォームを提供
• https://www.confluent.jp/product/confluent-platform/
• https://docs.confluent.io/ja-jp/platform/6.0.1/overview.html
10
Qlik ReplicateからApache Kafka
そしてQlik Senseへ
11
ターゲットのデータソースとしてKafkaを設定
 Broker servers – 最初に接続するBrokerのリスト
 Security - SSLや認証設定
 MessageのFormatとCompression(None、Snappy、gzip)を設定
 送信先のTopicを設定
• 単一のTopic か 1テーブルごとに1つのTopic(’schema.tablename’形式)
• 送信先Partition選択用の Message Key の有無
• Message Keyを使う場合の値(主キー値 か ’schema+tablename’形式)
• 処理中のエラーは、attrep_apply_exceptionsというTopicに送信される
 メッセージの構造を示すメタデータを付けるか否か
• 付ける場合はそれを送信するTopicやSchema Registryを指定
 メッセージにQlik Replicate特有のデータを付けるか否か
 テーブルのTransformationで以下の名前のカラムを追加して、Topic、Partition、
Message Keyの値をそれぞれオーバーライド設定可能
• $topic、$partition、$key
12
サポートされない機能(制限)
• https://help.qlik.com/en-US/replicate/May2021/Content/Replicate/Main/Kafka/limitations_kafka.htm
• 無制限サイズのLOBは非サポート。ソーステーブルからLOBカラムをレプリケートする場合は「Allow unlimited LOB size」オプションは選択しない
• 「Batch optimized apply」モードはサポートされない。このモードが設定されている場合、タスクは自動的に「Transactional apply」モードに切り
替わり、警告を出力
• 「Store Changes」モードには対応しない
• KafkaのTopic名は255文字(Kafka 0.10からは249文字)を超えないこと。以下の文字だけを含むようにする
• a-z|A-Z|0-9|. (dot)|_(underscore)|-(minus)
• ソーステーブルの名前が最大長を超えていたり、サポートされない文字が含まれる場合、タスクを開始する前に名前を修正するか「Global Transformation」を定
義する必要あり
• カラム名は、[A-Za-z_](アルファベットまたはアンダースコア)で始まり、[A-Za-z0-9_](アルファベット、数字またはアンダースコア)が続く必要あり
• ソースのカラム名がこのルールに従っていない場合は、「transformation」を使用してカラム名を変更する必要あり
• Apply Changesの「Ignore ALTER」設定は、ソースデータタイプの変更やテーブル名の変更には対応しない
• 「Target Table Preparation」の「Drop and Create table」オプションはサポートされない
• 「Target Table Preparation」の「Truncate before loading」オプションはサポートされない
• 「DDL History」および「Change Data Partitioning Control Table」はサポートされない
• DDL変更(テーブルの削除または名前の変更)はサポートされない
13
送受信されるメッセージ – JSONの例
operationの値は
 REFRESH - Full Load
 UPDATE, DELETE, INSERT - Apply Changes(CDC)
タスク
MySQLKafka Topicに送信され、./bin/kafka-console-consumer.shで受信して表示したメッセージの例
・・・
・・・
• MySQLのsales.employeesテーブルのEmployeeID、LastName、FirstNameの3つのカラムだけを処理
• Full Loadした後、MySQLクライアントで何かの行を更新(UPDATE)した場合
• Message Keyは’schema+tablename’形式
14
KafkaのTopicをコンシュームするクライアントの例 - その1
 Rubyを利用して、KafkaのTopicを受信し続ける
• Apache Kafkaクライアントライブラリのruby-kafka(https://github.com/zendesk/ruby-kafka)を利用
 ソースのsales.employeesテーブルのFull LoadとApply Changes(CDC)のデータをCSVファイルに継続的に追記
• fulload.csv, changes.csv
Qlik Replicate
RDBMS ファイル
15
KafkaのTopicをコンシュームするクライアントの例 - その1
 Qlik Sense(QlikView)でCSVファイルをロードする
• 通常のリロード
• Merge Onlyのリロード
Qlik Replicate
RDBMS ファイル
16
KafkaのTopicをコンシュームするクライアントの例 - その2
 Rubyを利用して、KafkaのTopicを受信し続ける
• Apache Kafkaクライアントライブラリのruby-kafka(https://github.com/zendesk/ruby-kafka)を利用
 ソースのsales.employeesテーブルのFull LoadとApply Changes(CDC)のデータを継続的にMySQLのテーブルへINSERT(autocommit=true)
• fullloadテーブル、changesテーブル
• MySQLライブラリのmysql2(https://github.com/brianmario/mysql2)を利用 Qlik Replicate
RDBMS RDBMS
17
KafkaのTopicをコンシュームするクライアントの例 - その2
Qlik Replicate
RDBMS RDBMS
 Qlik Sense(QlikView)でテーブルをロードする
• 通常のリロード
• Merge Onlyのリロード
18
Tips: 送受信されるメッセージの構造
• 受信するレコードデータのメッセージのフォーマットを変更したり、メッセージのメタデータやスキーマなども利用可能
• 受信するコンシューマを実装する際に考慮が必要
• 「Table Settings」画面の「Message Format」タブで、デフォルトのQlik Replicateメッセージのフォーマットをカスタマイズ
することが可能
https://help.qlik.com/en-
US/replicate/May2021/Content/Global_Common/Content/SharedEMReplicate/Customize%20Tasks/Message_Format.htm
• カスタムメッセージフォーマット機能は、Attunity Avro Message Decoder SDKと組み合わせて使用することはできない
• 階層構造のメッセージはサポートされない
• デフォルトのメッセージフォーマットに戻すには「Default Message Format」ボタンをクリックします
• Replicate Envelopeとは?
https://help.qlik.com/en-US/replicate/May2021/Content/Replicate/Main/Kafka/attunity_envelope.htm
• メッセージは、Replicate Envelopeと呼ばれるメッセージスキーマ用データによって包含されるエンドポイント設定もあり
• messageSchemaIdフィールド(null またはID文字列) - 別の場所で定義されたメッセージスキーマへの参照ID。コンシューマは、別途送信される
MetadataメッセージからIDを使って検索する必要あり
• messageSchemaフィールド(null または 文字列) - Avroメッセージ用のAvro JSON スキーマ
www.qlik.com/sap

More Related Content

What's hot

Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用
QlikPresalesJapan
 
Qlik Replicateでのレプリケーション・タスクの監視と制御
Qlik Replicateでのレプリケーション・タスクの監視と制御Qlik Replicateでのレプリケーション・タスクの監視と制御
Qlik Replicateでのレプリケーション・タスクの監視と制御
QlikPresalesJapan
 
Qlik Replicate - Control Tableの詳細
Qlik Replicate - Control Tableの詳細Qlik Replicate - Control Tableの詳細
Qlik Replicate - Control Tableの詳細
QlikPresalesJapan
 
Qlik Replicate コンソールの利用方法
Qlik Replicate コンソールの利用方法Qlik Replicate コンソールの利用方法
Qlik Replicate コンソールの利用方法
QlikPresalesJapan
 
Qlik ReplicateでのLog Streamの利用
Qlik ReplicateでのLog Streamの利用Qlik ReplicateでのLog Streamの利用
Qlik ReplicateでのLog Streamの利用
QlikPresalesJapan
 
Qlik Replicate - Change Tables(変更テーブル)のご説明
Qlik Replicate - Change Tables(変更テーブル)のご説明Qlik Replicate - Change Tables(変更テーブル)のご説明
Qlik Replicate - Change Tables(変更テーブル)のご説明
QlikPresalesJapan
 
Qlik Replicate のインストール
Qlik Replicate のインストールQlik Replicate のインストール
Qlik Replicate のインストール
QlikPresalesJapan
 
Qlik composeのご紹介
Qlik composeのご紹介Qlik composeのご紹介
Qlik composeのご紹介
QlikPresalesJapan
 
Qlik Replicate - Replicate Logger
Qlik Replicate - Replicate LoggerQlik Replicate - Replicate Logger
Qlik Replicate - Replicate Logger
QlikPresalesJapan
 
Qlik Replicateでのタスク設定の詳細
Qlik Replicateでのタスク設定の詳細Qlik Replicateでのタスク設定の詳細
Qlik Replicateでのタスク設定の詳細
QlikPresalesJapan
 
SAP Applicationのソース・エンドポイントとしての利用
SAP Applicationのソース・エンドポイントとしての利用SAP Applicationのソース・エンドポイントとしての利用
SAP Applicationのソース・エンドポイントとしての利用
QlikPresalesJapan
 
Qlik Replicateのタスク実行時の操作
Qlik Replicateのタスク実行時の操作Qlik Replicateのタスク実行時の操作
Qlik Replicateのタスク実行時の操作
QlikPresalesJapan
 
Qlik composeのインストール
Qlik composeのインストールQlik composeのインストール
Qlik composeのインストール
QlikPresalesJapan
 
SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用
QlikPresalesJapan
 
Salesforceのソースエンドポイントとしての利用
Salesforceのソースエンドポイントとしての利用Salesforceのソースエンドポイントとしての利用
Salesforceのソースエンドポイントとしての利用
QlikPresalesJapan
 
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
QlikPresalesJapan
 
TECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステスト
TECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステストTECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステスト
TECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステスト
QlikPresalesJapan
 
TECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッション
TECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッションTECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッション
TECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッション
QlikPresalesJapan
 
[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ
[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ
[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ
オラクルエンジニア通信
 
Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用
Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用
Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用
QlikPresalesJapan
 

What's hot (20)

Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用
 
Qlik Replicateでのレプリケーション・タスクの監視と制御
Qlik Replicateでのレプリケーション・タスクの監視と制御Qlik Replicateでのレプリケーション・タスクの監視と制御
Qlik Replicateでのレプリケーション・タスクの監視と制御
 
Qlik Replicate - Control Tableの詳細
Qlik Replicate - Control Tableの詳細Qlik Replicate - Control Tableの詳細
Qlik Replicate - Control Tableの詳細
 
Qlik Replicate コンソールの利用方法
Qlik Replicate コンソールの利用方法Qlik Replicate コンソールの利用方法
Qlik Replicate コンソールの利用方法
 
Qlik ReplicateでのLog Streamの利用
Qlik ReplicateでのLog Streamの利用Qlik ReplicateでのLog Streamの利用
Qlik ReplicateでのLog Streamの利用
 
Qlik Replicate - Change Tables(変更テーブル)のご説明
Qlik Replicate - Change Tables(変更テーブル)のご説明Qlik Replicate - Change Tables(変更テーブル)のご説明
Qlik Replicate - Change Tables(変更テーブル)のご説明
 
Qlik Replicate のインストール
Qlik Replicate のインストールQlik Replicate のインストール
Qlik Replicate のインストール
 
Qlik composeのご紹介
Qlik composeのご紹介Qlik composeのご紹介
Qlik composeのご紹介
 
Qlik Replicate - Replicate Logger
Qlik Replicate - Replicate LoggerQlik Replicate - Replicate Logger
Qlik Replicate - Replicate Logger
 
Qlik Replicateでのタスク設定の詳細
Qlik Replicateでのタスク設定の詳細Qlik Replicateでのタスク設定の詳細
Qlik Replicateでのタスク設定の詳細
 
SAP Applicationのソース・エンドポイントとしての利用
SAP Applicationのソース・エンドポイントとしての利用SAP Applicationのソース・エンドポイントとしての利用
SAP Applicationのソース・エンドポイントとしての利用
 
Qlik Replicateのタスク実行時の操作
Qlik Replicateのタスク実行時の操作Qlik Replicateのタスク実行時の操作
Qlik Replicateのタスク実行時の操作
 
Qlik composeのインストール
Qlik composeのインストールQlik composeのインストール
Qlik composeのインストール
 
SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用SAP Application(DB)のソースエンドポイントとしての利用
SAP Application(DB)のソースエンドポイントとしての利用
 
Salesforceのソースエンドポイントとしての利用
Salesforceのソースエンドポイントとしての利用Salesforceのソースエンドポイントとしての利用
Salesforceのソースエンドポイントとしての利用
 
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
 
TECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステスト
TECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステストTECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステスト
TECHTALK 20210518 Qlik Sense Scalability Tools で行うパフォーマンステスト
 
TECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッション
TECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッションTECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッション
TECHTALK 20210406 Qlik Sense Enterprise SaaS 管理者向けセッション
 
[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ
[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ
[フルバージョン] WebLogic Server for OCI 活用のご提案 - TCO削減とシステムのモダナイズ
 
Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用
Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用
Microsoft SQL Serverのソース・ターゲットエンドポイントとしての利用
 

Similar to Qlik ReplicateでApache Kafkaをターゲットとして使用する

Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用するQlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
QlikPresalesJapan
 
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
Insight Technology, Inc.
 
Impala 2.0 Update 日本語版 #impalajp
Impala 2.0 Update 日本語版 #impalajpImpala 2.0 Update 日本語版 #impalajp
Impala 2.0 Update 日本語版 #impalajp
Cloudera Japan
 
20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...
20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...
20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...
Insight Technology, Inc.
 
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
Daiyu Hatakeyama
 
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Takamasa Maejima
 
Open stack reference architecture v1 2
Open stack reference architecture v1 2Open stack reference architecture v1 2
Open stack reference architecture v1 2Dell TechCenter Japan
 
Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!
Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!
Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!
QlikPresalesJapan
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
Cld002 windows server_2016_で作るシンプ
Cld002 windows server_2016_で作るシンプCld002 windows server_2016_で作るシンプ
Cld002 windows server_2016_で作るシンプ
Tech Summit 2016
 
[Japan Tech summit 2017] DAL 001
[Japan Tech summit 2017]  DAL 001[Japan Tech summit 2017]  DAL 001
[Japan Tech summit 2017] DAL 001
Microsoft Tech Summit 2017
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッション
Yuichi Hasegawa
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Masayuki Ozawa
 
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
オラクルエンジニア通信
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
LINE Corporation
 
Evolution of Impala #hcj2014
Evolution of Impala #hcj2014Evolution of Impala #hcj2014
Evolution of Impala #hcj2014
Cloudera Japan
 
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知るAI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
日本ヒューレット・パッカード株式会社
 
Vertica 8.0.0 新機能
Vertica 8.0.0 新機能Vertica 8.0.0 新機能
Vertica 8.0.0 新機能
Kaito Tono
 
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
NTT DATA Technology & Innovation
 
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
Insight Technology, Inc.
 

Similar to Qlik ReplicateでApache Kafkaをターゲットとして使用する (20)

Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用するQlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
 
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
 
Impala 2.0 Update 日本語版 #impalajp
Impala 2.0 Update 日本語版 #impalajpImpala 2.0 Update 日本語版 #impalajp
Impala 2.0 Update 日本語版 #impalajp
 
20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...
20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...
20160202_Live Demo!! ビッグデータ/クラウドにレプリケーション技術でマルチロケーションデータ連携 by 株式会社インサイトテクノロジー...
 
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
 
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
 
Open stack reference architecture v1 2
Open stack reference architecture v1 2Open stack reference architecture v1 2
Open stack reference architecture v1 2
 
Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!
Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!
Hybrid Data Deliveryを活用してオンプレミスデータをQlik Cloudでリアルタイム活用!
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
Cld002 windows server_2016_で作るシンプ
Cld002 windows server_2016_で作るシンプCld002 windows server_2016_で作るシンプ
Cld002 windows server_2016_で作るシンプ
 
[Japan Tech summit 2017] DAL 001
[Japan Tech summit 2017]  DAL 001[Japan Tech summit 2017]  DAL 001
[Japan Tech summit 2017] DAL 001
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッション
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
 
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
 
Evolution of Impala #hcj2014
Evolution of Impala #hcj2014Evolution of Impala #hcj2014
Evolution of Impala #hcj2014
 
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知るAI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
 
Vertica 8.0.0 新機能
Vertica 8.0.0 新機能Vertica 8.0.0 新機能
Vertica 8.0.0 新機能
 
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
 
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
 

More from QlikPresalesJapan

03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視
03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視
03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視
QlikPresalesJapan
 
02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」
02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」
02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」
QlikPresalesJapan
 
02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」
02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」
02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」
QlikPresalesJapan
 
02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」
02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」
02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」
QlikPresalesJapan
 
02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」
02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」
02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」
QlikPresalesJapan
 
QCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストール
QCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストールQCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストール
QCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストール
QlikPresalesJapan
 
Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)
Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)
Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)
QlikPresalesJapan
 
20240528_Qlik TECHTALK_Whats New May 2024
20240528_Qlik TECHTALK_Whats New May 202420240528_Qlik TECHTALK_Whats New May 2024
20240528_Qlik TECHTALK_Whats New May 2024
QlikPresalesJapan
 
2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介
2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介
2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介
QlikPresalesJapan
 
2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例
2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例
2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例
QlikPresalesJapan
 
2024-05-14 TECH TALK Talend Studio with SAP Integration
2024-05-14 TECH TALK Talend Studio with SAP Integration2024-05-14 TECH TALK Talend Studio with SAP Integration
2024-05-14 TECH TALK Talend Studio with SAP Integration
QlikPresalesJapan
 
2024-05-07 TECH TALK Talend Data Quality
2024-05-07 TECH TALK Talend Data Quality2024-05-07 TECH TALK Talend Data Quality
2024-05-07 TECH TALK Talend Data Quality
QlikPresalesJapan
 
Talend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQL
Talend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQLTalend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQL
Talend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQL
QlikPresalesJapan
 
2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx
2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx
2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx
QlikPresalesJapan
 
Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介
Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介
Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介
QlikPresalesJapan
 
Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法
Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法
Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法
QlikPresalesJapan
 
Qlik Tips - 2024/04/16 Capacity データ消費の確認
Qlik Tips - 2024/04/16 Capacity データ消費の確認Qlik Tips - 2024/04/16 Capacity データ消費の確認
Qlik Tips - 2024/04/16 Capacity データ消費の確認
QlikPresalesJapan
 
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJarTalend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
QlikPresalesJapan
 
Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説
Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説
Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説
QlikPresalesJapan
 
Talend Cloudの管理プラットフォーム Talend Management Consoleのご紹介
Talend Cloudの管理プラットフォームTalend Management Consoleのご紹介Talend Cloudの管理プラットフォームTalend Management Consoleのご紹介
Talend Cloudの管理プラットフォーム Talend Management Consoleのご紹介
QlikPresalesJapan
 

More from QlikPresalesJapan (20)

03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視
03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視
03 Qlik Cloud データ統合 しっかり学ぶ勉強会 #3 データ変換 タスク監視
 
02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」
02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」
02_1_20240611_Qlik Cloudデータ統合_データパイプラインの作成「基本動作」
 
02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」
02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」
02_4_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「系列と影響分析」
 
02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」
02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」
02_3_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データの管理(簡単なデータ変換)」
 
02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」
02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」
02_2_20240611_Qlik Cloud データ統合 しっかり学ぶ勉強会 #2 - データパイプラインの作成「データマートの作成」
 
QCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストール
QCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストールQCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストール
QCDI勉強会_20240604_QCDI_基本の設定とゲートウェイのインストール
 
Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)
Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)
Qlik医療データ活用勉強会_第37回_令和4年度DPC「退院患者調査」データの活用(実績、救急、紹介、退院)
 
20240528_Qlik TECHTALK_Whats New May 2024
20240528_Qlik TECHTALK_Whats New May 202420240528_Qlik TECHTALK_Whats New May 2024
20240528_Qlik TECHTALK_Whats New May 2024
 
2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介
2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介
2024/05/21_Qlik Web セミナー_Qlik の戦略と製品のご紹介
 
2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例
2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例
2024/05/21_生成AI どう使う?ChatGPT の機能と限界と活用事例
 
2024-05-14 TECH TALK Talend Studio with SAP Integration
2024-05-14 TECH TALK Talend Studio with SAP Integration2024-05-14 TECH TALK Talend Studio with SAP Integration
2024-05-14 TECH TALK Talend Studio with SAP Integration
 
2024-05-07 TECH TALK Talend Data Quality
2024-05-07 TECH TALK Talend Data Quality2024-05-07 TECH TALK Talend Data Quality
2024-05-07 TECH TALK Talend Data Quality
 
Talend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQL
Talend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQLTalend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQL
Talend Studioのビッグデータ対応機能のご紹介 - Hadoop, HDFS, Hive, HBase, Spark, NoSQL
 
2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx
2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx
2024/04/25 Qlik医療データ活用勉強会_第36回_202404.pptx
 
Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介
Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介
Qlik TECH TALK 組織のメタデータを一元管理「Talend Data Catalog」のご紹介
 
Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法
Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法
Qlik Tips 20240416 Qlik Senseのトレンド線の係数の計算方法
 
Qlik Tips - 2024/04/16 Capacity データ消費の確認
Qlik Tips - 2024/04/16 Capacity データ消費の確認Qlik Tips - 2024/04/16 Capacity データ消費の確認
Qlik Tips - 2024/04/16 Capacity データ消費の確認
 
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJarTalend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
 
Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説
Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説
Qlik TECHTALK Qlik Cloud 日本リージョン開設!テナント作成と移行方法を解説
 
Talend Cloudの管理プラットフォーム Talend Management Consoleのご紹介
Talend Cloudの管理プラットフォームTalend Management Consoleのご紹介Talend Cloudの管理プラットフォームTalend Management Consoleのご紹介
Talend Cloudの管理プラットフォーム Talend Management Consoleのご紹介
 

Qlik ReplicateでApache Kafkaをターゲットとして使用する

  • 3. 3 Qlik Replicateの「一般的な」アーキテクチャ Qlik Replicate メインフレーム ファイル データウェアハウス RDBMS Hadoop メインフレーム ファイル データウェアハウス RDBMS Hadoop フルロード CDC フルロード CDCを適用 バッチ バッチ クラウド クラウド オンプレミス オンプレミス 永続ストア • 多種多様なDB、DWH、ビッグデータプラットフォーム間でデータレプリケーション処理を簡単な操作で行うための製品 • エージェントレスでデータソースへの負荷や影響を最小限にしながら、高速に異種システム間でデータ転送を行える
  • 4. 4 ターゲットとしてのストリーミング環境 - Apache kafkaなど Qlik Replicate メインフレーム ファイル データウェアハウス RDBMS Hadoop フルロード CDC フルロードとCDCの レコードデータを 送信 クラウド クラウド オンプレミス オンプレミス 永続ストア • ターゲットとして、ストリーミングアーキテクチャのシステムをサポート • 実稼働データベースの更新をライブの変更データストリームに変換する、シンプルで汎用的なリアルタイムソリューション
  • 6. 6 Apache Kafkaベースのトピックのプロデュース&コンシューム 用語  Broker - Apache Kafkaサーバー  Cluster - 複数のBrokerから構成  Producer - Kafkaクライアント。Broker(Partition)にメッセージ(Message)を送信  Consumer – Kafkaクライアント。Broker(Partition)からメッセージ(Message)を受信。同一Group内で受信処理を分担可能  Topic – キュー。複数のPartitionで構成も可能  Partition – メッセージ(Message)を処理。永続化して一定期間保持
  • 7. 7 Qlik ReplicateのターゲットとしてのApache Kafka  Qlik Replicate は、Apache Kafka の Producer  Broker群に接続してメッセージ(Message)をTopicに送信  各メッセージ(Message)は、Full LoadとApply Changes(CDC)の「1行分のデータ」を表す(サイズには上限あり) • メッセージ(Message)の形式は、JSON(UTF-8)またはAvro • メッセージ(Message)には、Message Key(スキーマ名+テーブル名または主キーの値)も付加できる(オプション) • 処理するPartitionを決めるキー • メッセージ(Message)は、Snappyまたはgzipで圧縮可能  Full Load および CDC をサポート(ただしStore Changesモードはサポート無し)  Apache Kafkaのバージョン 1.x および 2.x をサポート • Confluent Cloud, Confluent Platformも含む • https://help.qlik.com/en-US/replicate/May2021/pdf/Replicate%20Support%20Matrix.pdf
  • 8. 8 Apache Kafkaをセットアップする  Linux/macOS環境を用意(※Windows OS上でのApache Kafkaは若干不安定なのであまりお勧めしません) • OpenJDK 8 または OpenJDK 11 をインストール  Apache Kafka(例:2.7.0, Scala 2.13版)をダウンロードして展開 • https://archive.apache.org/dist/kafka/2.7.0/kafka_2.13-2.7.0.tgz • $>tar -zxvf kafka_2.13-2.7.0.tgz  Zookeeperを起動 • $>cd kafka_2.13-2.7.0 • $>./bin/zookeeper-server-start.sh config/zookeeper.properties  Apache kafkaサーバー(Broker)を起動(デフォルトのポート9092を使用) • $>./bin/kafka-server-start.sh config/server.properties  付属のコマンドラインツールでTopic(例:quickstart-events)を作成 – ただし、デフォルト設定は必要に応じて自動で作成される • $>./bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092  付属のコマンドラインツールでTopicをコンシュームしておく • $>./bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092 -- property print.offset=true --property print.key=true
  • 9. 9 Confluent - Apache Kafkaベースのストリーミングデータプラットフォーム Confluent社は、クラウド、マルチクラウドやオンプレミスなどのあらゆる環境に対応するクラウドサービスと自己管理型 ソフトウェアを提供 • Confluent Cloud - Apache Kafka のクラウドネイティブサービス • Confluent Cloudは、保有するすべてのデータを必要なあらゆる場所で接続し、処理するための完全マネージド型のク ラウドネイティブ Apache Kafka サービス • https://www.confluent.jp/confluent-cloud/ • https://docs.confluent.io/ja-jp/cloud/current/overview.html • Confluent Platform - すべてが揃った Apache Kafka のエンタープライズ版ディストリビューション • Confluent Platformは、組織全体のデータを継続的にストリーミングし、質の高いカスタマーエクスペリエンスとデータドリ ブン型の運用を実現する完全な自己管理型のプラットフォームを提供 • https://www.confluent.jp/product/confluent-platform/ • https://docs.confluent.io/ja-jp/platform/6.0.1/overview.html
  • 11. 11 ターゲットのデータソースとしてKafkaを設定  Broker servers – 最初に接続するBrokerのリスト  Security - SSLや認証設定  MessageのFormatとCompression(None、Snappy、gzip)を設定  送信先のTopicを設定 • 単一のTopic か 1テーブルごとに1つのTopic(’schema.tablename’形式) • 送信先Partition選択用の Message Key の有無 • Message Keyを使う場合の値(主キー値 か ’schema+tablename’形式) • 処理中のエラーは、attrep_apply_exceptionsというTopicに送信される  メッセージの構造を示すメタデータを付けるか否か • 付ける場合はそれを送信するTopicやSchema Registryを指定  メッセージにQlik Replicate特有のデータを付けるか否か  テーブルのTransformationで以下の名前のカラムを追加して、Topic、Partition、 Message Keyの値をそれぞれオーバーライド設定可能 • $topic、$partition、$key
  • 12. 12 サポートされない機能(制限) • https://help.qlik.com/en-US/replicate/May2021/Content/Replicate/Main/Kafka/limitations_kafka.htm • 無制限サイズのLOBは非サポート。ソーステーブルからLOBカラムをレプリケートする場合は「Allow unlimited LOB size」オプションは選択しない • 「Batch optimized apply」モードはサポートされない。このモードが設定されている場合、タスクは自動的に「Transactional apply」モードに切り 替わり、警告を出力 • 「Store Changes」モードには対応しない • KafkaのTopic名は255文字(Kafka 0.10からは249文字)を超えないこと。以下の文字だけを含むようにする • a-z|A-Z|0-9|. (dot)|_(underscore)|-(minus) • ソーステーブルの名前が最大長を超えていたり、サポートされない文字が含まれる場合、タスクを開始する前に名前を修正するか「Global Transformation」を定 義する必要あり • カラム名は、[A-Za-z_](アルファベットまたはアンダースコア)で始まり、[A-Za-z0-9_](アルファベット、数字またはアンダースコア)が続く必要あり • ソースのカラム名がこのルールに従っていない場合は、「transformation」を使用してカラム名を変更する必要あり • Apply Changesの「Ignore ALTER」設定は、ソースデータタイプの変更やテーブル名の変更には対応しない • 「Target Table Preparation」の「Drop and Create table」オプションはサポートされない • 「Target Table Preparation」の「Truncate before loading」オプションはサポートされない • 「DDL History」および「Change Data Partitioning Control Table」はサポートされない • DDL変更(テーブルの削除または名前の変更)はサポートされない
  • 13. 13 送受信されるメッセージ – JSONの例 operationの値は  REFRESH - Full Load  UPDATE, DELETE, INSERT - Apply Changes(CDC) タスク MySQLKafka Topicに送信され、./bin/kafka-console-consumer.shで受信して表示したメッセージの例 ・・・ ・・・ • MySQLのsales.employeesテーブルのEmployeeID、LastName、FirstNameの3つのカラムだけを処理 • Full Loadした後、MySQLクライアントで何かの行を更新(UPDATE)した場合 • Message Keyは’schema+tablename’形式
  • 14. 14 KafkaのTopicをコンシュームするクライアントの例 - その1  Rubyを利用して、KafkaのTopicを受信し続ける • Apache Kafkaクライアントライブラリのruby-kafka(https://github.com/zendesk/ruby-kafka)を利用  ソースのsales.employeesテーブルのFull LoadとApply Changes(CDC)のデータをCSVファイルに継続的に追記 • fulload.csv, changes.csv Qlik Replicate RDBMS ファイル
  • 15. 15 KafkaのTopicをコンシュームするクライアントの例 - その1  Qlik Sense(QlikView)でCSVファイルをロードする • 通常のリロード • Merge Onlyのリロード Qlik Replicate RDBMS ファイル
  • 16. 16 KafkaのTopicをコンシュームするクライアントの例 - その2  Rubyを利用して、KafkaのTopicを受信し続ける • Apache Kafkaクライアントライブラリのruby-kafka(https://github.com/zendesk/ruby-kafka)を利用  ソースのsales.employeesテーブルのFull LoadとApply Changes(CDC)のデータを継続的にMySQLのテーブルへINSERT(autocommit=true) • fullloadテーブル、changesテーブル • MySQLライブラリのmysql2(https://github.com/brianmario/mysql2)を利用 Qlik Replicate RDBMS RDBMS
  • 17. 17 KafkaのTopicをコンシュームするクライアントの例 - その2 Qlik Replicate RDBMS RDBMS  Qlik Sense(QlikView)でテーブルをロードする • 通常のリロード • Merge Onlyのリロード
  • 18. 18 Tips: 送受信されるメッセージの構造 • 受信するレコードデータのメッセージのフォーマットを変更したり、メッセージのメタデータやスキーマなども利用可能 • 受信するコンシューマを実装する際に考慮が必要 • 「Table Settings」画面の「Message Format」タブで、デフォルトのQlik Replicateメッセージのフォーマットをカスタマイズ することが可能 https://help.qlik.com/en- US/replicate/May2021/Content/Global_Common/Content/SharedEMReplicate/Customize%20Tasks/Message_Format.htm • カスタムメッセージフォーマット機能は、Attunity Avro Message Decoder SDKと組み合わせて使用することはできない • 階層構造のメッセージはサポートされない • デフォルトのメッセージフォーマットに戻すには「Default Message Format」ボタンをクリックします • Replicate Envelopeとは? https://help.qlik.com/en-US/replicate/May2021/Content/Replicate/Main/Kafka/attunity_envelope.htm • メッセージは、Replicate Envelopeと呼ばれるメッセージスキーマ用データによって包含されるエンドポイント設定もあり • messageSchemaIdフィールド(null またはID文字列) - 別の場所で定義されたメッセージスキーマへの参照ID。コンシューマは、別途送信される MetadataメッセージからIDを使って検索する必要あり • messageSchemaフィールド(null または 文字列) - Avroメッセージ用のAvro JSON スキーマ