mysql cluster product overview

Post on 25-May-2015

803 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

This presentation was perfor

TRANSCRIPT

<Insert Picture Here>

MySQL Cluster Product Overview

Wagner Bianchi – contato@wagnerbianchi.com

2

Disclaimer

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, 2 release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

4

Agenda

• MySQL Cluster Product Overview– O que é o MySQL Cluster?– Componentes do MySQL Cluster– MySQL Cluster Manager ™– Casos de Utilização– Benchmarks

• MySQL Cluster 7.2

5

O que é o MySQL Cluster?

6

Mapping HA Architectures to Availability

7

Multi-Data Center ScalabilityGeographic Replication

• Replicate complete clusters across data centers– DR & data locality– Fully active/active– No passive resources

• Split individual clusters across data centers– Synchronous replication

& auto-failover between sites

– Delivered as part of MySQL Cluster 7.2 DMR

Geographic Replication

8

Mapping Applications to HA Technology

9

MySQL Cluster

• O MySQL Cluster é formado por 3 componentes:

– Management Node: permite a realização de tarefas administrativas como monitoramento dos nós, backup dos nós de dados do cluster e outras – seu binário é o ndb_mgmd;

– Data ou Storage Node: responsável por processar e armazenar dados dos bancos de dados localizados no cluster – seu binário é o ndbd ou ndbmtd;

– API ou SQL Node: este é o nó que recebe as conexões das aplicações e enviam e requisitam dados armazenados nos Data Nodes – seu binário é o mysqld;

10

Data Node 1

Data Node 2

Data Node 3

Data Node 4

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

11

Data Node 1

Data Node 2

F1

Data Node 3

Data Node 4

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

12

Data Node 1

Data Node 2

F1

F1

Data Node 3

Data Node 4

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

13

Data Node 1

Data Node 2

F1

F3 F1

Data Node 3

Data Node 4

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

14

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

15

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

16

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2

F2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

17

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2

F4 F2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

18

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2 F4

F4 F2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

19

Data Node 1

Data Node 2

F3

F1

Data Node 3

Data Node 4

F2 F4

F4 F2

Node Group 1

Table T1

P2

P3

P4

P1

F1

F3

MySQL Cluster - Auto-Partitioning

20

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2 F4

F4 F2

Node Group 1

Node Group 2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

21

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2 F4

F4 F2

Node Group 1

Node Group 2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

22

Data Node 1

Data Node 2

F1 F3

F3 F1

Data Node 3

Data Node 4

F2 F4

F4 F2

Node Group 1

Node Group 2

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

23

Table T1

P2

P3

P4

P1

MySQL Cluster - Auto-Partitioning

Scalability a

Performance

HA a

Ease of use

SQL/Joins a

ACID Transaction

s

a

24

MySQL Cluster

25

MySQL Cluster

• Recomenda-se que:

– todos os componentes sejam pelo menos duplicados, tendo uma instalação com no mínimo 6 nodes dentro do cluster;

– o cluster seja colocado em uma sub-rede que possibilite trafegar dados somente do cluster para que não haja perda de pacotes;

– todas as máquinas que figuram SQL e Storage node tenham as mesmas configurações para evitar bottlenecks;

– todos os binários de todos os componentes sejam da mesma versão e release do produto;

26

Comparison

HA Technology MySQL Replication WSFC* Oracle VM

TemplateSolaris Cluster

MySQL Cluster

Platform SupportAll supported by MySQL Server **

Windows Server 2008

Oracle Linux Oracle Solaris All supported by MySQL Cluster ****

Supported Storage EngineAll (InnoDB

recommended)InnoDB InnoDB All (InnoDB

recommended)NDB (MySQL

Cluster)

Auto IP Failover No Yes Yes Yes Yes

Auto Database Failover No Yes Yes Yes Yes

Auto Data Resynchronization

No N/A – Shared Storage

N/A – Shared Storage

N/A – Shared Storage

Yes

Failover Time User / Script Dependent

5 seconds + InnoDB Recovery

Time***

5 seconds + InnoDB Recovery

Time***

5 seconds + InnoDB Recovery

Time***

1 Second or Less

Replication ModeAsynchronous / Semi-

SynchronousN/A – Shared

StorageN/A – Shared

StorageN/A – Shared

StorageSynchronous

Shared StorageNo, distributed across

nodesYes Yes Yes No, distributed

across nodes

No. of NodesMaster & Multiple

SlavesActive / Passive Master + Multiple

Slaves

Active / Passive Master + Multiple

Slaves

Active / Passive Master + Multiple

Slaves

255 + Multiple Slaves

Availability Design Level 99.9% 99.95% 99.99% 99.99% 99.999%

* Windows Server 2008R2 Failover Clustering

** http://www.mysql.com/support/supportedplatforms/database.html

*** InnoDB recovery time dependent on cache and database size, database activity, etc.

**** http://www.mysql.com/support/supportedplatforms/cluster.html

27

MySQL Cluster Manager ™

• Funciona através do MySQL Enterprise Monitor;

• Permite fazer start, restart e stop de Storage Nodes através de Interface Gráfica;

• Live Demo:

http://bit.ly/rqjQRp

28

MySQL Cluster Manager ™

MySQL Cluster nodes automatically restarted

after configuration change

29

Benchmarks – Scale-Out

Aumento de servidores faz que haja aumento na escala,

aumentando a capacidade de resolução de requisições!

30

MySQL Cluster Architecture

Data Nodes

Node Group 1

F1

F3

F3

F1

No

de

1N

od

e 2

Node Group 2

F2

F4

F4

F2

No

de

3N

od

e 4

Application Nodes

Cluster Mgr

Cluster Mgr

LDAPREST Scalability

Performance

HA

Ease of use

SQL/Joins a

ACID Transaction

s

a

31

MySQL Cluster Architecture

Data Nodes

Node Group 1

F1

F3

F3

F1

No

de

1N

od

e 2

Node Group 2

F2

F4

F4

F2

No

de

3N

od

e 4

Application Nodes

Cluster Mgr

Cluster Mgr

LDAPREST Scalability

Performance

HA a

Ease of use

SQL/Joins a

ACID Transaction

s

a

32

Wagner Bianchi 

É especialista em MySQL e outros servidores de bancos de dados relacionais como Oracle e SQL Server. Formado em Gerenciamento de Bancos de Dados, com MBA em Administração de Empresas pela Fundação Getúlio Vargas e Pós-Graduando em Bancos de Dados pela Universidade Gama Filho do Distrito Federal, possui várias certificações, entre elas a SCMA, SCMDEV, SCMDBA e SCMCDBA. Atualmente é Consultor Sênior em bancos de dados pela WAGNERBIANCHI.COM.

top related