Upload
webhostingguy
View
363
Download
2
Tags:
Embed Size (px)
Citation preview
Mysql – Clusters
© April 13, 2023 Novell Inc, Confidential & Proprietary2
Sleeping Pills
1. Clustering – What is it?
2. Mysql Clustering – Native Support.
3. EMIC Enterprise Application Cluster for Mysql.
4. Leveraging Novell Clustering Services for Mysql.
5. Cluster JDBC.
6. Oracle RAC.
7. Mysql Native Clustering support future.
© April 13, 2023 Novell Inc, Confidential & Proprietary3
1. About Clustering
1. Clustering : What is it?a. Shared Disk Approach.
b. Shared Nothing Approach.
c. Federated Databases.
2. Need for it :a. Load Balancing.
b. Fault tolerance.
c. Scalability.
d. Sometimes Online Backup tooo.
© April 13, 2023 Novell Inc, Confidential & Proprietary4
About Clustering (contd..)
3. Important Features of clustering :
a. IP Sharing.
b. Seemless Connections on Fail over.
c. Complete Abstraction to applications on Clustering functions.
d. Centralized Management of cluster nodes.
© April 13, 2023 Novell Inc, Confidential & Proprietary5
2. Mysql Clustering – Native Support.
Mysql Natively has these two options for clustering.
1. Shared Nothing Approach : Replication.
2. Shared Data Directory.
© April 13, 2023 Novell Inc, Confidential & Proprietary6
Mysql-Replication
How do they work?
Master
Slave1
Slave 2
Clients D
oing Selects
Clients Doing Updates
Insert & Update
Insert & Update
Selects
Select
© April 13, 2023 Novell Inc, Confidential & Proprietary7
Mysql-Replication (contd.)
Source – BS2003 presentation TUT205
How are they Useful?1. Load Balancing.
2. Fault tolerance.
3. Scalability.
4. Online Backup
S1
S2
S3
M1Client1
Client2
Client1
Client2
S3
S1
S2
M1
When M1 goes Down
© April 13, 2023 Novell Inc, Confidential & Proprietary8
Mysql Replication (Contd.)
3. Issues and some obvious reasons !!!.1. Slaves Always lag behind the Master.
2. Virtual IPAddress??
3. Scalability is Limited to Number of selects??
4. No Abstraction provided to Client.
Solution :-
Use Spread or Message passing for synchronous replication
Two Phase commit approach.
© April 13, 2023 Novell Inc, Confidential & Proprietary9
Mysql – Shared Data Directory.
How to set up?
2. How are they Useful ?• Provides all the functionalities of replication.
• Master and slaves will be always in sync.
Server1 Server2
Shared Data dir
© April 13, 2023 Novell Inc, Confidential & Proprietary10
Shared Data directory (contd.)
3. Issues & Some obvious reasons.
a. Locking issues with Innodb.
b. query caches might result in false data.
c. Very slow over Network File System or Remote File system that can be shared across two machines.
© April 13, 2023 Novell Inc, Confidential & Proprietary11
1. What is it?a. Provides Application Level clustering.
b. Uses shared Nothing Approach.
c. Comprehensive clustering solution for Mysql.
3. EMIC EAC for Mysql
© April 13, 2023 Novell Inc, Confidential & Proprietary12
EMIC EAC For Mysql (Contd..)
2. Software Architecture.
EMIC EAC Software Architecture
© April 13, 2023 Novell Inc, Confidential & Proprietary13
EMIC EAC For Mysql (Contd..)
3. How it works.
© April 13, 2023 Novell Inc, Confidential & Proprietary14
EMIC EAC for Mysql ( Contd…)
4. What are the clustering features do they address?
– Dynamic Load Balancing.
– Seemless connections.
– Virtual IP.
– Scalability.
– Complete transparency and Centralized Mangement.
Cons :– Might be slower than because of additional complex
clustering logic provided by EMIC ( Not tested Hence No data.. I have started testing it If data proves assumption wrong then I will remove this )
© April 13, 2023 Novell Inc, Confidential & Proprietary15
4. Leveraging NCS for Mysql on Netware
What is NCS?1. Clustering framework for all services running on
NetWare 6 and above.
2. Shared disk approach through SAN (Fibre channel) or ISCSI.
Server1 Server2 Server3 Server1 Server2 Server3
Fibre Channel Switch
Shared Disk System
© April 13, 2023 Novell Inc, Confidential & Proprietary16
NCS for Mysql on Netware (Contd..)
Clustering Features Addressed!!!1. Fault tolerance.2. Virtual IP Address.3. Seemless connections.4. Complete Abstraction and Centralized
management through e-directory.
Features that can be Added.- Application level load balancing is not yet
supported for Mysql through NCS. NCS provides load balancing by moving the applications across different Machines. Load balancing by running the same applications in two Cluster nodes is not yet provided.
© April 13, 2023 Novell Inc, Confidential & Proprietary17
5. Cluster JDBC
What is it?1. Database cluster middleware through jdbc
driver.
2. Provides clustering support only for Java Applications.
3. It provides complete abstraction to java applications accessing cluster databases.
4. Provides clustering support across Multiple database types.
5. Open source software under LGPL.
© April 13, 2023 Novell Inc, Confidential & Proprietary18
Cluster JDBC (Contd…)
Software Architecture
© April 13, 2023 Novell Inc, Confidential & Proprietary19
Cluster JDBC (Contd…)
Pros – Scalability.– Load Balancing.– Fault tolerance.– Client Side abstraction (Very minimal
changes to the Java applications).– Seemless connections.
Cons– Slow because of one layer of additional
processing. – Only Java applications can leverage them.
© April 13, 2023 Novell Inc, Confidential & Proprietary20
6. Oracle RAC
How is clustering done?– Shared Disk Approach.
– Cache Fusion Architecture.
Architecture.Cluster Interconnect
Shared storage Subsystem
© April 13, 2023 Novell Inc, Confidential & Proprietary21
Pros– Scalability.
– Load Balancing through Funtion shipping and Data Shipping.
– High Availability (handles N-1 Node failures)
– Seemless connections.
– Data access during recovery.
Cons– VirtualIP Address is not supported.
Oracle RAC
© April 13, 2023 Novell Inc, Confidential & Proprietary22
7. Mysql clustering Native Support-Future
NDB
• What is it? : It’s the cluster technology that Mysql has got through the Acquisition of Alzato.
• What might be native clustering support in Mysql in Future through NDB?
© April 13, 2023 Novell Inc, Confidential & Proprietary23