SlideShare a Scribd company logo
1 of 50
Download to read offline
©Continuent 2014
Replicate from Oracle to Oracle,
Oracle to MySQL
and Oracle to Analytics
MC Brown, Dir. of Product Management
Linas Virbalas, Senior Software Engineer
©Continuent 2014
Introducing Continuent
2
• The leading provider of clustering and
replication for open source DBMS
• Our Product: Continuent Tungsten
• Clustering - Commercial-grade HA, performance
scaling and data management for MySQL
• Replication - Flexible, high-performance data
movement
©Continuent 2014
Quick Continuent Facts
• Largest Tungsten installation processes over
700 million transactions daily on 225
terabytes of data
• Tungsten Replicator was application of the
year at the 2011 MySQL User Conference
• Wide variety of topologies including MySQL,
Oracle, Vertica, and MongoDB are in
production now
• MySQL to Hadoop deployments are now in
progress with multiple customers
3
©Continuent 2014©Continuent 2014
Continuent Tungsten Customers
4
©Continuent 2014
Tungsten Replicator
5
Tungsten Replicator is a fast,
open source, database
replication engine
!
Designed for speed and flexibility	

GPLV2 license	

100% open source	

Annual support subscription available from Continuent
©Continuent 2014
Tungsten Master/Slave in Action
6
Master
(Transactions + Metadata)
Slave
THL
DBMS	

Logs
Replicator
(Transactions + Metadata)
THLReplicator
Download
transactions 	

via network
Apply using JDBC
©Continuent 2014
Master Replication Service
7
Extract Filter Apply
Stage
Extract Filter Apply
Stage
Pipeline
MySQL	

Master
Transaction	

History Log
In-Memory	

Queue
Slave 	

ReplicatorsBinlog
tcp/ip
©Continuent 2014
Slave Replication Service
8
Extract Filter Apply
Stage
Extract Filter Apply
Stage
Extract Filter Apply
Stage
Pipeline
Transaction	

History Log
In-Memory	

Queue
Slave	

DBMS
Master	

Replicator
tcp/ip
©Continuent 2014
Multiple Services per Replicator
Service
frommysql
Service
fromoracle
frommysql
fromoracle
Replicator
Replicator
Replicator
Aggregated
©Continuent 2014
star
master-slave Heterogeneous
fan-in slave all-masters
MySQL
Oracle
Oracle
MySQL Oracle
Oracle
MySQL MySQL
©Continuent 2014
Replicating from
Oracle to Oracle
©Continuent 2014©Continuent 2013
Steps to Homogeneous Replication
1. Restore backup on the slave
2. Set up replication
3. Continue real-time replication
Tungsten Replicator
tpmsetupCDC &
©Continuent 2014
Preparing CDC
13
Tables
Source schema
setupCDC
Oracle CDC
(Synchronous or
Async Hotlog)
Publisher schema
Change tables
Capture started at	

<setupCDC_SCN>
©Continuent 2014
CDC in Action
14
Source table X
Source schema
Oracle CDC
(Synchronous or
Async Hotlog)
Publisher schema
Change table X_CT
INSERT
UPDATE
DELETEx
SCN++
©Continuent 2014©Continuent 2013
Installation
15
./tools/tpm configure fromora 
--enable-heterogenous-service=true 
--user=oracle 
--install-directory=/opt/fromora/continuent 
--members=alhpa,beta 
--master=alpha
!
./tools/tpm configure fromora --hosts=alpha 
--datasource-type=oracle 
--user=oracle 
--datasource-oracle-service=ORCL 
--replication-user=DEMO_PUB 
--replication-password=DEMO_PUB 
--svc-table-engine=CDCASYNC 
--property=replicator.global.extract.db.user=tungsten 
--property=replicator.global.extract.db.password=secret
!
./tools/tpm configure fromora --hosts=beta 
--datasource-type=oracle 
--datasource-oracle-service=ORCL 
--replication-user=DEMO 
--replication-password=DEMO
!
./tools/tpm install fromora
./tools/tpm start fromora
©Continuent 2014
Deployment
16
Service
fromora
Tungsten Master
Replicator
Service
fromora
Tungsten Slave
Replicator
demo	

schema
demo_pub	

schema
Oracle CDC
(Synchronous or
Async Hotlog)
Tungsten Slave
Replicator
OracleApplierOracleCDCExtractor
©Continuent 2014©Continuent 2013
Heterogeneous
Replication
©Continuent 2014
Use Case: Web Content Publishing
Real-Time Publication
Backend Office Web-Based Catalog
©Continuent 2014©Continuent 2013
Steps to Heterogeneous Replication
1. Set up replication
2. Prepare (translate) schema for
the slave DBMS
3. Provision initial data



4. Continue real-time replication
ddlscan
Tungsten Replicator
Parallel ApplyParallel Extract &
tpmsetupCDC &
©Continuent 2014©Continuent 2013
1. Set Up Replication
©Continuent 2014
Preparing CDC
21
Tables
Source schema
setupCDC
Oracle CDC
(Synchronous or
Async Hotlog)
Publisher schema
Change tables
Capture started at	

