SlideShare uma empresa Scribd logo
1 de 262
Baixar para ler offline
Galera Replication Demystified
how does it work ?
 
 
1
/
262
about.me/lefred
Who am I ?
 
 
2
/
262
Frédéric Descamps
@lefred
 
 
3
/
262
Frédéric Descamps
@lefred
Working for Percona since 2011
 
 
4
/
262
Frédéric Descamps
@lefred
Working for Percona since 2011
Senior Architect
 
 
5
/
262
Frédéric Descamps
@lefred
Working for Percona since 2011
Senior Architect
Managing MySQL since 3.23
 
 
6
/
262
Frédéric Descamps
@lefred
Working for Percona since 2011
Senior Architect
Managing MySQL since 3.23
devops believer
 
 
7
/
262
Frédéric Descamps
@lefred
Working for Percona since 2011
Senior Architect
Managing MySQL since 3.23
devops believer
and I installed my first Galera Cluster in February 2010 ;-)
 
 
8
/
262
Galera Replication
Cluster
 
 
9
/
262
Galera Replication - Cluster
What is it ?
What does it handle ?
 
 
10
/
262
Standard asyncrhonous replication is server-centric, one server
streams data to another one. All the nodes have a specific role.
 
 
11
/
262
In Galera, the dataset is synchronized between one or more servers:
data-centric
 
 
12
/
262
You can write to any node in your cluster No need to worry about
eventual out-of-sync
 
 
13
/
262
Write events/transactions are sent in parallel
 
 
14
/
262
Cluster Membership
determined by the cluster
wsrep_cluster_address is just a pointer
any node is permitted to join that
knows the cluster name
can find a single active cluster node
 
 
15
/
262
Cluster Membership
determined by the cluster
wsrep_cluster_address is just a pointer
any node is permitted to join that
knows the cluster name
can find a single active cluster node
㫤㫠㫟㫜㫝㫘㫚㫙㫢㫠㫡㫜㫟㫘㫘㫛㫛㫟㫜㫠㫠㫔㫖㫔㫞㫚㫜㫚㫚㫣㫘㫘㫚㫢㫛㫗㫚㫟㫡㫗㫚㫗㫚㫕㫚㫢㫛㫗㫚㫟㫡㫗㫚㫗㫛㫕㫚㫢㫛㫗㫚㫟㫡㫗㫚㫗㫜
 
 
16
/
262
The cluster manages quorum
and has split-brain protection.
 
 
17
/
262
 
 
18
/
262
 
 
19
/
262
 
 
20
/
262
 
 
21
/
262
 
 
22
/
262
 
 
23
/
262
Replication
 
 
24
/
262
Replication
Delivers the writeset to all nodes in the cluster
 
 
25
/
262
Replication
Delivers the writeset to all nodes in the cluster
and all nodes acknowledge the writeset
 
 
26
/
262
Replication
Delivers the writeset to all nodes in the cluster
and all nodes acknowledge the writeset
 
 
27
/
262
Replication
Delivers the writeset to all nodes in the cluster
and all nodes acknowledge the writeset
Cost is ~roundtrip latency to furthest node
 
 
28
/
262
Replication
Delivers the writeset to all nodes in the cluster
and all nodes acknowledge the writeset
Cost is ~roundtrip latency to furthest node
Serialized by Group Communication
 
 
29
/
262
GTID
 
 
30
/
262
GTID
Not the same as 5.6 Aynchronous GTID's
 
 
31
/
262
GTID
Not the same as 5.6 Aynchronous GTID's
though they appear the same
 
 
32
/
262
GTID
Not the same as 5.6 Aynchronous GTID's
though they appear the same
939aac77-f7d1-11e3-bd5e-b211d6ab1ec6:1534285
 
 
33
/
262
GTID
Not the same as 5.6 Aynchronous GTID's
though they appear the same
939aac77-f7d1-11e3-bd5e-b211d6ab1ec6:1534285
GTIDs ensure cluster members are consistent with each other
 
 
34
/
262
GTID
Not the same as 5.6 Aynchronous GTID's
though they appear the same
939aac77-f7d1-11e3-bd5e-b211d6ab1ec6:1534285
GTIDs ensure cluster members are consistent with each other
nodes joining a cluster have their GTIDs checked
 
 
35
/
262
GTID
Not the same as 5.6 Aynchronous GTID's
though they appear the same
939aac77-f7d1-11e3-bd5e-b211d6ab1ec6:1534285
GTIDs ensure cluster members are consistent with each other
nodes joining a cluster have their GTIDs checked
GTIDs can be used to compare downed nodes to each other
 
 
36
/
262
GTID
The highest GTID is the most recently written
Generally the best practice it to bootstrap the node with the most recent
data
 
 
37
/
262
GTID
 
 
38
/
262
GTID
 
 
39
/
262
GTID
 
 
40
/
262
Global Transaction IDs
initial dataset
bfb912e5-f560-11e2-0800-1eefab05e57d:0
 
 
41
/
262
Global Transaction IDs
initial dataset
bfb912e5-f560-11e2-0800-1eefab05e57d:0
first change/transaction/writeset
bfb912e5-f560-11e2-0800-1eefab05e57d:1
 
 
42
/
262
Global Transaction IDs
initial dataset
bfb912e5-f560-11e2-0800-1eefab05e57d:0
first change/transaction/writeset
bfb912e5-f560-11e2-0800-1eefab05e57d:1
undefined GTID
00000000-0000-0000-0000-000000000000:-1
 
 
43
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
 
 
44
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
 
 
45
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
 
 
46
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
In MySQL 5.6
㫢㫘㫞㫚㫚㫙㫠㫙㫖㫠㫙㫞㫢㫖㫚㫚㫜㫛㫖㫢㫘㫛㫝㫖㫙㫡㫙㫙㫛㫠㫟㫛㫙㫡㫘㫝㫣㫜㫛
㫢㫘㫞㫚㫚㫙㫠㫙㫖㫠㫙㫞㫢㫖㫚㫚㫜㫛㫖㫢㫘㫛㫝㫖㫙㫡㫙㫙㫛㫠㫟㫛㫙㫡㫘㫝㫣㫜㫜
㫢㫘㫞㫚㫚㫙㫠㫙㫖㫠㫙㫞㫢㫖㫚㫚㫜㫛㫖㫢㫘㫛㫝㫖㫙㫡㫙㫙㫛㫠㫟㫛㫙㫡㫘㫝㫣㫜㫝
㫘㫔㫛㫜㫤㫔㫚㫘㫠㫡㫜㫟㫔㫝㫟㫜㫚㫜㫡㫜㫛㫔㫘
㫜㫜㫚㫚㫝㫘㫝㫠㫖㫠㫚㫚㫘㫖㫚㫚㫜㫛㫖㫢㫜㫜㫜㫖㫚㫡㫙㫘㫘㫢㫝㫛㫢㫞㫟㫛㫣㫚
㫜㫜㫚㫚㫝㫘㫝㫠㫖㫠㫚㫚㫘㫖㫚㫚㫜㫛㫖㫢㫜㫜㫜㫖㫚㫡㫙㫘㫘㫢㫝㫛㫢㫞㫟㫛㫣㫛
㫜㫜㫚㫚㫝㫘㫝㫠㫖㫠㫚㫚㫘㫖㫚㫚㫜㫛㫖㫢㫜㫜㫜㫖㫚㫡㫙㫘㫘㫢㫝㫛㫢㫞㫟㫛㫣㫜
 
 
47
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
In Galera
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫚㫡
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫚㫢
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫛㫙
 
 
48
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
In Galera
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫚㫡
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫚㫢
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫛㫙
㫘㫔㫛㫜㫤㫔㫚㫘㫠㫡㫜㫟㫔㫝㫟㫜㫚㫜㫡㫜㫛㫔㫘
 
 
49
/
262
Global Transaction IDs : Galera vs
MySQL 5.6
In Galera
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫚㫡
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫚㫢
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫛㫙
㫘㫔㫛㫜㫤㫔㫚㫘㫠㫡㫜㫟㫔㫝㫟㫜㫚㫜㫡㫜㫛㫔㫘
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫛㫚
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫛㫛
㫙㫝㫙㫢㫚㫛㫜㫞㫖㫝㫞㫟㫙㫖㫚㫚㫜㫛㫖㫙㫡㫙㫙㫖㫚㫜㫜㫝㫘㫙㫙㫞㫜㫞㫠㫛㫘㫣㫚㫚㫛㫜
 
 
50
/
262
GTID Assignment
UUID
The UUID section, 128-bit, is generated during bootstrapping to identify
the cluster.
Generated by mixing the timer value and pseudo-random numbers
(depending primarily from the timer and PID), but, currently, there is no
use of NIC's MAC-address although in theory it may be done that way.
More info: https://gist.github.com/lefred/88a2cec88d03854d9934
 
 
51
/
262
GTID Assignment (3)
SEQNO
The seqno, 64-bit, is incremented only when the transaction passes
certification and is ready for commit.
For the curious, the algorithm used to derive sequence number is Totem
Single-ring Ordering protocol.
Before that, there is already communication between the nodes, group
communication is used to define a group-channel id which is a locally
maintained counter by each node in sync with the group.
 
 
52
/
262
Serialization of writesets
 
 
53
/
262
Serialization of writesets
 
 
54
/
262
Serialization of writesets
 
 
55
/
262
Serialization of writesets
 
 
56
/
262
Serialization of writesets
 
 
57
/
262
Serialization of writesets
 
 
58
/
262
Serialization of writesets
 
 
59
/
262
Serialization of writesets
 
 
60
/
262
Serialization of writesets
 
 
61
/
262
Serialization of writesets
 
 
62
/
262
Serialization of writesets
 
 
63
/
262
Serialization of writesets
 
 
64
/
262
Serialization of writesets
 
 
65
/
262
Serialization of writesets
 
 
66
/
262
Roles
We have 4 distinct roles in Galera:
2 for replication
2 for state transfer
 
 
67
/
262
Replication Roles
Within the cluster, all nodes are equal
 
 
68
/
262
Replication Roles
Within the cluster, all nodes are equal
'master/donor node'
 
 
69
/
262
Replication Roles
Within the cluster, all nodes are equal
'master/donor node'
The node a given transaction was written and committed on.
 
 
70
/
262
Replication Roles
Within the cluster, all nodes are equal
'master/donor node'
The node a given transaction was written and committed on.
'slave/joiner node'
 
 
71
/
262
Replication Roles
Within the cluster, all nodes are equal
'master/donor node'
The node a given transaction was written and committed on.
'slave/joiner node'
The node that received the given transaction via Galera
replication.
 
 
72
/
262
Replication Roles
Within the cluster, all nodes are equal
'master/donor node'
The node a given transaction was written and committed on.
'slave/joiner node'
The node that received the given transaction via Galera
replication.
The terms master and slave in this context are only relevant for a
given transaction
 
 
73
/
262
Replication Roles
Within the cluster, all nodes are equal
'master/donor node'
The node a given transaction was written and committed on.
'slave/joiner node'
The node that received the given transaction via Galera
replication.
The terms master and slave in this context are only relevant for a
given transaction
Writeset: Galera’s term for a transaction. One or more RBR row
changes
 
 
74
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
 
 
75
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
Joiner = Mew node
 
 
76
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
Joiner = Mew node
Donor = Node giving a copy of the datadir
 
 
77
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
Joiner = Mew node
Donor = Node giving a copy of the datadir
State Snapshot transfer
 
 
78
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
Joiner = Mew node
Donor = Node giving a copy of the datadir
State Snapshot transfer
Full backup of Donor to Joiner
 
 
79
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
Joiner = Mew node
Donor = Node giving a copy of the datadir
State Snapshot transfer
Full backup of Donor to Joiner
Incremental Snapshot transfer
 
 
80
/
262
State Transfer Roles
New nodes joining an existing cluster get provisioned automatically
Joiner = Mew node
Donor = Node giving a copy of the datadir
State Snapshot transfer
Full backup of Donor to Joiner
Incremental Snapshot transfer
Only changes since node left cluster
 
 
81
/
262
Writeset
RBR payload (black box to Galera)
 
 
82
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
 
 
83
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
Primary keys
 
 
84
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
Primary keys
Unique keys
 
 
85
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
Primary keys
Unique keys
Foreign Keys
 
 
86
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
Primary keys
Unique keys
Foreign Keys
Table names
 
 
87
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
Primary keys
Unique keys
Foreign Keys
Table names
Schema names
 
 
88
/
262
Writeset
RBR payload (black box to Galera)
Replication keys (generated by master/donor node)
Primary keys
Unique keys
Foreign Keys
Table names
Schema names
Keys are what make certification possible
 
 
89
/
262
Replication ?
It consists in 4 operations:
Apply
Replication
Certification
Commit
The order differs with the node's role
 
 
90
/
262
Replication Order on Master/Donor
1. Apply
2. Replication
3. Certification
4. Commit
 
 
91
/
262
Replication Order on Slave/Joiner
1. Replication (from master/donor)
2. Certification
3. Apply
4. Commit
 
 
92
/
262
Certification
Can this writeset be applied?
 
 
93
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
 
 
94
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
 
 
95
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
 
 
96
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
Should be deterministic on every node
 
 
97
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
Should be deterministic on every node
Results are not reported to the cluster
 
 
98
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
Should be deterministic on every node
Results are not reported to the cluster
Pass: enter apply queue (commit success on master/donor)
 
 
99
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
Should be deterministic on every node
Results are not reported to the cluster
Pass: enter apply queue (commit success on master/donor)
Fail: drop transaction (or return deadlock on master/donor)
 
 
100
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
Should be deterministic on every node
Results are not reported to the cluster
Pass: enter apply queue (commit success on master/donor)
Fail: drop transaction (or return deadlock on master/donor)
Serialized by group communication sequence (and GTID will be
synchronized following the same sequence)
 
 
101
/
262
Certification
Can this writeset be applied?
Based on unapplied earlier transactions on master/donor
Such conflicts must come from other nodes
Happens on every node
Should be deterministic on every node
Results are not reported to the cluster
Pass: enter apply queue (commit success on master/donor)
Fail: drop transaction (or return deadlock on master/donor)
Serialized by group communication sequence (and GTID will be
synchronized following the same sequence)
Cost based on # of keys or # of rows
 
 
102
/
262
Apply
Apply is done on slave nodes after certification
 
 
103
/
262
Apply
Apply is done on slave nodes after certification
Can be parallelized
 
 
104
/
262
Apply
Apply is done on slave nodes after certification
Can be parallelized
if wsrep_slave_threads > 1
 
 
105
/
262
Apply
Apply is done on slave nodes after certification
Can be parallelized
if wsrep_slave_threads > 1
if there are no other writesets with conflicting keys also being
applied
 
 
106
/
262
Apply
Apply is done on slave nodes after certification
Can be parallelized
if wsrep_slave_threads > 1
if there are no other writesets with conflicting keys also being
applied
Cost: size of transaction
 
 
107
/
262
Apply
Apply is done on slave nodes after certification
Can be parallelized
if wsrep_slave_threads > 1
if there are no other writesets with conflicting keys also being
applied
Cost: size of transaction
Generates brute force aborts on local node for conflicts
 
 
108
/
262
Commit
Final local InnoDB commit
 
 
109
/
262
Commit
Final local InnoDB commit
i.e., innodb_flush_log_at_trx_commit
 
 
110
/
262
Commit
Final local InnoDB commit
i.e., innodb_flush_log_at_trx_commit
GTID gets generated
 
 
111
/
262
Commit
Final local InnoDB commit
i.e., innodb_flush_log_at_trx_commit
GTID gets generated
Done by applier threads on slaves/joiners
 
 
112
/
262
Commit
Final local InnoDB commit
i.e., innodb_flush_log_at_trx_commit
GTID gets generated
Done by applier threads on slaves/joiners
Done by client thread on master/donor
 
 
113
/
262
Commit
Final local InnoDB commit
i.e., innodb_flush_log_at_trx_commit
GTID gets generated
Done by applier threads on slaves/joiners
Done by client thread on master/donor
innodb_flush_log_at_trx_commit=1 not required generally for PXC!
 
 
114
/
262
Galera Replication (autocommit)
 
 
115
/
262
Galera Replication (autocommit)
 
 
116
/
262
Galera Replication (autocommit)
 
 
117
/
262
Galera Replication (autocommit)
 
 
118
/
262
Galera Replication (autocommit)
 
 
119
/
262
Galera Replication (autocommit)
 
 
120
/
262
Galera Replication (autocommit)
 
 
121
/
262
Galera Replication (full transaction)
 
 
122
/
262
Galera Replication (full transaction)
 
 
123
/
262
Galera Replication (full transaction)
 
 
124
/
262
Galera Replication (full transaction)
 
 
125
/
262
Galera Replication (full transaction)
 
 
126
/
262
Galera Replication (full transaction)
 
 
127
/
262
Galera Replication (full transaction)
 
 
128
/
262
Galera Replication (full transaction)
 
 
129
/
262
Galera Replication (full transaction)
 
 
130
/
262
Optimistic Locking
Traditional locking
 
 
131
/
262
Optimistic Locking
Traditional locking
 
 
132
/
262
Optimistic Locking
Traditional locking
 
 
133
/
262
Optimistic Locking
Traditional locking
 
 
134
/
262
Optimistic Locking
Traditional locking
 
 
135
/
262
Optimistic Locking
Traditional locking
 
 
136
/
262
Optimistic Locking
Optimistic Locking
 
 
137
/
262
Optimistic Locking
Optimistic Locking
 
 
138
/
262
Optimistic Locking
Optimistic Locking
 
 
139
/
262
Optimistic Locking
Optimistic Locking
 
 
140
/
262
Optimistic Locking
Optimistic Locking
 
 
141
/
262
Optimistic Locking
Optimistic Locking
 
 
142
/
262
Optimistic Locking
Optimistic Locking
 
 
143
/
262
Certification Failure
 
 
144
/
262
Certification Failure
Trx1 is open on 㫙㫜㫛㫜㫚
Trx2 is open on 㫙㫜㫛㫜㫛
 
 
145
/
262
Certification Failure
㫙㫜㫛㫜㫚 gets 㫖㫚㫘㫘㫗㫗
 
 
146
/
262
Certification Failure
Synchronous replication
 
 
147
/
262
Certification Failure
Certification tests
run in isolation on each node
 
 
148
/
262
Certification Failure
Certification tests:
asynchronous
 
 
149
/
262
Certification Failure
Synchronous replication
deterministic
 
 
150
/
262
Certification Failure
Certification succeeds
 
 
151
/
262
Certification Failure
Certified transaction goes to the apply queue
 
 
152
/
262
Certification Failure
 
 
153
/
262
Certification Failure
On 㫙㫜㫛㫜㫚, a successful cert test, means an actual 㫚㫜㫚㫚㫠㫡
 
 
154
/
262
Certification Failure
and transactions in the apply queue (㫙㫜㫛㫜㫛 & 㫙㫜㫛㫜㫜) are executed
asynchronously
 
 
155
/
262
Certification Failure
On 㫛㫜㫛㫜㫛 we commit the transaction
 
 
156
/
262
Certification Failure
Synchronous replication
 
 
157
/
262
Certification Failure
 
 
158
/
262
Certification Failure
 
 
159
/
262
Certification Failure
 
 
160
/
262
Certification Failure
 
 
161
/
262
Certification Failure
 
 
162
/
262
Certification Failure
 
 
163
/
262
Certification Failure
 
 
164
/
262
Brute Force Abort (bfa)
 
 
165
/
262
Brute Force Abort (bfa)
 
 
166
/
262
Brute Force Abort (bfa)
 
 
167
/
262
Brute Force Abort (bfa)
 
 
168
/
262
Brute Force Abort (bfa)
 
 
169
/
262
Brute Force Abort (bfa)
 
 
170
/
262
Brute Force Abort (bfa)
 
 
171
/
262
Local Certification Failure (lcf)
 
 
172
/
262
Local Certification Failure (lcf)
 
 
173
/
262
Local Certification Failure (lcf)
 
 
174
/
262
Local Certification Failure (lcf)
 
 
175
/
262
Local Certification Failure (lcf)
 
 
176
/
262
Local Certification Failure (lcf)
 
 
177
/
262
Local Certification Failure (lcf)
 
 
178
/
262
Local Certification Failure (lcf)
 
 
179
/
262
Local Certification Failure (lcf)
 
 
180
/
262
Local Certification Failure (lcf)
 
 
181
/
262
Local Certification Failure (lcf)
 
 
182
/
262
Local Certification Failure (lcf)
 
 
183
/
262
Certification Errors: summary
 
 
184
/
262
Certification Errors: summary
 
 
185
/
262
Certification Errors: summary
 
 
186
/
262
Flow Control
Ability of any node in the cluster to ask the rest of the nodes to
pause writes while it catches up
 
 
187
/
262
Flow Control
Ability of any node in the cluster to ask the rest of the nodes to
pause writes while it catches up
Feedback mechanism for replication process
 
 
188
/
262
Flow Control
Ability of any node in the cluster to ask the rest of the nodes to
pause writes while it catches up
Feedback mechanism for replication process
ONLY caused by 㫤㫠㫟㫜㫝㫘㫙㫜㫚㫘㫙㫘㫟㫜㫚㫣㫘㫞㫢㫜㫢㫜 exceeding a node's
㫝㫚㫘㫙㫠㫚㫠㫡
 
 
189
/
262
Flow Control
Ability of any node in the cluster to ask the rest of the nodes to
pause writes while it catches up
Feedback mechanism for replication process
ONLY caused by 㫤㫠㫟㫜㫝㫘㫙㫜㫚㫘㫙㫘㫟㫜㫚㫣㫘㫞㫢㫜㫢㫜 exceeding a node's
㫝㫚㫘㫙㫠㫚㫠㫡
CAN pause the entire cluster and look like a cluster stall !
 
 
190
/
262
Tuning Flow Control
Too low:
 
 
191
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
 
 
192
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
Too high:
 
 
193
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
Too high:
increase in replication conflicts in multi-node writings
 
 
194
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
Too high:
increase in replication conflicts in multi-node writings
increase in apply lag on nodes
 
 
195
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
Too high:
increase in replication conflicts in multi-node writings
increase in apply lag on nodes
increase in commit lag on nodes
 
 
196
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
Too high:
increase in replication conflicts in multi-node writings
increase in apply lag on nodes
increase in commit lag on nodes
One node with FC issues
 
 
197
/
262
Tuning Flow Control
Too low:
frequent FC from any and all nodes in the cluster
Too high:
increase in replication conflicts in multi-node writings
increase in apply lag on nodes
increase in commit lag on nodes
One node with FC issues
deal with that node -bad hardware? too slow ?
 
 
198
/
262
Flow Control
 
 
199
/
262
Flow Control
 
 
200
/
262
Flow Control
 
 
201
/
262
Flow Control
 
 
202
/
262
Flow Control
 
 
203
/
262
Flow Control
 
 
204
/
262
Flow Control
 
 
205
/
262
Flow Control
 
 
206
/
262
Flow Control
 
 
207
/
262
Flow Control
 
 
208
/
262
Flow Control
 
 
209
/
262
Flow Control
 
 
210
/
262
Flow Control
 
 
211
/
262
Flow Control
 
 
212
/
262
Flow Control
 
 
213
/
262
Flow Control
 
 
214
/
262
Flow Control
 
 
215
/
262
Flow Control
 
 
216
/
262
Flow Control
 
 
217
/
262
Flow Control
 
 
218
/
262
Flow Control
 
 
219
/
262
State Transfer
There are two types of State Transfer in Galera:
 
 
220
/
262
State Transfer
There are two types of State Transfer in Galera:
1. SST (Snapshot State Transfer): full data copy
 
 
221
/
262
State Transfer
There are two types of State Transfer in Galera:
1. SST (Snapshot State Transfer): full data copy
rsync
mysqldump
xtrabackup
 
 
222
/
262
State Transfer
There are two types of State Transfer in Galera:
1. SST (Snapshot State Transfer): full data copy
rsync
mysqldump
xtrabackup
2. IST (Incremental State Transfer): only copy the missing events
 
 
223
/
262
State Transfer
There are two types of State Transfer in Galera:
1. SST (Snapshot State Transfer): full data copy
rsync
mysqldump
xtrabackup
2. IST (Incremental State Transfer): only copy the missing events
It's always better to try to avoid SST!
 
 
224
/
262
State Transfer
There are two types of State Transfer in Galera:
1. SST (Snapshot State Transfer): full data copy
rsync
mysqldump
xtrabackup
2. IST (Incremental State Transfer): only copy the missing events
It's always better to try to avoid SST!
㫤㫠㫟㫜㫝㫘㫠㫠㫡㫘㫛㫜㫛㫜㫟 can be used to specify the donor
 
 
225
/
262
State Transfer: grastate.dat
When MySQL starts it checks 㫞㫟㫘㫠㫡㫘㫡㫜㫗㫛㫘㫡 file (in datadir)
 
 
226
/
262
State Transfer: grastate.dat
When MySQL starts it checks 㫞㫟㫘㫠㫡㫘㫡㫜㫗㫛㫘㫡 file (in datadir)
This file placeholds GTID between MySQL restarts
 
 
227
/
262
State Transfer: grastate.dat
When MySQL starts it checks 㫞㫟㫘㫠㫡㫘㫡㫜㫗㫛㫘㫡 file (in datadir)
This file placeholds GTID between MySQL restarts
Contains UUID and Seqno
 
 
228
/
262
State Transfer: grastate.dat
When MySQL starts it checks 㫞㫟㫘㫠㫡㫘㫡㫜㫗㫛㫘㫡 file (in datadir)
This file placeholds GTID between MySQL restarts
Contains UUID and Seqno
㫕㫔㫗㫖㫗㫖㫗㫖㫔㫠㫘㫣㫜㫛㫔㫠㫡㫘㫡㫜
㫣㫜㫟㫠㫠㫜㫛㫣㫔㫛㫗㫚
㫢㫢㫠㫛㫣㫔㫔㫔㫔㫛㫙㫛㫞㫘㫚㫙㫝㫖㫞㫚㫘㫛㫖㫚㫚㫜㫞㫖㫡㫙㫢㫘㫖㫜㫛㫠㫢㫘㫟㫡㫛㫞㫝㫙㫠
㫠㫜㫞㫛㫜㫣㫔㫔㫔㫚㫝㫙㫙㫚
㫚㫜㫟㫡㫘㫠㫛㫛㫜㫥㫣
 
 
229
/
262
State Transfer: grastate.dat
When MySQL starts it checks 㫞㫟㫘㫠㫡㫘㫡㫜㫗㫛㫘㫡 file (in datadir)
This file placeholds GTID between MySQL restarts
Contains UUID and Seqno
㫕㫔㫗㫖㫗㫖㫗㫖㫔㫠㫘㫣㫜㫛㫔㫠㫡㫘㫡㫜
㫣㫜㫟㫠㫠㫜㫛㫣㫔㫛㫗㫚
㫢㫢㫠㫛㫣㫔㫔㫔㫔㫛㫙㫛㫞㫘㫚㫙㫝㫖㫞㫚㫘㫛㫖㫚㫚㫜㫞㫖㫡㫙㫢㫘㫖㫜㫛㫠㫢㫘㫟㫡㫛㫞㫝㫙㫠
㫠㫜㫞㫛㫜㫣㫔㫔㫔㫚㫝㫙㫙㫚
㫚㫜㫟㫡㫘㫠㫛㫛㫜㫥㫣
node shutdown cleanly
 
 
230
/
262
grastate.dat - example
㫕㫔㫗㫖㫗㫖㫗㫖㫔㫠㫘㫣㫜㫛㫔㫠㫡㫘㫡㫜
㫣㫜㫟㫠㫠㫜㫛㫣㫔㫛㫗㫚
㫢㫢㫠㫛㫣㫔㫔㫔㫔㫛㫙㫛㫞㫘㫚㫙㫝㫖㫞㫚㫘㫛㫖㫚㫚㫜㫞㫖㫡㫙㫢㫘㫖㫜㫛㫠㫢㫘㫟㫡㫛㫞㫝㫙㫠
㫠㫜㫞㫛㫜㫣㫔㫔㫔㫖㫚
㫚㫜㫟㫡㫘㫠㫛㫛㫜㫥㫣
 
 
231
/
262
grastate.dat - example
㫕㫔㫗㫖㫗㫖㫗㫖㫔㫠㫘㫣㫜㫛㫔㫠㫡㫘㫡㫜
㫣㫜㫟㫠㫠㫜㫛㫣㫔㫛㫗㫚
㫢㫢㫠㫛㫣㫔㫔㫔㫔㫛㫙㫛㫞㫘㫚㫙㫝㫖㫞㫚㫘㫛㫖㫚㫚㫜㫞㫖㫡㫙㫢㫘㫖㫜㫛㫠㫢㫘㫟㫡㫛㫞㫝㫙㫠
㫠㫜㫞㫛㫜㫣㫔㫔㫔㫖㫚
㫚㫜㫟㫡㫘㫠㫛㫛㫜㫥㫣
node is running or did not shutdown cleanly
 
 
232
/
262
grastate.dat - example
㫕㫔㫗㫖㫗㫖㫗㫖㫔㫠㫘㫣㫜㫛㫔㫠㫡㫘㫡㫜
㫣㫜㫟㫠㫠㫜㫛㫣㫔㫛㫗㫚
㫢㫢㫠㫛㫣㫔㫔㫔㫔㫙㫙㫙㫙㫙㫙㫙㫙㫖㫙㫙㫙㫙㫖㫙㫙㫙㫙㫙㫙㫙㫙㫙㫖㫙㫙㫙㫙㫙㫙㫙㫙㫙㫙㫙㫙㫔㫔㫔㫔㫔㫔㫔㫔㫔
㫠㫜㫞㫛㫜㫣㫔㫔㫔㫖㫚
㫚㫜㫟㫡㫘㫠㫛㫛㫜㫥㫣
 
 
233
/
262
grastate.dat - example
㫕㫔㫗㫖㫗㫖㫗㫖㫔㫠㫘㫣㫜㫛㫔㫠㫡㫘㫡㫜
㫣㫜㫟㫠㫠㫜㫛㫣㫔㫛㫗㫚
㫢㫢㫠㫛㫣㫔㫔㫔㫔㫙㫙㫙㫙㫙㫙㫙㫙㫖㫙㫙㫙㫙㫖㫙㫙㫙㫙㫙㫙㫙㫙㫙㫖㫙㫙㫙㫙㫙㫙㫙㫙㫙㫙㫙㫙㫔㫔㫔㫔㫔㫔㫔㫔㫔
㫠㫜㫞㫛㫜㫣㫔㫔㫔㫖㫚
㫚㫜㫟㫡㫘㫠㫛㫛㫜㫥㫣
node aborted, SST on next restart
 
 
234
/
262
State Transfer: IST
When a node starts, it knowns the UUID of the cluster it belonged and
the last sequence number it applied.
So, it sends that position to the other members of the cluster and if a
node can send the next events (ws/trx), IST will be performed, if none,
then SST will be triggered.
 
 
235
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
 
 
236
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
 
 
237
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
used to store the writesets in circular buffer style
 
 
238
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
used to store the writesets in circular buffer style
default size is 128M
 
 
239
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
used to store the writesets in circular buffer style
default size is 128M
can be increase via provider option 㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜
 
 
240
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
used to store the writesets in circular buffer style
default size is 128M
can be increase via provider option 㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜
㫤㫠㫟㫜㫝㫘㫝㫟㫜㫣㫠㫛㫜㫟㫘㫜㫝㫡㫠㫜㫛㫠㫔㫖㫔㫔㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜㫖㫚㫗㫔
 
 
241
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
used to store the writesets in circular buffer style
default size is 128M
can be increase via provider option 㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜
㫤㫠㫟㫜㫝㫘㫝㫟㫜㫣㫠㫛㫜㫟㫘㫜㫝㫡㫠㫜㫛㫠㫔㫖㫔㫔㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜㫖㫚㫗㫔
Galare Cache is mmaped (I/O buffered to memory)
 
 
242
/
262
Galera Cache
Those events are stored on the 㫞㫘㫙㫜㫟㫘㫗㫚㫘㫚㫟㫜 file.
preallocated file with a specific size
used to store the writesets in circular buffer style
default size is 128M
can be increase via provider option 㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜
㫤㫠㫟㫜㫝㫘㫝㫟㫜㫣㫠㫛㫜㫟㫘㫜㫝㫡㫠㫜㫛㫠㫔㫖㫔㫔㫞㫚㫘㫚㫟㫜㫗㫠㫠㫚㫜㫖㫚㫗㫔
Galare Cache is mmaped (I/O buffered to memory)
㫤㫠㫟㫜㫝㫘㫙㫜㫚㫘㫙㫘㫚㫘㫚㫟㫜㫛㫘㫛㫜㫤㫛㫡㫜 provide the first seqno present in
the cache for that node
 
 
243
/
262
Galera Cache & IST
 
 
244
/
262
Galera Cache & IST
 
 
245
/
262
Galera Cache & IST
 
 
246
/
262
Galera Cache & IST
 
 
247
/
262
Galera Cache & IST
 
 
248
/
262
Galera Cache & IST
 
 
249
/
262
Galera Cache & IST
 
 
250
/
262
Galera Cache & IST
 
 
251
/
262
Galera Cache & IST
 
 
252
/
262
Galera Cache & IST
 
 
253
/
262
Galera Cache & IST
 
 
254
/
262
Galera Cache & IST
 
 
255
/
262
Galera Cache & IST
 
 
256
/
262
Galera Cache & IST
 
 
257
/
262
Galera Cache & IST
 
 
258
/
262
Galera Cache & IST
 
 
259
/
262
Galera Cache & IST
 
 
260
/
262
Galera Cache & IST
 
 
261
/
262
Thank you !
 
 
262
/
262

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

