SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
Flexible Heterogenous
                                    Replication
                                        Je! Mace



   ©Continuent 2012.


Thursday, June 28, 12
Overview

                        •   Introducing Tungsten Replicator

                        •   Installation

                        •   Demo

                        •   Next Steps




   ©Continuent 2012                            2


Thursday, June 28, 12
Introducing Tungsten Replicator

                        •   Alternative to MySQL replication

                        •   Still requires binary logs

                        •   Crash-safe with ACID storage engines

                        •   Compatible across branches and versions

                        •   Provides heterogenous replication

                        •   100% GPL v2




   ©Continuent 2012                               3


Thursday, June 28, 12
Break speed limits




   ©Continuent 2012                 4


Thursday, June 28, 12
Break speed limits




   ©Continuent 2012
                        ✗           4


Thursday, June 28, 12
Replicate from many masters




   ©Continuent 2012             5


Thursday, June 28, 12
Replication Pipeline

                                                Pipeline
                        Stage                    Stage                    Stage
           Extract Filter       Apply    Extract Filter   Apply    Extract Filter   Apply




            Master                Transaction                In-Memory              Slave
            DBMS                  History Log                  Queue                DBMS




   ©Continuent 2012                                 6


Thursday, June 28, 12
Heterogenous Replication

                        •   Row replication

                        •   DDL must be compatible

                        •   Create schema ahead of time on the slave

                        •   Primary Keys on every table




   ©Continuent 2012                            7


Thursday, June 28, 12
Installing Tungsten

                        •   tungsten-installer

                        •   Written in Ruby

                        •   Simple installation using SSH between
                            database servers

                        •   Validates prior to installation




   ©Continuent 2012                              8


Thursday, June 28, 12
Installing a MySQL Master
       tools/tungsten-installer --master-slave -a 
       --cluster-hosts=my1 
       --home-directory=/opt/continuent 
       --datasource-type=mysql 
       --master-host=my1 
       --datasource-user=tungsten 
       --datasource-password=secret 
       --service-name=mongodb 
       --mysql-use-bytes-for-string=false 
       --svc-extractor-filters=colnames,pkey 
       --datasource-log-directory=/var/lib/mysql 
       --datasource-log-pattern=mysql-bin 
       --datasource-mysql-conf=/etc/mysql/my.cnf 
       --start-and-report




   ©Continuent 2012                  9


Thursday, June 28, 12
Installing a MongoDB Slave
       tools/tungsten-installer --master-slave -a 
       --cluster-hosts=mon2 
       --home-directory=/opt/continuent 
       --datasource-type=mongodb 
       --master-host=my1 
       --datasource-user=tungsten 
       --datasource-password=secret 
       --service-name=mongodb 
       --property=replicator.pipeline.slave.services="" 
       --skip-validation-check=InstallerMasterSlaveCheck 
       --start-and-report




   ©Continuent 2012                  10


Thursday, June 28, 12
Installing a PostgreSQL Slave
       tools/tungsten-installer --master-slave -a 
       --cluster-hosts=pg3 
       --home-directory=/var/lib/postgresql/continuent 
       --datasource-type=postgresql 
       --master-host=my1 
       --datasource-user=postgres 
       --datasource-password=secret 
       --service-name=mongodb 
       --skip-validation-check=InstallerMasterSlaveCheck 
       --user=postgres 
       --postgresql-dbname=postgres 
       --start-and-report




   ©Continuent 2012                  11


Thursday, June 28, 12
Demo




   ©Continuent 2012     12


Thursday, June 28, 12
Supported slave databases

                        •   MySQL

                        •   PostgreSQL

                        •   Oracle

                        •   MongoDB

                        •   Vertica




   ©Continuent 2012                      13


Thursday, June 28, 12
Supported master databases

                        •   MySQL

                        •   PostgreSQL (Experimental)

                        •   Oracle (Commercial)




   ©Continuent 2012                           14