<setupCDC_SCN>
SCN++
©Continuent 2014©Continuent 2013 22
./tools/tpm configure fromora 
--enable-heterogenous-service=true 
--user=oracle 
--install-directory=/opt/fromora/continuent 
--members=alhpa,beta 
--master=alpha
!
./tools/tpm configure fromora --hosts=alpha 
--datasource-type=oracle 
--user=oracle 
--datasource-oracle-service=ORCL 
--replication-user=DEMO_PUB 
--replication-password=DEMO_PUB 
--svc-table-engine=CDCASYNC 
--property=replicator.global.extract.db.user=tungsten 
--property=replicator.global.extract.db.password=secret 
--property=replicator.extractor.parallel-extractor.
ChunkDefinitionFile=/opt/fromora/chunks.csv
Oracle Master Part
©Continuent 2014©Continuent 2013
MySQL Slave Part
23
!
!
./tools/tpm configure fromora --hosts=beta 
--user=tungsten 
--replication-user=tungsten 
--replication-password=secret 
--svc-applier-filters=CDC,casetransform,rename 
--property=replicator.filter.CDC.from=DEMO_PUB.HEARTBEAT 
--property=replicator.filter.CDC.to=tungsten_fromora.heartbeat 
--property=replicator.filter.casetransform.to_upper_case=false 
--property=replicator.filter.rename.definitionsFile=
/opt/frommysql/rename.csv
!
./tools/tpm install fromora
#./tools/tpm start fromora
©Continuent 2014
Deployment
24
Service
fromoracle
Tungsten Master
Replicator
OracleCDCExtractor
No Special Filters
Service
fromoracle
Tungsten Slave
Replicator
Special Filters
•Map names to lower case
•Heartbeat table renaming
demo	

schema
demo_pub	

schema
Oracle CDC
(Synchronous or
Async Hotlog)
MySQLApplierOracleCDCExtractor
©Continuent 2014©Continuent 2013
2.Translating schema
for the slave
©Continuent 2014©Continuent 2013
Translating Schema
26
• Beginning - how to convert tables?
empty
Tables
•Data types?	

•Column lengths?	

•Naming conventions?	

•Reserved words?
ddlscan
©Continuent 2014©Continuent 2013
ddlscan
27
• Part of Tungsten Replicator, GPL v2
• Translates schema with replication in mind
• Provides errors and warnings
• Can rename schema/tables/columns
©Continuent 2014©Continuent 2013
Usage (Oracle to MySQL Example)
28
$ source continuent/share/env.sh
!
$ ddlscan 
-db DEMO 
-template ddl-oracle-mysql.vm
©Continuent 2014©Continuent 2013
Translating Schema
29
• ddlscan looks into source schema
Tables
empty
©Continuent 2014©Continuent 2013
Translating Schema
30
• ddlscan translates and renders DDL commands
mysql-ddl.sql
Tables
empty
©Continuent 2014©Continuent 2013
Result of ddlscan
31
DROP TABLE IF EXISTS demo.test;
CREATE TABLE demo.test
(
id1 INT /* NUMBER(10, ?) */ NOT NULL,
id2 INT /* NUMBER(10, ?) */ NOT NULL,
val TINYINT /* NUMBER(3, ?) */,
owner VARCHAR(30) /* VARCHAR2(30) */ NOT NULL,
created DATETIME /* DATE */ NOT NULL,
PRIMARY KEY (id1, id2) /* WARN: no PK found, using
suitable unique index instead: UQ_UK1 */
) ENGINE=InnoDB;
!
CREATE TABLE talks
...
©Continuent 2014©Continuent 2013
Translating Schema
32
• You run resulting SQL file on Oracle
mysql-ddl.sql
Tables
empty
©Continuent 2014©Continuent 2013
Translating Schema
33
• Tables are ready!
Translated tables

(no rows)
Tables
©Continuent 2014©Continuent 2013
Connecting the Dots
34
• Preparation completed
Translated tables

(no rows)
Tables Change	

tables
…
©Continuent 2014©Continuent 2013
3. Provisioning &
Replication
©Continuent 2014©Continuent 2013
Parallel Extractor
36
• replicator start # slave
• replicator start offline # master
• trepctl online -provision <setupCDC_SCN>
Tables
Service
fromoracle
Tungsten Master
Replicator
THL
ParallelExtractor
Thread 1
Thread 2
Thread 3
SELECT … AS OF
<setupCDC_SCN>
©Continuent 2014
Accelerate the Slave Provisioning
37
Extract Filter Apply
Stage
Extract Filter Apply
Stage
Stage
Pipeline
Remote	

Master
Transaction	

History Log
Parallel	

Queue
Slave	

DBMS
Extract Filter Apply
Extract Filter Apply
Extract Filter Apply
(Assign 	

Shard ID)
©Continuent 2014©Continuent 2013
Real-time Replication
38
• Automatically switches to real-time extraction
Service
fromoracle
Tungsten Master
Replicator
THL
Oracle CDC
(Synchronous or
Async Hotlog)
Change tables
>=$setupCDC_SCN
OracleCDCExtractor
Tables
©Continuent 2014
Replication to
Vertica and
Hadoop
©Continuent 2014
The Data Warehouse Impedance
Mismatch
40
Replication
CSV	

Files
CSV	

Files
Buffered
Transactions
Dump/load
Single
Transactions
Batches
©Continuent 2014
Column Store--Real-Time Batches
MySQL/Oracle Tungsten Master
Replicator
Service ora2vr
Special Filters	

