SlideShare a Scribd company logo
1 of 15
Download to read offline
Wanny Morellato, SAP Concur

Director of Engineering

October 16, 2018
Breaking Down A SQL Monolith

with Change Tracking, Kafka and KStreams / KSQL
NOTE: Delete the yellow stickers when finished.
Samples of a title slide with a pictogram are also
available in this template.
See SAP Image Library for other available images
you can sort using the drop down menu and
selecting illustration options.
Wanny Morellato

Director of Engineering @ SAP Concur
@mrwanny
Wanny.Morellato@sap.com
#I am Hiring
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "3
Agenda
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "4
The Why
MTTRHealth Scale
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "5
The What
ReadsReads + Writes
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "6
The What
Reads + WritesReads
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "7
The How
Change
Tracking
Kafka
Connect
Kafka
Topic
Kafka
Streams
Micro
Service
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "8
MSSQL Change Tracking
SELECT CT.user_id,
U.uuid user_uuid,

U.is_active is_active,
CT.SYS_CHANGE_VERSION,
CASE CT.SYS_CHANGE_OPERATION
WHEN 'I' THEN 'UserCreated'
WHEN 'U' THEN 'UserUpdated'
WHEN 'D' THEN 'UserDeleted'
END
CT.SYS_CHANGE_COLUMNS
FROM CHANGETABLE( CHANGES [dbo]. [users], @last_version )
AS CT
LEFT OUTER JOIN [dbo].[users] AS U WITH (NOLOCK)
ON CT.user_id = U.user_id
WHERE CT.SYS_CHANGE_VERSION < @max_version
ORDER BY CT.SYS_CHANGE_VERSION
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "9
Kafka Connect
public class MssqlSourceTask extends SourceTask {
@Override
public List<SourceRecord> poll() {
ResultSet result = stmt.executeQuery();
return convert(result);
}
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "10
Kafka Topic
• One Topic per Table
• Partition Size aligns to the Table change rate
• Consistent Hashing partitioning based on a Table unique key
• Replication Factor : 3
• Min InSync Replica : 2
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "11
Kafka KSQL
CREATE TABLE users
(user_id VARCHAR,
user_uuid VARCHAR,
is_active BOOLEAN,
. . . )
WITH (KAFKA_TOPIC='users',
VALUE_FORMAT='JSON',
KEY = ‘user_uuid')
WHERE is_active = 'true' ;
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "12
Kafka Stream
Topology topology = new Topology();
topologyBuilder
.addSource("SOURCE", stringDeserializer, deserializer, getTopic())
.addProcessor("FILTER",getFilter(),"SOURCE")
.addProcessor("PROCESSOR", getWebhookProcessor(), "FILTER")
.addSink(“SINK",getDeadLetterTopic(),serializer,"PROCESSOR");
StreamsConfig config = new StreamsConfig(env.getStreamProperties());
KafkaStreams streaming = new KafkaStreams(topology, config);
streaming.start();
© 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "13
Summary
Change
Tracking
Kafka
Connect
Kafka
Topic
Kafka
Streams
Micro
Service
Thank You.
Contact information:
Wanny Morellato
Director of Engineering
SAP Concur
@mrwanny
Wanny.Morellato@sap.com
© 2018 SAP SE or an SAP affiliate company. All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP
SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ
materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices.
Learn more at concur.com
Follow all of SAP Concur

More Related Content

What's hot

Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...
Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...
Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...Cloudera, Inc.
 
MicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) CloudMicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) CloudCCG
 
Flash session -goldengate--lht1053-lon
Flash session -goldengate--lht1053-lonFlash session -goldengate--lht1053-lon
Flash session -goldengate--lht1053-lonJeffrey T. Pollock
 
Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360
Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360
Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360Databricks
 
How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...
How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...
How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...Databricks
 
Foundational Strategies for Trusted Data: Getting Your Data to the Cloud
Foundational Strategies for Trusted Data: Getting Your Data to the CloudFoundational Strategies for Trusted Data: Getting Your Data to the Cloud
Foundational Strategies for Trusted Data: Getting Your Data to the CloudPrecisely
 
Big Data Paris - A Modern Enterprise Architecture
Big Data Paris - A Modern Enterprise ArchitectureBig Data Paris - A Modern Enterprise Architecture
Big Data Paris - A Modern Enterprise ArchitectureMongoDB
 
Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...
Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...
Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...SoftServe
 
Big Data, Big Thinking: Untapped Opportunities
Big Data, Big Thinking: Untapped OpportunitiesBig Data, Big Thinking: Untapped Opportunities
Big Data, Big Thinking: Untapped OpportunitiesSAP Technology
 
Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE)
Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE) Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE)
Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE) Guido Schmutz
 
