
In this lecture you will meet your instructor, get a course overview, get answers to common questions about the course and review the technical prerequisites.
Explore YugabyteDB, an open source distributed SQL database inspired by Google Spanner, with PostgreSQL compatibility, cloud native design, and features like stored procedures, triggers, and UDS.
Explore YugabyteDB architecture, including the query layer with a YSQL API and a PostgreSQL-compatible API, and a RocksDB-based storage layer with document storage, sharding, raft consensus, and distributed asset transactions.
Identify two YugabyteDB services: the tablet server that hosts data, and the YV master service that stores cluster metadata, and understand how they form the data and control layers.
Discover how the YB-TServer service hosts and serves data, with tables split into tablets (shards) that are synchronously replicated to form a raft group with a leader and followers.
Explore the master service that manages system metadata and tracks tables, tablets, nodes, and clusters, coordinating backups and load balancing while enabling create and drop table operations.
Explore query layer where query and command compilation occur, along with data type representations, the statement cache for prepared statements, and access via the Y Eskil API and Y sequel.
Explore the YSQL API in YugabyteDB, a PostgreSQL-compatible interface designed for relational workloads with scale-out resilience, geographic distribution, and features like foreign keys, joins, distributed transactions, and triggers.
Explore strongly consistent secondary indexes for fast lookups and unique value enforcement, collocated tables for efficient sharding, and change data capture to publish changes to Kafka.
In this demo we'll show you how to install a local, single node YugabyteDB cluster using the yugabyted utility.
For additional info, check out: https://download.yugabyte.com/
In this demo we'll show you how to install a local, 3-node YugabyteDB cluster using the yb-ctl utility.
For additional info, check out: https://docs.yugabyte.com/latest/admin/yb-ctl/
In this demo we'll show you how to install a 3-node YugabyteDB cluster on Google Kubernetes Engine using helm.
For additional info, check out: https://docs.yugabyte.com/latest/deploy/kubernetes/single-zone/gke/helm-chart/
In this demo we'll show you how to navigate the YugabyteDB web UI. If you performed a local install, you can access the UI at:
http://127.0.0.1:7000/
For additional info, check out: https://docs.yugabyte.com/latest/quick-start/create-local-cluster/macos/
In this demo we'll show you how to install the Northwind sample database.
For additional info, check out: https://docs.yugabyte.com/latest/sample-data/northwind/
In this demo we'll show you how to configure DBeaver, a free database administration tool to work with YugabyteDB.
For additional info, check out: https://dbeaver.io/
In this demo we'll show you how to create databases, schemas and call external files. You'll notice the workflow and syntax is identical to PostgreSQL.
In this demo we'll show you how to create a function that counts the number of rows in a table and accepts a table name as a parameter. You'll notice the workflow and syntax is identical to PostgreSQL.
In this demo we'll show you how to audit changes to data using a trigger that is called whenever someone changes the name of a customer. You'll notice the workflow and syntax is identical to PostgreSQL.
In this demo we'll show you how create, alter and drop users. You'll notice the workflow and syntax is identical to PostgreSQL.
Explore a benchmarking overview and run the TPK benchmark against a Yaqoubi cluster, loading 10 warehouses on a 3-node setup, and inspect the CSV output.
This course will teach you the core concepts of distributed SQL and what makes it different from monolithic databases like Oracle, SQL Server PostgreSQL and MySQL. Through lectures and hands-on exercises you'll develop the knowledge and skills to configure and get started with YugabyteDB. Over the span of 90 minutes we'll covered the following topics in-depth:
Distributed SQL terms, definitions, and comparisons
YugabyteDB architecture and design principles
YSQL API development
Course review and exam prep
We also worked through a variety of hands-on exercises including:
Single and multi-node cluster installs on Mac, Linux, and Kubernetes
JDBC connectivity
User management and basic security
Working with databases and schemas
Creating objects and loading data from external files
Creating and exploring a sample database
Creating functions and triggers
Setting up admin tools like pgAdmin, TablePlus, and DBeaver
Using a Java load generator
Testing fault tolerance (remove node, add node, rebalancing)
TPC-C benchmarking