ClickHouse Keeper
ClickHouse KeeperClickHouse Keeper
ClickHouse Keeper
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera ) Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
 
PostgreSQL Replication High Availability Methods
PostgreSQL Replication High Availability MethodsPostgreSQL Replication High Availability Methods
PostgreSQL Replication High Availability Methods
 
Introducing Galera 3.0
Introducing Galera 3.0Introducing Galera 3.0
Introducing Galera 3.0
 
Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1Galera Cluster Best Practices for DBA's and DevOps Part 1
Galera Cluster Best Practices for DBA's and DevOps Part 1
 
Planning for Disaster Recovery (DR) with Galera Cluster
Planning for Disaster Recovery (DR) with Galera ClusterPlanning for Disaster Recovery (DR) with Galera Cluster
Planning for Disaster Recovery (DR) with Galera Cluster
 
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison
 
Achieving compliance With MongoDB Security
Achieving compliance With MongoDB Security Achieving compliance With MongoDB Security
Achieving compliance With MongoDB Security
 
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdfDeep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
 
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docxKeepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
 
PostgreSQL9.3 Switchover/Switchback
PostgreSQL9.3 Switchover/SwitchbackPostgreSQL9.3 Switchover/Switchback
PostgreSQL9.3 Switchover/Switchback
 
PostgreSQL replication
PostgreSQL replicationPostgreSQL replication
PostgreSQL replication
 