* pkey - Fill in pkey info	

* colnames - Fill in names	

* replicate - Ignore tables
Tungsten Slave
Replicator
Service ora2vr
CSV	

Files
CSV	

Files
CSV	

Files
CSV	

Files
CSV	

Files
Large transaction
batches to leverage
load parallelization
©Continuent 2014
Batch Loading--The Gory Details
Replicator
Service ora2vr
Transactions
from master
CSV	

Files
CSV	

Files
CSV	

Files
Staging	

Tables
Staging	

Tables
Staging	

Tables
Base
Tables
Base
Tables
Base
Tables
Merge
Script
(or)	

COPY 	

directly to
base tables
COPY to
stage tables SELECT to
base tables
©Continuent 2014
Basic Hadoop Loading
MySQL/Oracle Tungsten Master
Replicator
hadoop
Master-Side Filtering	

* pkey - Fill in pkey info	

* colnames - Fill in names	

* replicate - Subset tables to
be replicated
Tungsten Slave
Replicator
hadoop
CSV	

Files
CSV	

Files
CSV	

Files
CSV	

Files
CSV	

Files
Hadoop	

Cluster
Extract from
source DBMS
Load raw CSV to HDFS
(e.g., via LOAD DATA to
Hive)
Access via Hive
©Continuent 2012
Provisioning plus Replication
44
MySQL/Oracle
Tungsten 3.0 Master
hadoop
Tungsten 3.0 Slave
hadoop
CSV	

Files
CSV	

Files
CSV	

Files
CSV	

FilesCSV
Apache Sqoop/ETL
Fast data filtering
Buffered	

CSV
Programmable 	

load scripts
Parallel apply
Parallel table
dumps
Low impact
extraction
©Continuent 2014
How the Materialization Works
45
Op
Seqn
o
ID Msg
I 1 1 Hello World!
I 2 2 Meet MC
D 3 1
I 3 1
Goodbye
World
Op Se
qn
ID Msg
I 2 2 Meet
MCI 3 1 Goodby
e World
©Continuent 2014
Tungsten Replicator 3.0 & Hadoop
46
• Extract from MySQL or Oracle
• Hadoop Support
• Provision using Sqoop or parallel extraction
• Schema generation for Hive
• Tools for generating materialized views
• Parallel CSV file loading
• Partition loaded data by commit time
• Schema Change Notification
©Continuent 2014
Continuent Hadoop Tools Roadmap:
Point in Time Table Generation
47
1 2 3 4 5 6 7 8 9
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
3
2
3
3
3
4
3
5
3
6
3
7
3
8
3
9
4
0
4
1
4
2
4
3
4
4
4
5
Monday Wednesday Friday
©Continuent 2014
Continuent Hadoop Tools Roadmap:
Time Series Generation
48
Op Seq
no
ID Date Msg
I 1 1 1/6/1
4
Hello World!
I 2 2 2/6/1
4
Meet MC
I 3 1 2/6/1
4
Goodbye
WorldI 4 1 3/6/1
4
Hello
TuesdayI 4 2 3/6/1
4
Ruby
WednesdayI 5 1 4/6/1
4
Final Count
ID Date Msg
1 1/6/14 Hello World!
1 2/6/14 Goodbye World
1 3/6/14 Hello Tuesday
1 4/6/14 Final Count
©Continuent 2014
Getting Started!
49
• Tungsten Replicator builds are available on
code.google.com
http://code.google.com/p/tungsten-replicator/
• Replicator documentation is available on Continuent
website
http://docs.continuent.com/tungsten-replicator-3.0/
deployment-hadoop.html
• Tungsten Hadoop tools are available on GitHub
https://github.com/continuent/continuent-tools-hadoop
Contact Continuent for support
©Continuent 2014
www.continuent.com	

Follow us on Twitter @continuent	

!
Tungsten Replicator:	

http://code.google.com/p/tungsten-replicator	

Our Blogs:
http://scale-out-blog.blogspot.com
http://datacharmer.org/blog
http://www.continuent.com/news/blogs
http://flyingclusters.blogspot.com/
560 S. Winchester Blvd., Suite 500
San Jose, CA 95128
Tel +1 (866) 998-3642
Fax +1 (408) 668-1009
e-mail: sales@continuent.com

More Related Content

What's hot

On The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterOn The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterSrihari Sriraman
 
Synchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDBSynchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDBGiuseppe Maxia
 
Oracle to Postgres Migration - part 2
Oracle to Postgres Migration - part 2Oracle to Postgres Migration - part 2
Oracle to Postgres Migration - part 2PgTraining
 
Oracle HA, DR, data warehouse loading, and license reduction through edge app...
Oracle HA, DR, data warehouse loading, and license reduction through edge app...Oracle HA, DR, data warehouse loading, and license reduction through edge app...
Oracle HA, DR, data warehouse loading, and license reduction through edge app...Continuent
 
Tungsten University: Configure & Provision Tungsten Clusters
Tungsten University: Configure & Provision Tungsten ClustersTungsten University: Configure & Provision Tungsten Clusters
Tungsten University: Configure & Provision Tungsten ClustersContinuent
 
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte DataProblems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte DataJignesh Shah
 
pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)
pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)
pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)Wei Shan Ang
 