2020 Cloudera Data Impact Awards Finalists
2020 Cloudera Data Impact Awards Finalists2020 Cloudera Data Impact Awards Finalists
2020 Cloudera Data Impact Awards FinalistsCloudera, Inc.
 
Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...
Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...
Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...VoltDB
 
How to get Real-Time Value from your IoT Data - Datastax
How to get Real-Time Value from your IoT Data - DatastaxHow to get Real-Time Value from your IoT Data - Datastax
How to get Real-Time Value from your IoT Data - DatastaxDataStax
 
The Power Of Snowflake for SAP BusinessObjects
The Power Of Snowflake for SAP BusinessObjectsThe Power Of Snowflake for SAP BusinessObjects
The Power Of Snowflake for SAP BusinessObjectsWiiisdom
 
ML Infra @ Spotify: Lessons Learned - Romain Yon - NYC ML Meetup
ML Infra @ Spotify: Lessons Learned - Romain Yon -  NYC ML MeetupML Infra @ Spotify: Lessons Learned - Romain Yon -  NYC ML Meetup
ML Infra @ Spotify: Lessons Learned - Romain Yon - NYC ML MeetupRomain Yon
 
Big Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetu
Big Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetuBig Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetu
Big Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetuEmre Sevinç
 
Making the most of your Snowflake Investment
Making the most of your Snowflake InvestmentMaking the most of your Snowflake Investment
Making the most of your Snowflake InvestmentPaul Van Siclen
 
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...PivotalOpenSourceHub
 
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...PivotalOpenSourceHub
 

What's hot (20)

Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...
Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...
Turning Petabytes of Data into Profit with Hadoop for the World’s Biggest Ret...
 
MicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) CloudMicroStrategy on Amazon Web Services (AWS) Cloud
MicroStrategy on Amazon Web Services (AWS) Cloud
 
Flash session -goldengate--lht1053-lon
Flash session -goldengate--lht1053-lonFlash session -goldengate--lht1053-lon
Flash session -goldengate--lht1053-lon
 
Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360
Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360
Bank Struggles Along the Way for the Holy Grail of Personalization: Customer 360
 
How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...
How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...
How a Media Data Platform Drives Real-time Insights & Analytics using Apache ...
 
Foundational Strategies for Trusted Data: Getting Your Data to the Cloud
Foundational Strategies for Trusted Data: Getting Your Data to the CloudFoundational Strategies for Trusted Data: Getting Your Data to the Cloud
Foundational Strategies for Trusted Data: Getting Your Data to the Cloud
 
Big Data Paris - A Modern Enterprise Architecture
Big Data Paris - A Modern Enterprise ArchitectureBig Data Paris - A Modern Enterprise Architecture
Big Data Paris - A Modern Enterprise Architecture
 
Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...
Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...
Big Data Analytics: Reference Architectures and Case Studies by Serhiy Haziye...
 
The Manulife Journey
The Manulife JourneyThe Manulife Journey
The Manulife Journey
 
Big Data, Big Thinking: Untapped Opportunities
Big Data, Big Thinking: Untapped OpportunitiesBig Data, Big Thinking: Untapped Opportunities
Big Data, Big Thinking: Untapped Opportunities
 
Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE)
Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE) Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE)
Customer Event Hub – a modern Customer 360° view with DataStax Enterprise (DSE)
 
