YSQL Development Fundamentals Training Recap – Feb 25, 2021
Yesterday we delivered our free “YSQL Development Fundamentals” community training and certification class. A special thanks to Karen Tamrazyan and a variety of Meetup groups for hosting and helping promote the event! If you weren’t able to make it, here’s what you missed…
Course Content
In this 90 min training aimed at beginner and intermediate SQL developers, we’ll covered the following topics:
- YugabyteDB Architecture Review
- Local 3-Node Installation
- Basic Administration
- Installing a Sample Database
- Configuring Graphical SQL Development Tools
- Working with the YSQL Shell
- Schemas and Databases
- Table Management
- Data Types
- Data Manipulation
- Queries
- Joins
We worked through almost 80 exercises that showed how developers can immediately leverage their PostgreSQL knowledge and apply it to YugabyteDB. Check out this post to learn more about why it’s straightforward to apply PostgreSQL knowledge to YugabyteDB: “Why We Built YugabyteDB by Reusing the PostgreSQL Query Layer”
Missed the Training and Certification Exam?
If you missed the YSQL Development Fundamentals Training, no problem. Join us on the YugabyteDB Community Slack and tag me: @Jimmy G (YB) in the #training channel and I’ll get you set up with everything you need.
If you are brand new to distributed SQL and want to start with the basics, check out the “YugabyteDB Fundamentals” course and certification exam. You can take the course online on Udemy and take the certification exam afterwards.
To see all of the training opportunities offered, visit the Yugabyte University page.
Certification Results
Congratulations to Hartanto Ario Widjaya for being the first community member to pass the exam with a near perfect score. Well done!
On a scale of 1 to 5, with 1 being easy and 5 being very difficult, the average response rated the exam a 3.8. This tells us it was a moderately challenging exam for many folks, so some careful studying is required in order to pass. We did, however, provide all attendees with a study guide to make the preparation for the exam a lot easier. Good luck to those who are gearing up to take the exam in the coming days.
Questions and Answers
We had quite a few questions pop up during and after the training. I wasn’t able to get to all the questions in real time, so I wanted to recap a few of them in this blog post.
What is YugabyteDB?
Yugabyte is the company behind the open source YugabyteDB project.
YugabyteDB is an open source, high-performance distributed SQL database built on a scalable and fault-tolerant design inspired by Google Spanner. YugabyteDB is PostgreSQL wire compatible, cloud native, and supports advanced RDBMS features like stored procedures, triggers, and UDFs.
Yugabyte is the name of the company, but where does the name come from?
Yuga in Sanskrit represents an era or an epoch (about 4.32 million human years), which is a very long period of time! We picked the name Yugabyte to signify data that lives forever and without limits.
Can we migrate from an existing database to YugabyteDB?
Yes. If you are currently using PostgreSQL, it is a fairly straightforward process to migrate to YugabyteDB. Why? YugabyteDB is PostgreSQL compatible so the vast majority of the SQL syntax is supported right out-of-the-box. If you are thinking about migrating from SQL Server, MySQL, or Oracle the complexity of switching will be very similar to as if you were making the move to PostgreSQL. So, if your application is making use of very specific features or syntax that you can’t find in PostgreSQL, then you’ll have to factor that in.
For more information on migration best practices, check out the Migrate section in the Docs.
What tools are the most recommended to migrate data?
In general, if you can get your data into a CSV file you can use the normal COPY command to get the data into YugabyteDB.
Does Yugabyte support data warehousing workloads?
Generically, OLAP is not the best use case for YugabyteDB. YugabyteDB offers two APIs.
YSQL is a fully-relational SQL API that is wire compatible with the SQL language in PostgreSQL. It is best fit for RDBMS workloads that need horizontal write scalability and global data distribution while also using relational modeling features such as JOINs, distributed transactions and referential integrity (such as foreign keys).
YCQL is a semi-relational SQL API that is best fit for internet-scale OLTP and HTAP apps needing massive write scalability as well as blazing-fast queries. It supports distributed transactions, strongly consistent secondary indexes and a native JSON column type. YCQL has its roots in the Cassandra Query Language.
Does Yugabyte support something similar to Oracle Packages?
At the moment neither PostgreSQL nor YugabyteDB support an equivalent to Oracle Packages.
Which driver should I use if I am developing applications in .Net?
Npgsql should be the driver to use. More info, check out the Docs concerning drivers.
Can YugabyteDB be installed on Windows?
YugabyteDB can run on Mac, Linux, Kubernetes and Docker. So, if your Windows machine can emulate or run the options listed, you should be able to install YugabyteDB. Of course, YugabyteDB supports all the major public clouds including AWS, GCP, and Azure.
Where can I learn more about YugabyteDB’s architecture?
Check out the Architecture section in the Docs. It contains in-depth details on how the YugabyteDB distributed SQL database is designed and how it can deliver strong consistency, high performance, resilience and horizontal scalability in a single systems
What’s next?
The next training and certification in this series is happening on April 22. Make sure to reserve your spot early!
YugabyteDB YSQL Development Intermediate Certification and Training