Webinar Slides: Migrating to Galera Cluster
Webinar Slides: Migrating to Galera ClusterWebinar Slides: Migrating to Galera Cluster
Webinar Slides: Migrating to Galera ClusterSeveralnines
 
Tungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL DataTungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL DataContinuent
 
PostgreSQL Extensions: A deeper look
PostgreSQL Extensions:  A deeper lookPostgreSQL Extensions:  A deeper look
PostgreSQL Extensions: A deeper lookJignesh Shah
 
Migrating to XtraDB Cluster
Migrating to XtraDB ClusterMigrating to XtraDB Cluster
Migrating to XtraDB Clusterpercona2013
 
Tanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata MigrationsTanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata MigrationsTanel Poder
 
Streaming huge databases using logical decoding
Streaming huge databases using logical decodingStreaming huge databases using logical decoding
Streaming huge databases using logical decodingAlexander Shulgin
 
How Prometheus Store the Data
How Prometheus Store the DataHow Prometheus Store the Data
How Prometheus Store the DataHao Chen
 
3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北
3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北
3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北Ivan Tu
 
PostgreSQL Enterprise Class Features and Capabilities
PostgreSQL Enterprise Class Features and CapabilitiesPostgreSQL Enterprise Class Features and Capabilities
PostgreSQL Enterprise Class Features and CapabilitiesPGConf APAC
 
Big Data and PostgreSQL
Big Data and PostgreSQLBig Data and PostgreSQL
Big Data and PostgreSQLPGConf APAC
 
PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PGConf APAC
 
Percona XtraDB Cluster
Percona XtraDB ClusterPercona XtraDB Cluster
Percona XtraDB ClusterKenny Gryp
 
High Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando PatroniHigh Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando PatroniZalando Technology
 

What's hot (20)

On The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterOn The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL Cluster
 
Synchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDBSynchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDB
 
Oracle to Postgres Migration - part 2
Oracle to Postgres Migration - part 2Oracle to Postgres Migration - part 2
Oracle to Postgres Migration - part 2
 
Oracle HA, DR, data warehouse loading, and license reduction through edge app...
Oracle HA, DR, data warehouse loading, and license reduction through edge app...Oracle HA, DR, data warehouse loading, and license reduction through edge app...
Oracle HA, DR, data warehouse loading, and license reduction through edge app...
 
Tungsten University: Configure & Provision Tungsten Clusters
Tungsten University: Configure & Provision Tungsten ClustersTungsten University: Configure & Provision Tungsten Clusters
Tungsten University: Configure & Provision Tungsten Clusters
 
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte DataProblems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
 
pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)
pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)
pgDay Asia 2016 - Swapping Pacemaker-Corosync for repmgr (1)
 
Webinar Slides: Migrating to Galera Cluster
Webinar Slides: Migrating to Galera ClusterWebinar Slides: Migrating to Galera Cluster
Webinar Slides: Migrating to Galera Cluster
 
Tungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL DataTungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL Data
 
PostgreSQL Extensions: A deeper look
PostgreSQL Extensions:  A deeper lookPostgreSQL Extensions:  A deeper look
PostgreSQL Extensions: A deeper look
 
Migrating to XtraDB Cluster
Migrating to XtraDB ClusterMigrating to XtraDB Cluster
Migrating to XtraDB Cluster
 
Tanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata MigrationsTanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata Migrations
 
Streaming huge databases using logical decoding
Streaming huge databases using logical decodingStreaming huge databases using logical decoding
Streaming huge databases using logical decoding
 
How Prometheus Store the Data
How Prometheus Store the DataHow Prometheus Store the Data
How Prometheus Store the Data
 
3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北
3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北
3 周彦偉-隨需而變 我所經歷的my sql架構變遷﹣周彥偉﹣acmug@2015.12台北
 
PostgreSQL Enterprise Class Features and Capabilities
PostgreSQL Enterprise Class Features and CapabilitiesPostgreSQL Enterprise Class Features and Capabilities
PostgreSQL Enterprise Class Features and Capabilities
 
Big Data and PostgreSQL
Big Data and PostgreSQLBig Data and PostgreSQL
Big Data and PostgreSQL
 
PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs
 
Percona XtraDB Cluster
Percona XtraDB ClusterPercona XtraDB Cluster
Percona XtraDB Cluster
 
High Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando PatroniHigh Availability PostgreSQL with Zalando Patroni
High Availability PostgreSQL with Zalando Patroni
 

Similar to Replicate from Oracle to Oracle, Oracle to MySQL, and Oracle to analytics

Set Up & Operate Open Source Oracle Replication
Set Up & Operate Open Source Oracle ReplicationSet Up & Operate Open Source Oracle Replication
Set Up & Operate Open Source Oracle ReplicationContinuent
 
Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0
Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0
Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0Continuent
 
Set Up & Operate Tungsten Replicator
Set Up & Operate Tungsten ReplicatorSet Up & Operate Tungsten Replicator
Set Up & Operate Tungsten ReplicatorContinuent
 
Setup & Operate Tungsten Replicator
Setup & Operate Tungsten ReplicatorSetup & Operate Tungsten Replicator
Setup & Operate Tungsten ReplicatorContinuent
 
