The document provides an overview of MySQL Cluster, a database clustering product. It describes the key components of MySQL Cluster - management nodes, data nodes, and SQL nodes. It explains how MySQL Cluster provides high availability and automatic partitioning of data across nodes. Benchmarks show that MySQL Cluster can scale out to improve performance and handle increased load by adding more nodes.
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.
2
7. Multi-Data Center Scalability
Geographic Replication
âą Replicate complete
clusters across data
centers
â DR & data locality
â Fully active/active
Geographic â No passive resources
Replication
âą Split individual clusters
across data centers
â Synchronous replication
& auto-failover between
sites
â Delivered as part of
MySQL Cluster 7.2 DMR
7
8. Mapping Applications to HA Technology
Shared-Nothing,
Database Clustered /
Applica ons Geo-Replicated
Replica on Virtualized
Cluster
E-Commerce / Trading (1)
Session Management (1)
User Authen ca on / Accoun ng (1)
Feeds, Blogs, Wikis
OLTP (1)
Data Warehouse/BI
Content Management
CRM
Collabora on
Packaged So ware
Network Infrastructure
Core Telco Apps (HLR/HSS/SDPâŠ)
1: Replication used in combination with cluster or virtualization â based HA
8
10. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
P1
Data Node 2
P2
P3 Data Node 3
P4
Data Node 4
10
11. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1
P1
Data Node 2
P2
P3 Data Node 3
P4
Data Node 4
11
12. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1
P1
Data Node 2
F1
P2
P3 Data Node 3
P4
Data Node 4
12
13. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1
P1
Data Node 2
F3 F1
P2
P3 Data Node 3
P4
Data Node 4
13
14. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1
Data Node 2
F3 F1
P2
P3 Data Node 3
P4
Data Node 4
14
15. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2
P4
Data Node 4
15
16. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2
P4
Data Node 4
F2
16
17. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2
P4
Data Node 4
F4 F2
17
18. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2 F4
P4
Data Node 4
F4 F2
18
19. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1 Node Group 1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2 F4
P4
Data Node 4
F4 F2
19
20. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1 Node Group 1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2 F4
P4
Node Group 2
Data Node 4
F4 F2
20
21. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1 Node Group 1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2 F4
P4
Node Group 2
Data Node 4
F4 F2
21
22. MySQL Cluster - Auto-Partitioning
Table T1 Data Node 1
F1 F3
P1 Node Group 1
Data Node 2
F3 F1
P2
P3 Data Node 3
F2 F4
P4
Node Group 2
Data Node 4
F4 F2
22
23. MySQL Cluster - Auto-Partitioning
Table T1
Scalability a
P1 Performanc
e
P2
HA a
P3 Ease of use
P4 SQL/Joins a
ACID a
Transaction
s
23
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;
25
26. Comparison
MySQL Oracle VM Solaris MySQL
HA Technology WSFC*
Replication Template Cluster Cluster
All supported by Windows Server Oracle Linux Oracle Solaris All supported by
Platform Support MySQL Server ** 2008 MySQL Cluster ****
All (InnoDB InnoDB InnoDB All (InnoDB NDB (MySQL
Supported Storage Engine recommended) recommended) Cluster)
Auto IP Failover No Yes Yes Yes Yes
Auto Database Failover No Yes Yes Yes Yes
Auto Data No N/A â Shared N/A â Shared N/A â Shared Yes
Storage Storage Storage
Resynchronization
Failover Time User / Script 5 seconds + 5 seconds + 5 seconds + 1 Second or Less
Dependent InnoDB Recovery InnoDB Recovery InnoDB Recovery
Time*** Time*** Time***
Asynchronous / Semi- N/A â Shared N/A â Shared N/A â Shared Synchronous
Replication Mode Synchronous Storage Storage Storage
No, distributed across Yes Yes Yes No, distributed
Shared Storage nodes across nodes
Master & Multiple Active / Passive Active / Passive Active / Passive 255 + Multiple
No. of Nodes Slaves Master + Multiple Master + Multiple Master + Multiple Slaves
Slaves Slaves 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
26
28. MySQL Cluster Manager âą
MySQL Cluster nodes automatically restarted
after configuration change
28
29. Benchmarks â Scale-Out
Aumento de servidores faz que haja aumento na escala,
aumentando a capacidade de resolução de requisiçÔes!
29
30. MySQL Cluster Architecture
REST LDAP
Application Nodes Scalability
Performanc
e
Node Group 1 Node Group 2
HA
F1 F2 Ease of use
Node 1
Cluster Node 3 Cluster
Mgr Mgr
F3 F4
SQL/Joins a
F3 F4 ACID a
Node 2
Node 4
F1 F2 Transaction
Data s
Nodes
30
31. MySQL Cluster Architecture
REST LDAP
Application Nodes Scalability
Performanc
e
Node Group 1 Node Group 2
HA a
F1 F2 Ease of use
Node 1
Cluster Node 3 Cluster
Mgr Mgr
F3 F4
SQL/Joins a
F3 F4 ACID a
Node 2
Node 4
F1 F2 Transaction
Data s
Nodes
31