MySQL Cluster
Download
Report
Transcript MySQL Cluster
MySQL Cluster
High-Availability Distributed
Database
The Problem
A single MySQL daemon can only handle
approximately 6000 connections.
The AvantGo sync process currently
exceeds this limit during peak sync
times.
Possible Solutions
MySQL Cluster
MySQL Replication
MySQL Software Modifications
OS Kernel Modifications
What is MySQL Cluster?
MySQL Cluster is a distributed, replicated,
in-memory storage engine for the
MySQL database.
Pros
High Availability
High Performance
Data Redundancy
No Single Point of Failure
Load Distribution
No Disk Reads
Real-Time Replication
No Master/Slave Lag
Cons
Large Memory Requirements
All Records are Fixed Size
Creates Hidden Indexes
Slow Restarts
Inefficient for Some Queries
No Query Caching
No FULLTEXT Index Support
Memory Requirements
Table
Number of
Rows
Avg (Total) MyISAM
Record Size Data Size
Cluster
Data Size
MCPINSTANCE
55
100 (572)
5KB
256MB
MCPUSER
14M
10 (24)
140MB
363MB
26 (148)
370MB
2.4GB
MCPUSEREMAIL 14M
Reality Check
Difficult to Configure
Difficult to Debug
Limited Community Support
Still Under Development
Cluster vs. Replication
Cluster
Application
Transparent
Excessive Hardware
Requirements
Limited Industry
Test-Cases
Replication
Requires Application
Changes
Master/Slave Lag
Issues
Easy to Configure
Industry-Tested
Conclusion
MySQL Cluster is a promising solution,
but it does not appear to be ready for
production use at this time.