Integration of neutron, nova and designate how to use it and how to configur...
Integration of neutron, nova and designate  how to use it and how to configur...Integration of neutron, nova and designate  how to use it and how to configur...
Integration of neutron, nova and designate how to use it and how to configur...
 
The Full MySQL and MariaDB Parallel Replication Tutorial
The Full MySQL and MariaDB Parallel Replication TutorialThe Full MySQL and MariaDB Parallel Replication Tutorial
The Full MySQL and MariaDB Parallel Replication Tutorial
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
 
MariaDB MaxScale
MariaDB MaxScaleMariaDB MaxScale
MariaDB MaxScale
 
Transaction Management on Cassandra
Transaction Management on CassandraTransaction Management on Cassandra
Transaction Management on Cassandra
 
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdfProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
 
MySQL GTID Concepts, Implementation and troubleshooting
MySQL GTID Concepts, Implementation and troubleshooting MySQL GTID Concepts, Implementation and troubleshooting
MySQL GTID Concepts, Implementation and troubleshooting
 
Gluster containers!
Gluster containers!Gluster containers!
Gluster containers!
 

Destaque

Destaque (18)

Advanced percona xtra db cluster in a nutshell... la suite plsc2016
Advanced percona xtra db cluster in a nutshell... la suite plsc2016Advanced percona xtra db cluster in a nutshell... la suite plsc2016
Advanced percona xtra db cluster in a nutshell... la suite plsc2016
 