Replicating in Real-time from MySQL to Amazon Redshift
Replicating in Real-time from MySQL to Amazon RedshiftReplicating in Real-time from MySQL to Amazon Redshift
Replicating in Real-time from MySQL to Amazon RedshiftContinuent
 
Tungsten University: Introduction to Continuent Tungsten 2.0
Tungsten University: Introduction to Continuent Tungsten 2.0Tungsten University: Introduction to Continuent Tungsten 2.0
Tungsten University: Introduction to Continuent Tungsten 2.0Continuent
 
MySQL 5.7: Core Server Changes
MySQL 5.7: Core Server ChangesMySQL 5.7: Core Server Changes
MySQL 5.7: Core Server ChangesMorgan Tocker
 
M|18 Migrating from Oracle and Handling PL/SQL Stored Procedures
M|18 Migrating from Oracle and Handling PL/SQL Stored ProceduresM|18 Migrating from Oracle and Handling PL/SQL Stored Procedures
M|18 Migrating from Oracle and Handling PL/SQL Stored ProceduresMariaDB plc
 
Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18Wagner Bianchi
 
Scala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camouScala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camouJ On The Beach
 
Manual Tecnico OGG Oracle to MySQL
Manual Tecnico OGG Oracle to MySQLManual Tecnico OGG Oracle to MySQL
Manual Tecnico OGG Oracle to MySQLErick Vidbaz
 
9th docker meetup 2016.07.13
9th docker meetup 2016.07.139th docker meetup 2016.07.13
9th docker meetup 2016.07.13Amrita Prasad
 
MySQL Cluster Asynchronous replication (2014)
MySQL Cluster Asynchronous replication (2014) MySQL Cluster Asynchronous replication (2014)
MySQL Cluster Asynchronous replication (2014) Frazer Clement
 
Exploring plsql new features best practices september 2013
Exploring plsql new features best practices   september 2013Exploring plsql new features best practices   september 2013
Exploring plsql new features best practices september 2013Andrejs Vorobjovs
 
MySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdfMySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdfYunusShaikh49
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...Frank Munz
 
Tungsten University: Setup and Operate Tungsten Replicators
Tungsten University: Setup and Operate Tungsten ReplicatorsTungsten University: Setup and Operate Tungsten Replicators
Tungsten University: Setup and Operate Tungsten ReplicatorsContinuent
 
Tungsten University: Configure and provision Tungsten clusters
Tungsten University: Configure and provision Tungsten clustersTungsten University: Configure and provision Tungsten clusters
Tungsten University: Configure and provision Tungsten clustersContinuent
 

Similar to Replicate from Oracle to Oracle, Oracle to MySQL, and Oracle to analytics (20)

Set Up & Operate Open Source Oracle Replication
Set Up & Operate Open Source Oracle ReplicationSet Up & Operate Open Source Oracle Replication
Set Up & Operate Open Source Oracle Replication
 
Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0
Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0
Real-Time Data Loading from MySQL to Hadoop with New Tungsten Replicator 3.0
 
Set Up & Operate Tungsten Replicator
Set Up & Operate Tungsten ReplicatorSet Up & Operate Tungsten Replicator
Set Up & Operate Tungsten Replicator
 
Setup & Operate Tungsten Replicator
Setup & Operate Tungsten ReplicatorSetup & Operate Tungsten Replicator
Setup & Operate Tungsten Replicator
 
Replicating in Real-time from MySQL to Amazon Redshift
Replicating in Real-time from MySQL to Amazon RedshiftReplicating in Real-time from MySQL to Amazon Redshift
Replicating in Real-time from MySQL to Amazon Redshift
 
Tungsten University: Introduction to Continuent Tungsten 2.0
Tungsten University: Introduction to Continuent Tungsten 2.0Tungsten University: Introduction to Continuent Tungsten 2.0
Tungsten University: Introduction to Continuent Tungsten 2.0
 
MySQL Replication
MySQL ReplicationMySQL Replication
MySQL Replication
 
MySQL 5.7: Core Server Changes
MySQL 5.7: Core Server ChangesMySQL 5.7: Core Server Changes
MySQL 5.7: Core Server Changes
 
MySQL NoSQL APIs
MySQL NoSQL APIsMySQL NoSQL APIs
MySQL NoSQL APIs
 
M|18 Migrating from Oracle and Handling PL/SQL Stored Procedures
M|18 Migrating from Oracle and Handling PL/SQL Stored ProceduresM|18 Migrating from Oracle and Handling PL/SQL Stored Procedures
M|18 Migrating from Oracle and Handling PL/SQL Stored Procedures
 
Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18Migrations from PLSQL and Transact-SQL - m18
Migrations from PLSQL and Transact-SQL - m18
 
Scala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camouScala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camou
 
Manual Tecnico OGG Oracle to MySQL
Manual Tecnico OGG Oracle to MySQLManual Tecnico OGG Oracle to MySQL
Manual Tecnico OGG Oracle to MySQL
 
9th docker meetup 2016.07.13
9th docker meetup 2016.07.139th docker meetup 2016.07.13
9th docker meetup 2016.07.13
 
MySQL Cluster Asynchronous replication (2014)
MySQL Cluster Asynchronous replication (2014) MySQL Cluster Asynchronous replication (2014)
MySQL Cluster Asynchronous replication (2014)
 