2020 Cloudera Data Impact Awards Finalists
2020 Cloudera Data Impact Awards Finalists2020 Cloudera Data Impact Awards Finalists
2020 Cloudera Data Impact Awards Finalists
 
Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...
Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...
Fast Data for Competitive Advantage: 4 Steps to Expand your Window of Opportu...
 
How to get Real-Time Value from your IoT Data - Datastax
How to get Real-Time Value from your IoT Data - DatastaxHow to get Real-Time Value from your IoT Data - Datastax
How to get Real-Time Value from your IoT Data - Datastax
 
The Power Of Snowflake for SAP BusinessObjects
The Power Of Snowflake for SAP BusinessObjectsThe Power Of Snowflake for SAP BusinessObjects
The Power Of Snowflake for SAP BusinessObjects
 
ML Infra @ Spotify: Lessons Learned - Romain Yon - NYC ML Meetup
ML Infra @ Spotify: Lessons Learned - Romain Yon -  NYC ML MeetupML Infra @ Spotify: Lessons Learned - Romain Yon -  NYC ML Meetup
ML Infra @ Spotify: Lessons Learned - Romain Yon - NYC ML Meetup
 
Big Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetu
Big Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetuBig Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetu
Big Data Governance in Hadoop Environments with Cloudera Navigatorfeb2017meetu
 
Making the most of your Snowflake Investment
Making the most of your Snowflake InvestmentMaking the most of your Snowflake Investment
Making the most of your Snowflake Investment
 
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
 
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
 

Similar to Breaking Down a SQL Monolith with Change Tracking, Kafka and KStreams/KSQL

データベースMeetup Vol3
データベースMeetup Vol3データベースMeetup Vol3
データベースMeetup Vol3Koji Shinkubo
 
SAP HANA SPS09 - Full-text Search
SAP HANA SPS09 - Full-text SearchSAP HANA SPS09 - Full-text Search
SAP HANA SPS09 - Full-text SearchSAP Technology
 
SAP Analytics Overview and Strategy
SAP Analytics Overview and StrategySAP Analytics Overview and Strategy
SAP Analytics Overview and StrategyGuenter Plahl
 
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)Twan van den Broek
 
SAP HANA SPS09 - SQLScript
SAP HANA SPS09 - SQLScriptSAP HANA SPS09 - SQLScript
SAP HANA SPS09 - SQLScriptSAP Technology
 
SAP Cloud Platform x Microsoft Graph
SAP Cloud Platform x Microsoft GraphSAP Cloud Platform x Microsoft Graph
SAP Cloud Platform x Microsoft GraphMarius Obert
 
SAP HANA SPS09 - SAP River
SAP HANA SPS09 - SAP RiverSAP HANA SPS09 - SAP River
SAP HANA SPS09 - SAP RiverSAP Technology
 
Dmm212 – Sap Hana Graph Processing
Dmm212 – Sap Hana  Graph ProcessingDmm212 – Sap Hana  Graph Processing
Dmm212 – Sap Hana Graph ProcessingLuc Vanrobays
 
HANA SPS07 Smart Data Access
HANA SPS07 Smart Data AccessHANA SPS07 Smart Data Access
HANA SPS07 Smart Data AccessSAP Technology
 
#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...
#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...
#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...SAP Analytics
 
SAP Lambda Architecture Point of View
SAP Lambda Architecture Point of ViewSAP Lambda Architecture Point of View
SAP Lambda Architecture Point of ViewSnehanshu Shah
 
02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf
02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf
02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdfdiamondfire201
 
SAP HANA Cloud Platform - The big picture
SAP HANA Cloud Platform - The big picture SAP HANA Cloud Platform - The big picture
SAP HANA Cloud Platform - The big picture Matthias Steiner
 
SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)
SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)
SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)Paul Marriott
 
#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...
#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...
#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...SAP Analytics
 
C13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto Sugishita
C13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto SugishitaC13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto Sugishita
C13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto SugishitaInsight Technology, Inc.
 