Percon XtraDB Cluster in a nutshell
Percon XtraDB Cluster in a nutshellPercon XtraDB Cluster in a nutshell
Percon XtraDB Cluster in a nutshell
 
OpenWorld 2014 - Schema Management: versioning and automation with Puppet and...
OpenWorld 2014 - Schema Management: versioning and automation with Puppet and...OpenWorld 2014 - Schema Management: versioning and automation with Puppet and...
OpenWorld 2014 - Schema Management: versioning and automation with Puppet and...
 
devops Days Belgium Ghent 2016
devops Days Belgium Ghent 2016devops Days Belgium Ghent 2016
devops Days Belgium Ghent 2016
 
Webinar manage MySQL like a devops sysadmin
Webinar manage MySQL like a devops sysadminWebinar manage MySQL like a devops sysadmin
Webinar manage MySQL like a devops sysadmin
 
Undelete (and more) rows from the binary log
Undelete (and more) rows from the binary logUndelete (and more) rows from the binary log
Undelete (and more) rows from the binary log
 
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
 
MySQL 5.7 & JSON - Nouvelles opportunités pour les dévelopeurs
MySQL 5.7 & JSON - Nouvelles opportunités pour les dévelopeursMySQL 5.7 & JSON - Nouvelles opportunités pour les dévelopeurs
MySQL 5.7 & JSON - Nouvelles opportunités pour les dévelopeurs
 