Exploring plsql new features best practices september 2013
Exploring plsql new features best practices   september 2013Exploring plsql new features best practices   september 2013
Exploring plsql new features best practices september 2013
 
MySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdfMySQL HA Orchestrator Proxysql Consul.pdf
MySQL HA Orchestrator Proxysql Consul.pdf
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
 
Tungsten University: Setup and Operate Tungsten Replicators
Tungsten University: Setup and Operate Tungsten ReplicatorsTungsten University: Setup and Operate Tungsten Replicators
Tungsten University: Setup and Operate Tungsten Replicators
 
Tungsten University: Configure and provision Tungsten clusters
Tungsten University: Configure and provision Tungsten clustersTungsten University: Configure and provision Tungsten clusters
Tungsten University: Configure and provision Tungsten clusters
 

More from Continuent

Tungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and BeyondTungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and BeyondContinuent
 
Continuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition WebinarContinuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition WebinarContinuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControlWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControlContinuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterContinuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLContinuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterContinuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS AuroraWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS AuroraContinuent
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Continuent
 
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...Continuent
 
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent FailoverWebinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent FailoverContinuent
 
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Continuent
 
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten DashboardTraining Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten DashboardContinuent
 
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & KafkaTraining Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & KafkaContinuent
 
Training Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data WarehousesTraining Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data WarehousesContinuent
 
Training Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a ClusterTraining Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a ClusterContinuent
 
Training Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMITraining Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMIContinuent
 
Training Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMITraining Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMIContinuent
 
Training Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a ProTraining Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a ProContinuent
 
Training Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & TroubleshootingTraining Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & TroubleshootingContinuent
 
Training Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSLTraining Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSLContinuent
 

More from Continuent (20)

Tungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and BeyondTungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and Beyond
 
Continuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition WebinarContinuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition Webinar
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControlWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS AuroraWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
 
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
 
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent FailoverWebinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
 
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
 
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten DashboardTraining Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
 
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & KafkaTraining Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
 
Training Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data WarehousesTraining Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data Warehouses
 
Training Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a ClusterTraining Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a Cluster
 
Training Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMITraining Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMI
 
Training Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMITraining Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMI
 
Training Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a ProTraining Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a Pro
 
Training Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & TroubleshootingTraining Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & Troubleshooting
 
Training Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSLTraining Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSL
 

Recently uploaded

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 

Recently uploaded (20)

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 

