Exploring the Fundamentals of YugabyteDB - Mydbops MyWebinar Edition 25
Join us for an enlightening journey into the world of YugabyteDB, a distributed SQL database revolutionizing data management. In this webinar presentation, we delve into the challenges faced by traditional databases, explore the architecture and unique features of YugabyteDB, and showcase its seamless scalability and fault tolerance.
Watch the full recording: https://youtu.be/QtvK-apLBwQ
Visit Mydbops Blogs: https://www.mydbops.com/blog/
3. Services on top open source databases
•
Founded in 2016
•
90 Member team
•
Assisted over 500+ Customers
•
AWS Partner, ISO and a PCI Certified Organisation
•
About Mydbops
19. What is YugabyteDB
YugabyteDB is a high-performance distributed SQL
database for powering
global, internet-scale applications. Built using a unique
combination of
document store, per-shard distributed consensus
replication and multi-shard ACID transactions
(inspired by Google Spanner)
20. CAP Theorem and Split Brain
Consistency (C): Every read receives the most recent write or an error. All nodes in the
system see the same data at the same time.
Availability (A): Every request receives a response, without guarantee that it contains the
most recent write.
Partition tolerance (P): The system continues to operate despite network partitions
(communication failures) that prevent some nodes from communicating with others.
21. CAP Theorem and Split Brain
Consistent and Partition Tolerant(CP) Database
•
Architecture is same as google spanner
•
22. CAP Theorem and Split Brain
Split Brain - Data and Availability inconsistency
•
Elects a new leader based on majority
•
Single leader exists throughout the entire system
•
23. Consensus Algorithm
RAFT Consensus Algorithm
•
Equivalent to Paxos in fault tolerance and performance
•
Used to achieve consensus among leader and followers in tablet peer group and Master
servers
•
24. Key Components
Nodes - Servers/VMs
•
Group of nodes - Cluster/Universe
•
Primary Cluster and Read Replica Cluster
•
3+ nodes forms a cluster (Replication Factor)
•
Synchronous replication with in a primary cluster
•
Asynchronous Replication from primary to read replicas.
•
27. Architecture - YQL Layer
YQL Layer
•
Application interacts directly with this layer
•
Supports two types of distributed SQL API
•
YSQL
•
YCQL
•
28. Architecture - YB-TServer Service
Responsible for the input-output(I/O) for the application
•
Data for a table is split(Shared) into tablets
•
Each tablet will have copy of 1 or more
•
30. Architecture - YB-Master Service
Keeps the system metadata and records
•
Tables and location of their tablets
•
Responsible for coordinating background operations
•
33. Universe Creation
First start YB-Masters
•
Sufficient number of YB-Masters
•
Each start with own UUID and perform an election
•
One of the masters establishes as a leader
•
41. Write IO Path
User Write Request interact with the YQL query layer
•
This user request is translated into an internal key by the query layer
•
Each key owns by different tablets.
•
YQL query layer make the call to YB master to determine the location of tablet
•
At last, YQL layer then issues the write to the appropriate YB-T server hosting the tablet
leader
•
43. Read IO Path
User Read Request interact with the YQL query layer
•
This user request is translated into an internal key by the query layer
•
YQL query layer make the call to YB master to determine the location of tablet and the
YB-Tserver hosting it
•
At last, YQL layer then issues the read to the appropriate YB-T server hosting the tablet
leader
•