MySQL Group Replicatio in a nutshell - MySQL InnoDB Cluster
MySQL Group Replicatio  in a nutshell - MySQL InnoDB ClusterMySQL Group Replicatio  in a nutshell - MySQL InnoDB Cluster
MySQL Group Replicatio in a nutshell - MySQL InnoDB Cluster
 
OSS4B: Installing & Managing MySQL like a real devops
OSS4B: Installing & Managing MySQL like a real devopsOSS4B: Installing & Managing MySQL like a real devops
OSS4B: Installing & Managing MySQL like a real devops
 
Haute disponibilité my sql avec group réplication
Haute disponibilité my sql avec group réplicationHaute disponibilité my sql avec group réplication
Haute disponibilité my sql avec group réplication
 
MySQL High Availability with Group Replication
MySQL High Availability with Group ReplicationMySQL High Availability with Group Replication
MySQL High Availability with Group Replication
 
MySQL InnoDB Cluster - Group Replication
MySQL InnoDB Cluster - Group ReplicationMySQL InnoDB Cluster - Group Replication
MySQL InnoDB Cluster - Group Replication
 
Galera cluster for MySQL - Introduction Slides
Galera cluster for MySQL - Introduction SlidesGalera cluster for MySQL - Introduction Slides
Galera cluster for MySQL - Introduction Slides
 
