Upload
christopher-willingham
View
213
Download
0
Tags:
Embed Size (px)
Citation preview
TONIGHT
Solomon Changproudly presents:
MySQL Clustering
Welcome to the UUASC LA Chapter
NDB Cluster
High Availability* Shared-Nothing Architecture Redundancy
Server Requirements
Any machine that can run MySQL
Server Requirements
Any machine that can run MySQL
Non-Microsoft Operating System
Server Requirements
Any machine that can run MySQL
Non-Microsoft Operating System
A buttload of RAM
Types of Nodes
Data Nodes ndbd
Management Nodes ndb_mgmd
API Nodes mysqld ndb_mgm
Bits and Pieces
Partition (AKA Fragment) A portion of a table
Replica A copy of a Partition
Node Group A collection of individual data nodes
Security of Nodes
Security of Nodes
Authentication: None
Security of Nodes
Authentication: None Encryption: None
Security of Nodes
Authentication: None Encryption: None Management and Data Nodes
are very trusting as to who or what connects to them
Transports
Gigabit Ethernet Bare recommended minimum
SCI Scalable Coherent Interconnect
Infiniband
Performance
Primary Key are hashes
Performance
Primary Key are hashes Hashed values determine which rows
are distributed to which data nodes
Performance
Primary Key are hashes Hashed values determine which rows
are distributed to which data nodes Pushdown
Performance
Primary Key are hashes Hashed values determine which rows
are distributed to which data nodes Pushdown
Spreading query work across multiple data nodes
set engine_condition_pushdown = 1
Data Node Setup
In /etc/my.cnf:[MYSQLD]
ndbcluster
ndb-connectstring=10.0.0.152
[MYSQL_CLUSTER]
ndb-connectstring=10.0.0.152
Management Node Setup
config.ini sections [ndbd] [ndb_mgmd] [mysqld]
Management Node Setup
config.ini sections [ndbd] [ndb_mgmd] [mysqld]
Sections can be blank
Management Node Setup
config.ini sections [ndbd] [ndb_mgmd] [mysqld]
Sections can be blank There can be multiple instances
of a section
SQL Node Setup
Just like the Data Node Setup
In /etc/my.cnf:[MYSQLD]
ndbcluster
ndb-connectstring=10.0.0.152
[MYSQL_CLUSTER]
ndb-connectstring=10.0.0.152
SQL Node Setup
The Management Node already knows this is a SQL node from its config.ini file
Enough Talking
It's showtime
Cluster Replication
Cluster replication is exactly the same as regular MySQL replication, with the exception of the Binary Log Injection Thread.
Backup and Restoration
Why would a fault-tolerant, completely redundant system would ever need to have a backup for restoring data?
Disk-Based NDB Cluster
HA Caveat
SQL Nodes