Thursday, June 28, 12
Next Steps

                        •   Test in your environment

                        •   Sponsor support for new database types

                        •   Looking for sponsorship to build out a
                            provisioning framework

                        •   Contact us with questions




   ©Continuent 2012                             15


Thursday, June 28, 12
We’re Hiring

                        •   Cluster Implementation Engineer

                        •   QA Engineer

                        •   Technical Writer




   ©Continuent 2012                            16


Thursday, June 28, 12
Jeff Mace
            jeff.mace@continuent.com
            sales@continuent.com
            560 S. Winchester Blvd. Suite 500
            San Jose, CA 95128
            Tel (866) 998-3642
            Fax (408) 668-1009


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

   ©Continuent 2012                             17


Thursday, June 28, 12

Contenu connexe

Tendances

Tendances (6)

MySQL Cluster 8.0 tutorial text
MySQL Cluster 8.0 tutorial textMySQL Cluster 8.0 tutorial text
MySQL Cluster 8.0 tutorial text
 
GlassFish v2.1
GlassFish v2.1GlassFish v2.1
GlassFish v2.1
 
Netbackup training-course-navi-mumbai-netbackup-course-provider-navi-mumbai
Netbackup training-course-navi-mumbai-netbackup-course-provider-navi-mumbaiNetbackup training-course-navi-mumbai-netbackup-course-provider-navi-mumbai
Netbackup training-course-navi-mumbai-netbackup-course-provider-navi-mumbai
 
Java & containers: What I wish I knew before I used it | DevNation Tech Talk
Java & containers: What I wish I knew before I used it | DevNation Tech TalkJava & containers: What I wish I knew before I used it | DevNation Tech Talk
Java & containers: What I wish I knew before I used it | DevNation Tech Talk
 
Cassandra at scale
Cassandra at scaleCassandra at scale
Cassandra at scale
 
mysql 5.5.25 用户安装备忘
mysql 5.5.25 用户安装备忘mysql 5.5.25 用户安装备忘
mysql 5.5.25 用户安装备忘
 

Similaire à Flexible heterogenous replication

Disaster Recovery with MySQL and Tungsten
Disaster Recovery with MySQL and TungstenDisaster Recovery with MySQL and Tungsten
Disaster Recovery with MySQL and Tungsten
Jeff Mace
 
Sqlsat154 maintain your dbs with help from ola hallengren
Sqlsat154 maintain your dbs with help from ola hallengrenSqlsat154 maintain your dbs with help from ola hallengren
Sqlsat154 maintain your dbs with help from ola hallengren
Andy Galbraith
 
DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...
DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...
DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...
DataStax
 
PoPostgreSQL Web Projects: From Start to FinishStart To Finish
PoPostgreSQL Web Projects: From Start to FinishStart To FinishPoPostgreSQL Web Projects: From Start to FinishStart To Finish
PoPostgreSQL Web Projects: From Start to FinishStart To Finish
elliando dias
 
Replication features, technologies and 3rd party Extinction
Replication features, technologies and 3rd party ExtinctionReplication features, technologies and 3rd party Extinction
Replication features, technologies and 3rd party Extinction
Ben Mildren
 
Database Performance With Proxy Architectures
Database  Performance With  Proxy  ArchitecturesDatabase  Performance With  Proxy  Architectures
Database Performance With Proxy Architectures
PerconaPerformance
 
Consolidated shared indexes in real time
Consolidated shared indexes in real timeConsolidated shared indexes in real time
Consolidated shared indexes in real time
Jeff Mace
 
An Introduction to Cassandra on Linux
An Introduction to Cassandra on LinuxAn Introduction to Cassandra on Linux
An Introduction to Cassandra on Linux
nickmbailey
 
Memcachedb: The Complete Guide
Memcachedb: The Complete GuideMemcachedb: The Complete Guide
Memcachedb: The Complete Guide
elliando dias
 

Similaire à Flexible heterogenous replication (20)