SQL window functions for MySQL
SQL window functions for MySQLSQL window functions for MySQL
SQL window functions for MySQL
 
MySQL 8.0: Common Table Expressions
MySQL 8.0: Common Table Expressions MySQL 8.0: Common Table Expressions
MySQL 8.0: Common Table Expressions
 
MySQL Group Replication
MySQL Group ReplicationMySQL Group Replication
MySQL Group Replication
 
How Booking.com avoids and deals with replication lag
How Booking.com avoids and deals with replication lagHow Booking.com avoids and deals with replication lag
How Booking.com avoids and deals with replication lag
 

Semelhante a Galera Replication Demystified: How Does It Work?

Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
DataStax
 

Semelhante a Galera Replication Demystified: How Does It Work? (20)

MySQL Cluster Basics
MySQL Cluster BasicsMySQL Cluster Basics
MySQL Cluster Basics
 
Akka Cluster in Production
Akka Cluster in ProductionAkka Cluster in Production
Akka Cluster in Production
 
Percona XtraDB 集群文档
Percona XtraDB 集群文档Percona XtraDB 集群文档
Percona XtraDB 集群文档
 
How to understand Galera Cluster - 2013
How to understand Galera Cluster - 2013How to understand Galera Cluster - 2013
How to understand Galera Cluster - 2013
 