Microservices without PaaS is like Bavaria without Beer
Microservices without PaaS is like Bavaria without BeerMicroservices without PaaS is like Bavaria without Beer
Microservices without PaaS is like Bavaria without BeerJohannes Engelke
 
Supplier Integration to Ariba Network: Cloud Integration Gateway
Supplier Integration to Ariba Network: Cloud Integration GatewaySupplier Integration to Ariba Network: Cloud Integration Gateway
Supplier Integration to Ariba Network: Cloud Integration GatewaySAP Ariba
 
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...Luc Vanrobays
 

Similar to Breaking Down a SQL Monolith with Change Tracking, Kafka and KStreams/KSQL (20)

データベースMeetup Vol3
データベースMeetup Vol3データベースMeetup Vol3
データベースMeetup Vol3
 
SAP HANA SPS09 - Full-text Search
SAP HANA SPS09 - Full-text SearchSAP HANA SPS09 - Full-text Search
SAP HANA SPS09 - Full-text Search
 
SAP Analytics Overview and Strategy
SAP Analytics Overview and StrategySAP Analytics Overview and Strategy
SAP Analytics Overview and Strategy
 
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
 
SAP HANA SPS09 - SQLScript
SAP HANA SPS09 - SQLScriptSAP HANA SPS09 - SQLScript
SAP HANA SPS09 - SQLScript
 
SAP Cloud Platform x Microsoft Graph
SAP Cloud Platform x Microsoft GraphSAP Cloud Platform x Microsoft Graph
SAP Cloud Platform x Microsoft Graph
 
SAP HANA SPS09 - SAP River
SAP HANA SPS09 - SAP RiverSAP HANA SPS09 - SAP River
SAP HANA SPS09 - SAP River
 
Dmm212 – Sap Hana Graph Processing
Dmm212 – Sap Hana  Graph ProcessingDmm212 – Sap Hana  Graph Processing
Dmm212 – Sap Hana Graph Processing
 
HANA SPS07 Smart Data Access
HANA SPS07 Smart Data AccessHANA SPS07 Smart Data Access
HANA SPS07 Smart Data Access
 
#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...
#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...
#askSAP Analytics Innovations Community Call: Reimagine Analytics for the Dig...
 
SAP Lambda Architecture Point of View
SAP Lambda Architecture Point of ViewSAP Lambda Architecture Point of View
SAP Lambda Architecture Point of View
 
02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf
02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf
02_SAP_S4HANA_Value_Roadmap_Next_Generation_Suite2.pdf
 
SAP HANA Cloud Platform - The big picture
SAP HANA Cloud Platform - The big picture SAP HANA Cloud Platform - The big picture
SAP HANA Cloud Platform - The big picture
 
Unleash_PA_on_HANA
Unleash_PA_on_HANAUnleash_PA_on_HANA
Unleash_PA_on_HANA
 
SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)
SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)
SAP HANA Adoption Press Briefing Japan (Paul Marriott @pmmarriott, Paul Young)
 
#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...
#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...
#asksap Analytics Innovations Community Call: SAP BW/4HANA - the Big Data War...
 
C13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto Sugishita
C13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto SugishitaC13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto Sugishita
C13,C33,A35 アプリケーション開発プラットフォームとしてのSAP HANA by Makoto Sugishita
 
Microservices without PaaS is like Bavaria without Beer
Microservices without PaaS is like Bavaria without BeerMicroservices without PaaS is like Bavaria without Beer
Microservices without PaaS is like Bavaria without Beer
 
Supplier Integration to Ariba Network: Cloud Integration Gateway
Supplier Integration to Ariba Network: Cloud Integration GatewaySupplier Integration to Ariba Network: Cloud Integration Gateway
Supplier Integration to Ariba Network: Cloud Integration Gateway
 
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
 