Solving MySQL replication problems with Tungsten
Solving MySQL replication problems with TungstenSolving MySQL replication problems with Tungsten
Solving MySQL replication problems with Tungsten
 
State of the art of MySQL replication and clustering
State of the art of MySQL replication and clusteringState of the art of MySQL replication and clustering
State of the art of MySQL replication and clustering
 
MetaZeta Clusters Overview
MetaZeta Clusters OverviewMetaZeta Clusters Overview
MetaZeta Clusters Overview
 
Disaster Recovery with MySQL and Tungsten
Disaster Recovery with MySQL and TungstenDisaster Recovery with MySQL and Tungsten
Disaster Recovery with MySQL and Tungsten
 
Implementing the Future of PostgreSQL Clustering with Tungsten
Implementing the Future of PostgreSQL Clustering with TungstenImplementing the Future of PostgreSQL Clustering with Tungsten
Implementing the Future of PostgreSQL Clustering with Tungsten
 
Into the Wild with Node.js and Web Apps
Into the Wild with Node.js and Web AppsInto the Wild with Node.js and Web Apps
Into the Wild with Node.js and Web Apps
 
Tungsten Replicator tutorial
Tungsten Replicator tutorialTungsten Replicator tutorial
Tungsten Replicator tutorial
 
Sqlsat154 maintain your dbs with help from ola hallengren
Sqlsat154 maintain your dbs with help from ola hallengrenSqlsat154 maintain your dbs with help from ola hallengren
Sqlsat154 maintain your dbs with help from ola hallengren
 
DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...
DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...
DataStax | Effective Testing in DSE (Lessons Learned) (Predrag Knezevic) | Ca...
 
Effective Testing in DSE
Effective Testing in DSEEffective Testing in DSE
Effective Testing in DSE
 
PoPostgreSQL Web Projects: From Start to FinishStart To Finish
PoPostgreSQL Web Projects: From Start to FinishStart To FinishPoPostgreSQL Web Projects: From Start to FinishStart To Finish
PoPostgreSQL Web Projects: From Start to FinishStart To Finish
 
Infosys Ltd: Performance Tuning - A Key to Successful Cassandra Migration
Infosys Ltd: Performance Tuning - A Key to Successful Cassandra MigrationInfosys Ltd: Performance Tuning - A Key to Successful Cassandra Migration
Infosys Ltd: Performance Tuning - A Key to Successful Cassandra Migration
 
Replication features, technologies and 3rd party Extinction
Replication features, technologies and 3rd party ExtinctionReplication features, technologies and 3rd party Extinction
Replication features, technologies and 3rd party Extinction
 
Database Performance With Proxy Architectures
Database  Performance With  Proxy  ArchitecturesDatabase  Performance With  Proxy  Architectures
Database Performance With Proxy Architectures
 
MySQL high availability power and usability
MySQL high availability power and usabilityMySQL high availability power and usability
MySQL high availability power and usability
 
Consolidated shared indexes in real time
Consolidated shared indexes in real timeConsolidated shared indexes in real time
Consolidated shared indexes in real time
 
Building infrastructure for Big Data
Building infrastructure for Big DataBuilding infrastructure for Big Data
Building infrastructure for Big Data
 
An Introduction to Cassandra on Linux
An Introduction to Cassandra on LinuxAn Introduction to Cassandra on Linux
An Introduction to Cassandra on Linux
 
WillMicroserviceDie.pdf
WillMicroserviceDie.pdfWillMicroserviceDie.pdf
WillMicroserviceDie.pdf
 