Galera Cluster 3.0 Features
Galera Cluster 3.0 FeaturesGalera Cluster 3.0 Features
Galera Cluster 3.0 Features
 
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
 
Cassandra multi-datacenter operations essentials
Cassandra multi-datacenter operations essentialsCassandra multi-datacenter operations essentials
Cassandra multi-datacenter operations essentials
 
2014 OSDC Talk: Introduction to Percona XtraDB Cluster and HAProxy
2014 OSDC Talk: Introduction to Percona XtraDB Cluster and HAProxy2014 OSDC Talk: Introduction to Percona XtraDB Cluster and HAProxy
2014 OSDC Talk: Introduction to Percona XtraDB Cluster and HAProxy
 
MySQL Galera 集群
MySQL Galera 集群MySQL Galera 集群
MySQL Galera 集群
 
Maximum Overdrive: Tuning the Spark Cassandra Connector
Maximum Overdrive: Tuning the Spark Cassandra ConnectorMaximum Overdrive: Tuning the Spark Cassandra Connector
Maximum Overdrive: Tuning the Spark Cassandra Connector
 
Apache Cassandra multi-datacenter essentials
Apache Cassandra multi-datacenter essentialsApache Cassandra multi-datacenter essentials
Apache Cassandra multi-datacenter essentials
 
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
 
