tonight solomon chang proudly presents: mysql clustering

37
TONIGHT Solomon Chang proudly presents: MySQL Clustering Welcome to the UUASC LA Chapter

Upload: varden

Post on 10-Feb-2016

15 views

Category:

Documents


0 download

DESCRIPTION

Welcome to the UUASC LA Chapter. TONIGHT Solomon Chang proudly presents: MySQL Clustering. NDB Cluster. High Availability* Shared-Nothing Architecture Redundancy. Server Requirements. Any machine that can run MySQL. Server Requirements. Any machine that can run MySQL - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

TONIGHT

Solomon Changproudly presents:MySQL Clustering

Welcome to the UUASC LA Chapter

Page 2: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

NDB Cluster High Availability* Shared-Nothing Architecture Redundancy

Page 3: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Server Requirements Any machine that can run

MySQL

Page 4: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Server Requirements Any machine that can run

MySQL Non-Microsoft Operating

System

Page 5: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Server Requirements Any machine that can run

MySQL Non-Microsoft Operating

System A buttload of RAM

Page 6: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 7: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Types of Nodes Data Nodes

ndbd Management Nodes

ndb_mgmd API Nodes

mysqld ndb_mgm

Page 8: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 9: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

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

Page 10: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 11: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 12: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 13: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 14: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 15: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Security of Nodes

Page 16: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Security of Nodes Authentication: None

Page 17: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Security of Nodes Authentication: None Encryption: None

Page 18: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Security of Nodes Authentication: None Encryption: None Management and Data Nodes

are very trusting as to who or what connects to them

Page 19: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 20: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 21: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Transports Gigabit Ethernet

Bare recommended minimum SCI

Scalable Coherent Interconnect Infiniband

Page 22: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Performance Primary Key are hashes

Page 23: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Performance Primary Key are hashes

Hashed values determine which rows are distributed to which data nodes

Page 24: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Performance Primary Key are hashes

Hashed values determine which rows are distributed to which data nodes

Pushdown

Page 25: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

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

Page 26: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Data Node SetupIn /etc/my.cnf:[MYSQLD]ndbclusterndb-connectstring=10.0.0.152

[MYSQL_CLUSTER]ndb-connectstring=10.0.0.152

Page 27: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Management Node Setup config.ini sections

[ndbd] [ndb_mgmd] [mysqld]

Page 28: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Management Node Setup config.ini sections

[ndbd] [ndb_mgmd] [mysqld]

Sections can be blank

Page 29: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Management Node Setup config.ini sections

[ndbd] [ndb_mgmd] [mysqld]

Sections can be blank There can be multiple instances

of a section

Page 30: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

SQL Node SetupJust like the Data Node Setup

In /etc/my.cnf:[MYSQLD]ndbclusterndb-connectstring=10.0.0.152

[MYSQL_CLUSTER]ndb-connectstring=10.0.0.152

Page 31: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

SQL Node SetupThe Management Node already

knows this is a SQL node from its config.ini file

Page 32: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Enough TalkingIt's showtime

Page 33: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Cluster ReplicationCluster replication is exactly the

same as regular MySQL replication, with the exception of the Binary Log Injection Thread.

Page 34: TONIGHT   Solomon Chang proudly presents: MySQL Clustering
Page 35: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Backup and RestorationWhy would a fault-tolerant,

completely redundant system would ever need to have a backup for restoring data?

Page 36: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

Disk-Based NDB Cluster

Page 37: TONIGHT   Solomon Chang proudly presents: MySQL Clustering

HA Caveat SQL Nodes