Memcachedb: The Complete Guide
Memcachedb: The Complete GuideMemcachedb: The Complete Guide
Memcachedb: The Complete Guide
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
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
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Flexible heterogenous replication

  • 1. Flexible Heterogenous Replication Je! Mace ©Continuent 2012. Thursday, June 28, 12
  • 2. Overview • Introducing Tungsten Replicator • Installation • Demo • Next Steps ©Continuent 2012 2 Thursday, June 28, 12
  • 3. Introducing Tungsten Replicator • Alternative to MySQL replication • Still requires binary logs • Crash-safe with ACID storage engines • Compatible across branches and versions • Provides heterogenous replication • 100% GPL v2 ©Continuent 2012 3 Thursday, June 28, 12
  • 4. Break speed limits ©Continuent 2012 4 Thursday, June 28, 12
  • 5. Break speed limits ©Continuent 2012 ✗ 4 Thursday, June 28, 12
  • 6. Replicate from many masters ©Continuent 2012 5 Thursday, June 28, 12
  • 7. Replication Pipeline Pipeline Stage Stage Stage Extract Filter Apply Extract Filter Apply Extract Filter Apply Master Transaction In-Memory Slave DBMS History Log Queue DBMS ©Continuent 2012 6 Thursday, June 28, 12
  • 8. Heterogenous Replication • Row replication • DDL must be compatible • Create schema ahead of time on the slave • Primary Keys on every table ©Continuent 2012 7 Thursday, June 28, 12
  • 9. Installing Tungsten • tungsten-installer • Written in Ruby • Simple installation using SSH between database servers • Validates prior to installation ©Continuent 2012 8 Thursday, June 28, 12
  • 10. Installing a MySQL Master tools/tungsten-installer --master-slave -a --cluster-hosts=my1 --home-directory=/opt/continuent --datasource-type=mysql --master-host=my1 --datasource-user=tungsten --datasource-password=secret --service-name=mongodb --mysql-use-bytes-for-string=false --svc-extractor-filters=colnames,pkey --datasource-log-directory=/var/lib/mysql --datasource-log-pattern=mysql-bin --datasource-mysql-conf=/etc/mysql/my.cnf --start-and-report ©Continuent 2012 9 Thursday, June 28, 12
  • 11. Installing a MongoDB Slave tools/tungsten-installer --master-slave -a --cluster-hosts=mon2 --home-directory=/opt/continuent --datasource-type=mongodb --master-host=my1 --datasource-user=tungsten --datasource-password=secret --service-name=mongodb --property=replicator.pipeline.slave.services="" --skip-validation-check=InstallerMasterSlaveCheck --start-and-report ©Continuent 2012 10 Thursday, June 28, 12
  • 12. Installing a PostgreSQL Slave tools/tungsten-installer --master-slave -a --cluster-hosts=pg3 --home-directory=/var/lib/postgresql/continuent --datasource-type=postgresql --master-host=my1 --datasource-user=postgres --datasource-password=secret --service-name=mongodb --skip-validation-check=InstallerMasterSlaveCheck --user=postgres --postgresql-dbname=postgres --start-and-report ©Continuent 2012 11 Thursday, June 28, 12
  • 13. Demo ©Continuent 2012 12 Thursday, June 28, 12
  • 14. Supported slave databases • MySQL • PostgreSQL • Oracle • MongoDB • Vertica ©Continuent 2012 13 Thursday, June 28, 12
  • 15. Supported master databases • MySQL • PostgreSQL (Experimental) • Oracle (Commercial) ©Continuent 2012 14 Thursday, June 28, 12
  • 16. Next Steps • Test in your environment • Sponsor support for new database types • Looking for sponsorship to build out a provisioning framework • Contact us with questions ©Continuent 2012 15 Thursday, June 28, 12
  • 17. We’re Hiring • Cluster Implementation Engineer • QA Engineer • Technical Writer ©Continuent 2012 16 Thursday, June 28, 12
  • 18. Jeff Mace jeff.mace@continuent.com sales@continuent.com 560 S. Winchester Blvd. Suite 500 San Jose, CA 95128 Tel (866) 998-3642 Fax (408) 668-1009 http://www.continuent.com http://code.google.com/p/tungsten-replicator ©Continuent 2012 17 Thursday, June 28, 12