Replicate from Oracle to Oracle, Oracle to MySQL, and Oracle to analytics

  • 1. ©Continuent 2014 Replicate from Oracle to Oracle, Oracle to MySQL and Oracle to Analytics MC Brown, Dir. of Product Management Linas Virbalas, Senior Software Engineer
  • 2. ©Continuent 2014 Introducing Continuent 2 • The leading provider of clustering and replication for open source DBMS • Our Product: Continuent Tungsten • Clustering - Commercial-grade HA, performance scaling and data management for MySQL • Replication - Flexible, high-performance data movement
  • 3. ©Continuent 2014 Quick Continuent Facts • Largest Tungsten installation processes over 700 million transactions daily on 225 terabytes of data • Tungsten Replicator was application of the year at the 2011 MySQL User Conference • Wide variety of topologies including MySQL, Oracle, Vertica, and MongoDB are in production now • MySQL to Hadoop deployments are now in progress with multiple customers 3
  • 5. ©Continuent 2014 Tungsten Replicator 5 Tungsten Replicator is a fast, open source, database replication engine ! Designed for speed and flexibility GPLV2 license 100% open source Annual support subscription available from Continuent
  • 6. ©Continuent 2014 Tungsten Master/Slave in Action 6 Master (Transactions + Metadata) Slave THL DBMS Logs Replicator (Transactions + Metadata) THLReplicator Download transactions via network Apply using JDBC
  • 7. ©Continuent 2014 Master Replication Service 7 Extract Filter Apply Stage Extract Filter Apply Stage Pipeline MySQL Master Transaction History Log In-Memory Queue Slave ReplicatorsBinlog tcp/ip
  • 8. ©Continuent 2014 Slave Replication Service 8 Extract Filter Apply Stage Extract Filter Apply Stage Extract Filter Apply Stage Pipeline Transaction History Log In-Memory Queue Slave DBMS Master Replicator tcp/ip
  • 9. ©Continuent 2014 Multiple Services per Replicator Service frommysql Service fromoracle frommysql fromoracle Replicator Replicator Replicator Aggregated
  • 10. ©Continuent 2014 star master-slave Heterogeneous fan-in slave all-masters MySQL Oracle Oracle MySQL Oracle Oracle MySQL MySQL
  • 12. ©Continuent 2014©Continuent 2013 Steps to Homogeneous Replication 1. Restore backup on the slave 2. Set up replication 3. Continue real-time replication Tungsten Replicator tpmsetupCDC &
  • 13. ©Continuent 2014 Preparing CDC 13 Tables Source schema setupCDC Oracle CDC (Synchronous or Async Hotlog) Publisher schema Change tables Capture started at <setupCDC_SCN>
  • 14. ©Continuent 2014 CDC in Action 14 Source table X Source schema Oracle CDC (Synchronous or Async Hotlog) Publisher schema Change table X_CT INSERT UPDATE DELETEx SCN++
  • 15. ©Continuent 2014©Continuent 2013 Installation 15 ./tools/tpm configure fromora --enable-heterogenous-service=true --user=oracle --install-directory=/opt/fromora/continuent --members=alhpa,beta --master=alpha ! ./tools/tpm configure fromora --hosts=alpha --datasource-type=oracle --user=oracle --datasource-oracle-service=ORCL --replication-user=DEMO_PUB --replication-password=DEMO_PUB --svc-table-engine=CDCASYNC --property=replicator.global.extract.db.user=tungsten --property=replicator.global.extract.db.password=secret ! ./tools/tpm configure fromora --hosts=beta --datasource-type=oracle --datasource-oracle-service=ORCL --replication-user=DEMO --replication-password=DEMO ! ./tools/tpm install fromora ./tools/tpm start fromora
  • 16. ©Continuent 2014 Deployment 16 Service fromora Tungsten Master Replicator Service fromora Tungsten Slave Replicator demo schema demo_pub schema Oracle CDC (Synchronous or Async Hotlog) Tungsten Slave Replicator OracleApplierOracleCDCExtractor
  • 18. ©Continuent 2014 Use Case: Web Content Publishing Real-Time Publication Backend Office Web-Based Catalog
  • 19. ©Continuent 2014©Continuent 2013 Steps to Heterogeneous Replication 1. Set up replication 2. Prepare (translate) schema for the slave DBMS 3. Provision initial data
 
 4. Continue real-time replication ddlscan Tungsten Replicator Parallel ApplyParallel Extract & tpmsetupCDC &
  • 21. ©Continuent 2014 Preparing CDC 21 Tables Source schema setupCDC Oracle CDC (Synchronous or Async Hotlog) Publisher schema Change tables Capture started at <setupCDC_SCN> SCN++
  • 22. ©Continuent 2014©Continuent 2013 22 ./tools/tpm configure fromora --enable-heterogenous-service=true --user=oracle --install-directory=/opt/fromora/continuent --members=alhpa,beta --master=alpha ! ./tools/tpm configure fromora --hosts=alpha --datasource-type=oracle --user=oracle --datasource-oracle-service=ORCL --replication-user=DEMO_PUB --replication-password=DEMO_PUB --svc-table-engine=CDCASYNC --property=replicator.global.extract.db.user=tungsten --property=replicator.global.extract.db.password=secret --property=replicator.extractor.parallel-extractor. ChunkDefinitionFile=/opt/fromora/chunks.csv Oracle Master Part
  • 23. ©Continuent 2014©Continuent 2013 MySQL Slave Part 23 ! ! ./tools/tpm configure fromora --hosts=beta --user=tungsten --replication-user=tungsten --replication-password=secret --svc-applier-filters=CDC,casetransform,rename --property=replicator.filter.CDC.from=DEMO_PUB.HEARTBEAT --property=replicator.filter.CDC.to=tungsten_fromora.heartbeat --property=replicator.filter.casetransform.to_upper_case=false --property=replicator.filter.rename.definitionsFile= /opt/frommysql/rename.csv ! ./tools/tpm install fromora #./tools/tpm start fromora
  • 24. ©Continuent 2014 Deployment 24 Service fromoracle Tungsten Master Replicator OracleCDCExtractor No Special Filters Service fromoracle Tungsten Slave Replicator Special Filters •Map names to lower case •Heartbeat table renaming demo schema demo_pub schema Oracle CDC (Synchronous or Async Hotlog) MySQLApplierOracleCDCExtractor
  • 26. ©Continuent 2014©Continuent 2013 Translating Schema 26 • Beginning - how to convert tables? empty Tables •Data types? •Column lengths? •Naming conventions? •Reserved words? ddlscan
  • 27. ©Continuent 2014©Continuent 2013 ddlscan 27 • Part of Tungsten Replicator, GPL v2 • Translates schema with replication in mind • Provides errors and warnings • Can rename schema/tables/columns
  • 28. ©Continuent 2014©Continuent 2013 Usage (Oracle to MySQL Example) 28 $ source continuent/share/env.sh ! $ ddlscan -db DEMO -template ddl-oracle-mysql.vm
  • 29. ©Continuent 2014©Continuent 2013 Translating Schema 29 • ddlscan looks into source schema Tables empty
  • 30. ©Continuent 2014©Continuent 2013 Translating Schema 30 • ddlscan translates and renders DDL commands mysql-ddl.sql Tables empty
  • 31. ©Continuent 2014©Continuent 2013 Result of ddlscan 31 DROP TABLE IF EXISTS demo.test; CREATE TABLE demo.test ( id1 INT /* NUMBER(10, ?) */ NOT NULL, id2 INT /* NUMBER(10, ?) */ NOT NULL, val TINYINT /* NUMBER(3, ?) */, owner VARCHAR(30) /* VARCHAR2(30) */ NOT NULL, created DATETIME /* DATE */ NOT NULL, PRIMARY KEY (id1, id2) /* WARN: no PK found, using suitable unique index instead: UQ_UK1 */ ) ENGINE=InnoDB; ! CREATE TABLE talks ...
  • 32. ©Continuent 2014©Continuent 2013 Translating Schema 32 • You run resulting SQL file on Oracle mysql-ddl.sql Tables empty
  • 33. ©Continuent 2014©Continuent 2013 Translating Schema 33 • Tables are ready! Translated tables
 (no rows) Tables
  • 34. ©Continuent 2014©Continuent 2013 Connecting the Dots 34 • Preparation completed Translated tables
 (no rows) Tables Change tables …
  • 35. ©Continuent 2014©Continuent 2013 3. Provisioning & Replication
  • 36. ©Continuent 2014©Continuent 2013 Parallel Extractor 36 • replicator start # slave • replicator start offline # master • trepctl online -provision <setupCDC_SCN> Tables Service fromoracle Tungsten Master Replicator THL ParallelExtractor Thread 1 Thread 2 Thread 3 SELECT … AS OF <setupCDC_SCN>
  • 37. ©Continuent 2014 Accelerate the Slave Provisioning 37 Extract Filter Apply Stage Extract Filter Apply Stage Stage Pipeline Remote Master Transaction History Log Parallel Queue Slave DBMS Extract Filter Apply Extract Filter Apply Extract Filter Apply (Assign Shard ID)
  • 38. ©Continuent 2014©Continuent 2013 Real-time Replication 38 • Automatically switches to real-time extraction Service fromoracle Tungsten Master Replicator THL Oracle CDC (Synchronous or Async Hotlog) Change tables >=$setupCDC_SCN OracleCDCExtractor Tables
  • 40. ©Continuent 2014 The Data Warehouse Impedance Mismatch 40 Replication CSV Files CSV Files Buffered Transactions Dump/load Single Transactions Batches
  • 41. ©Continuent 2014 Column Store--Real-Time Batches MySQL/Oracle Tungsten Master Replicator Service ora2vr Special Filters * pkey - Fill in pkey info * colnames - Fill in names * replicate - Ignore tables Tungsten Slave Replicator Service ora2vr CSV Files CSV Files CSV Files CSV Files CSV Files Large transaction batches to leverage load parallelization
  • 42. ©Continuent 2014 Batch Loading--The Gory Details Replicator Service ora2vr Transactions from master CSV Files CSV Files CSV Files Staging Tables Staging Tables Staging Tables Base Tables Base Tables Base Tables Merge Script (or) COPY directly to base tables COPY to stage tables SELECT to base tables
  • 43. ©Continuent 2014 Basic Hadoop Loading MySQL/Oracle Tungsten Master Replicator hadoop Master-Side Filtering * pkey - Fill in pkey info * colnames - Fill in names * replicate - Subset tables to be replicated Tungsten Slave Replicator hadoop CSV Files CSV Files CSV Files CSV Files CSV Files Hadoop Cluster Extract from source DBMS Load raw CSV to HDFS (e.g., via LOAD DATA to Hive) Access via Hive
  • 44. ©Continuent 2012 Provisioning plus Replication 44 MySQL/Oracle Tungsten 3.0 Master hadoop Tungsten 3.0 Slave hadoop CSV Files CSV Files CSV Files CSV FilesCSV Apache Sqoop/ETL Fast data filtering Buffered CSV Programmable load scripts Parallel apply Parallel table dumps Low impact extraction
  • 45. ©Continuent 2014 How the Materialization Works 45 Op Seqn o ID Msg I 1 1 Hello World! I 2 2 Meet MC D 3 1 I 3 1 Goodbye World Op Se qn ID Msg I 2 2 Meet MCI 3 1 Goodby e World
  • 46. ©Continuent 2014 Tungsten Replicator 3.0 & Hadoop 46 • Extract from MySQL or Oracle • Hadoop Support • Provision using Sqoop or parallel extraction • Schema generation for Hive • Tools for generating materialized views • Parallel CSV file loading • Partition loaded data by commit time • Schema Change Notification
  • 47. ©Continuent 2014 Continuent Hadoop Tools Roadmap: Point in Time Table Generation 47 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 4 4 5 Monday Wednesday Friday
  • 48. ©Continuent 2014 Continuent Hadoop Tools Roadmap: Time Series Generation 48 Op Seq no ID Date Msg I 1 1 1/6/1 4 Hello World! I 2 2 2/6/1 4 Meet MC I 3 1 2/6/1 4 Goodbye WorldI 4 1 3/6/1 4 Hello TuesdayI 4 2 3/6/1 4 Ruby WednesdayI 5 1 4/6/1 4 Final Count ID Date Msg 1 1/6/14 Hello World! 1 2/6/14 Goodbye World 1 3/6/14 Hello Tuesday 1 4/6/14 Final Count
  • 49. ©Continuent 2014 Getting Started! 49 • Tungsten Replicator builds are available on code.google.com http://code.google.com/p/tungsten-replicator/ • Replicator documentation is available on Continuent website http://docs.continuent.com/tungsten-replicator-3.0/ deployment-hadoop.html • Tungsten Hadoop tools are available on GitHub https://github.com/continuent/continuent-tools-hadoop Contact Continuent for support
  • 50. ©Continuent 2014 www.continuent.com Follow us on Twitter @continuent ! Tungsten Replicator: http://code.google.com/p/tungsten-replicator Our Blogs: http://scale-out-blog.blogspot.com http://datacharmer.org/blog http://www.continuent.com/news/blogs http://flyingclusters.blogspot.com/ 560 S. Winchester Blvd., Suite 500 San Jose, CA 95128 Tel +1 (866) 998-3642 Fax +1 (408) 668-1009 e-mail: sales@continuent.com