The Apache Cassandra ecosystem
The Apache Cassandra ecosystemThe Apache Cassandra ecosystem
The Apache Cassandra ecosystem
 
Oss4b - pxc introduction
Oss4b   - pxc introductionOss4b   - pxc introduction
Oss4b - pxc introduction
 
Data correlation using PySpark and HDFS
Data correlation using PySpark and HDFSData correlation using PySpark and HDFS
Data correlation using PySpark and HDFS
 
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly Available
 
Mikro tik
Mikro tikMikro tik
Mikro tik
 
CKA Certified Kubernetes Administrator Notes
CKA Certified Kubernetes Administrator Notes CKA Certified Kubernetes Administrator Notes
CKA Certified Kubernetes Administrator Notes
 
Online Analytics with Hadoop and Cassandra
Online Analytics with Hadoop and CassandraOnline Analytics with Hadoop and Cassandra
Online Analytics with Hadoop and Cassandra
 
My sql fabric ha and sharding solutions
My sql fabric ha and sharding solutionsMy sql fabric ha and sharding solutions
My sql fabric ha and sharding solutions
 

Mais de Frederic Descamps

Mais de Frederic Descamps (20)

MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
 
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
MySQL Day Roma - MySQL Shell and Visual Studio Code ExtensionMySQL Day Roma - MySQL Shell and Visual Studio Code Extension
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
 
RivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL Indexes and HistogramsRivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL Indexes and Histograms
 
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdfRivieraJUG - MySQL 8.0 - What's new for developers.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
 
MySQL User Group NL - MySQL 8
MySQL User Group NL - MySQL 8MySQL User Group NL - MySQL 8
MySQL User Group NL - MySQL 8
 
State of the Dolphin - May 2022
State of the Dolphin - May 2022State of the Dolphin - May 2022
State of the Dolphin - May 2022
 
Percona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodePercona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio Code
 
Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database SystemPercona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database System
 
Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL Architectures
 
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
LinuxFest Northwest 2022 - The Evolution of a MySQL Database SystemLinuxFest Northwest 2022 - The Evolution of a MySQL Database System
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
 
Open Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and HistogramsOpen Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and Histograms
 
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
Pi Day 2022 -  from IoT to MySQL HeatWave Database ServicePi Day 2022 -  from IoT to MySQL HeatWave Database Service
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
 
Confoo 2022 - le cycle d'une instance MySQL
Confoo 2022  - le cycle d'une instance MySQLConfoo 2022  - le cycle d'une instance MySQL
Confoo 2022 - le cycle d'une instance MySQL
 
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
 
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0
 
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0
 
State of The Dolphin - May 2021
State of The Dolphin - May 2021State of The Dolphin - May 2021
State of The Dolphin - May 2021
 
MySQL Shell for DBAs
MySQL Shell for DBAsMySQL Shell for DBAs
MySQL Shell for DBAs
 
Deploying Magento on OCI with MDS
Deploying Magento on OCI with MDSDeploying Magento on OCI with MDS
Deploying Magento on OCI with MDS
 
MySQL Router REST API
MySQL Router REST APIMySQL Router REST API
MySQL Router REST API
 

Último

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Último (20)

AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 

Galera Replication Demystified: How Does It Work?