More from confluent

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flinkconfluent
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsconfluent
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flinkconfluent
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...confluent
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluentconfluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkconfluent
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloudconfluent
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Diveconfluent
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluentconfluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Meshconfluent
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservicesconfluent
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3confluent
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernizationconfluent
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataconfluent
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2confluent
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023confluent
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesisconfluent
 
The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023confluent
 
The Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streamsconfluent
 

More from confluent (20)

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
 
The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023
 
The Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streams
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 

Breaking Down a SQL Monolith with Change Tracking, Kafka and KStreams/KSQL

  • 1. Wanny Morellato, SAP Concur
 Director of Engineering
 October 16, 2018 Breaking Down A SQL Monolith
 with Change Tracking, Kafka and KStreams / KSQL
  • 2. NOTE: Delete the yellow stickers when finished. Samples of a title slide with a pictogram are also available in this template. See SAP Image Library for other available images you can sort using the drop down menu and selecting illustration options. Wanny Morellato
 Director of Engineering @ SAP Concur @mrwanny Wanny.Morellato@sap.com #I am Hiring
  • 3. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "3 Agenda
  • 4. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "4 The Why MTTRHealth Scale
  • 5. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "5 The What ReadsReads + Writes
  • 6. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "6 The What Reads + WritesReads
  • 7. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "7 The How Change Tracking Kafka Connect Kafka Topic Kafka Streams Micro Service
  • 8. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "8 MSSQL Change Tracking SELECT CT.user_id, U.uuid user_uuid,
 U.is_active is_active, CT.SYS_CHANGE_VERSION, CASE CT.SYS_CHANGE_OPERATION WHEN 'I' THEN 'UserCreated' WHEN 'U' THEN 'UserUpdated' WHEN 'D' THEN 'UserDeleted' END CT.SYS_CHANGE_COLUMNS FROM CHANGETABLE( CHANGES [dbo]. [users], @last_version ) AS CT LEFT OUTER JOIN [dbo].[users] AS U WITH (NOLOCK) ON CT.user_id = U.user_id WHERE CT.SYS_CHANGE_VERSION < @max_version ORDER BY CT.SYS_CHANGE_VERSION
  • 9. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "9 Kafka Connect public class MssqlSourceTask extends SourceTask { @Override public List<SourceRecord> poll() { ResultSet result = stmt.executeQuery(); return convert(result); }
  • 10. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "10 Kafka Topic • One Topic per Table • Partition Size aligns to the Table change rate • Consistent Hashing partitioning based on a Table unique key • Replication Factor : 3 • Min InSync Replica : 2
  • 11. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "11 Kafka KSQL CREATE TABLE users (user_id VARCHAR, user_uuid VARCHAR, is_active BOOLEAN, . . . ) WITH (KAFKA_TOPIC='users', VALUE_FORMAT='JSON', KEY = ‘user_uuid') WHERE is_active = 'true' ;
  • 12. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "12 Kafka Stream Topology topology = new Topology(); topologyBuilder .addSource("SOURCE", stringDeserializer, deserializer, getTopic()) .addProcessor("FILTER",getFilter(),"SOURCE") .addProcessor("PROCESSOR", getWebhookProcessor(), "FILTER") .addSink(“SINK",getDeadLetterTopic(),serializer,"PROCESSOR"); StreamsConfig config = new StreamsConfig(env.getStreamProperties()); KafkaStreams streaming = new KafkaStreams(topology, config); streaming.start();
  • 13. © 2018 SAP SE or an SAP affiliate company. All rights reserved. ǀ "13 Summary Change Tracking Kafka Connect Kafka Topic Kafka Streams Micro Service
  • 14. Thank You. Contact information: Wanny Morellato Director of Engineering SAP Concur @mrwanny Wanny.Morellato@sap.com
  • 15. © 2018 SAP SE or an SAP affiliate company. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an SAP affiliate company. The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors. National product specifications may vary. These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, and they should not be relied upon in making purchasing decisions. SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names mentioned are the trademarks of their respective companies. See www.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices. Learn more at concur.com Follow all of SAP Concur