flexible heterogenous replication

18
©Continuent 2012. Flexible Heterogenous Replication Je! Mace Thursday, June 28, 12

Upload: jeff-mace

Post on 12-Jul-2015

278 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Flexible heterogenous replication

©Continuent 2012.

Flexible Heterogenous Replication

Je! Mace

Thursday, June 28, 12

Page 2: Flexible heterogenous replication

©Continuent 2012

Overview

• Introducing Tungsten Replicator

• Installation

• Demo

• Next Steps

2

Thursday, June 28, 12

Page 3: Flexible heterogenous replication

©Continuent 2012 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

Thursday, June 28, 12

Page 4: Flexible heterogenous replication

©Continuent 2012

Break speed limits

4

Thursday, June 28, 12

Page 5: Flexible heterogenous replication

©Continuent 2012

Break speed limits

4

✗Thursday, June 28, 12

Page 6: Flexible heterogenous replication

©Continuent 2012

Replicate from many masters

5

Thursday, June 28, 12

Page 7: Flexible heterogenous replication

©Continuent 2012

Replication Pipeline

6

Extract Filter Apply

StageExtract Filter Apply

StageExtract Filter Apply

Stage

Pipeline

MasterDBMS

TransactionHistory Log

In-MemoryQueue

SlaveDBMS

Thursday, June 28, 12

Page 8: Flexible heterogenous replication

©Continuent 2012

Heterogenous Replication

• Row replication

• DDL must be compatible

• Create schema ahead of time on the slave

• Primary Keys on every table

7

Thursday, June 28, 12

Page 9: Flexible heterogenous replication

©Continuent 2012

Installing Tungsten

• tungsten-installer

• Written in Ruby

• Simple installation using SSH between database servers

• Validates prior to installation

8

Thursday, June 28, 12

Page 10: Flexible heterogenous replication

©Continuent 2012

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

9

Thursday, June 28, 12

Page 11: Flexible heterogenous replication

©Continuent 2012

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

10

Thursday, June 28, 12

Page 12: Flexible heterogenous replication

©Continuent 2012

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

11

Thursday, June 28, 12

Page 13: Flexible heterogenous replication

©Continuent 2012

Demo

12

Thursday, June 28, 12

Page 14: Flexible heterogenous replication

©Continuent 2012

Supported slave databases

• MySQL

• PostgreSQL

• Oracle

• MongoDB

• Vertica

13

Thursday, June 28, 12

Page 15: Flexible heterogenous replication

©Continuent 2012

Supported master databases

• MySQL

• PostgreSQL (Experimental)

• Oracle (Commercial)

14

Thursday, June 28, 12

Page 16: Flexible heterogenous replication

©Continuent 2012

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

15

Thursday, June 28, 12

Page 17: Flexible heterogenous replication

©Continuent 2012

We’re Hiring

• Cluster Implementation Engineer

• QA Engineer

• Technical Writer

16

Thursday, June 28, 12

Page 18: Flexible heterogenous replication

©Continuent 2012 17

Jeff [email protected]@continuent.com

560 S. Winchester Blvd. Suite 500San Jose, CA 95128Tel (866) 998-3642Fax (408) 668-1009

http://www.continuent.com

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

Thursday, June 28, 12