Tutorials Schedule - Monday 23 April 2018

Monday 8:00AM-9:30AM

@ Main Foyer

Registration in Main Foyer

Monday 9:30AM-12:30PM

@ Room 203

Rick Golba - Percona, Adamo Tonete - Percona

This hands-on tutorial is intended to help you navigate your way through the steps that lead to becoming a MongoDB DBA.

You will start by making sure you know about all the reasons to use MongoDB, and what a typical topology looks like for a replica set - including setting up your first one!

We will not talk about sharding in this session (please see the afternoon one for that). Instead, the focus will be on a few areas:

- What is MongoDB
- How different is MongoDB from MySQL?
- The (most) common MongoDB topologies
- CRUD: data management
- Aggregations
- Import/export
- Backups
- Schema design patterns
- Replica Set upgrade
- Securing your setup
- Common issues: How to detect, verify and address them using logs, Percona Toolkit and PMM


MongoDB
 Experience: Beginner
Operations

Monday 9:30AM-12:30PM

@ Room 204

Dimitri Vanoverbeke - Percona, Tom De Cooman - Percona

Do you want to get more familiar with how to become a MySQL DBA? Are you a developer familiar with writing applications that use MySQL, but feel a bit limited on how to manage a MySQL database?

This full-day tutorial will be mainly hands-on. We'll show some slides on each of the various topics presented, but the goal is to have YOU the student work in a MySQL environment as much as possible.

What will we cover? Almost every aspect of being a MySQL DBA,on MySQL 5.7:
- We will install MySQL and configure the right privileges for your system
- Once we have a database running, we will get a better understanding of what our database is doing and look at the different possible diagnostics and monitoring options in MySQL using PMM and other tools.
- We will troubleshoot issues
- We will discuss and try some of the different backup options, since not losing any data is an important goal for a MySQL DBA
- We will clarify and troubleshoot replication


Percona
 Experience: Beginner
Operations

Monday 9:30AM-12:30PM

@ Room E

Jenni Snyder - Yelp

Open source relational databases like MySQL and PostgreSQL power some of the world's largest websites, including Yelp. They can be used out of the box with few adjustments, and rarely require a dedicated Database Administrator (DBA) right away. This means that System Administrators, Site Reliability Engineers, or Developers are usually the first to respond to some of the more interesting issues that can arise as you scale your databases.

In this talk, I'll assume that you already have a database up and running and will first go over a broad set of basics to introduce you to MySQL Database Administration. Next, I will cover the InnoDB storage engine, high performance and availability, monitoring and database defense. Finally, I'll cover the wide array of online resources, books, open source toolkits and scripts from MySQL, Percona and the Open Source community that will make the job easier.

While not hands-on, I'll be encouraging questions and this is expected to be a very interactive tutorial!


MySQL / MariaDB
 Experience: Beginner
Operations

Monday 9:30AM-12:30PM

@ Room F

Frédéric Descamps - Oracle, Kenny Gryp - Percona

During this tutorial, attendees will get their hands on virtual machines and migrate standard Master - Slave architectures to the new MySQL InnoDB Cluster (native Group Replication) with minimal downtime. After explaining what Group Replication is and how it works (the magic behind it), we will experiment with multiple use cases to understand MySQL Group Replication. We will also get the attendees more comfortable with this new technology.

During our experiments, we will try to:
- Cleanly stop a node
- Kill a node
- Re-join a node
- Produce conflicts and see how the cluster behaves
- Create data inconsistency
- Recover from full cluster outage

Finally, we will check how we can integrate MySQL InnoDB Cluster with external routing solutions like ProxySQL. We will also see how to use what the cluster exposes to performance_schema and sys schema to make the right choice.

We will highlight the new improvements made in MySQL 8.0 regarding Group Replication and InnoDB Cluster.


MySQL / MariaDB
 Experience: Beginner
Developer, Operations

Monday 9:30AM-12:30PM

@ Room G

Shlomi Noach - GitHub

Orchestrator is a MySQL topology manager and a failover solution, used in production on many large MySQL installments. It allows for detecting, querying and refactoring complex replication topologies, and provides reliable failure detection and intelligent recovery and promotion.

This practical tutorial focuses on and demonstrates Orchestrator's failure detection and recovery, and provides real-world examples and cookbooks for handling failovers.

Tutorial content:

- Brief introduction to Orchestrator
- Brief overview of basic configuration
- Reliable detection
- The complexity of successful failover
- Orchestrator's approach to failover
- Failover meta: anti-flapping, acknowledgments, auditing, downtime, promotion rules
- Master service discovery schemes: VIP, DNS, Proxy, Consul
- Cookbooks and considerations for master service discovery and for failover configuration

We will run demos in class. As time allows, the attendees may have time for hands-on operations.


MySQL / MariaDB
 Experience: Intermediate
Operations

Monday 9:30AM-12:30PM

@ Room H

René Cannaò - ProxySQL, Derek Downey - Pythian

ProxySQL is an open source proxy for MySQL that is able to provide high availability (HA) and high performance with no changes in the application, using several built-in features and integration with clustering software.

Those are only a few of the features you'll learn about in this hands-on tutorial.


Administration
 Experience: Beginner
Operations

Monday 9:30AM-12:30PM

@ Room M1

Pep Pla Sanz - Pythian, Matthias Crauwels - Pythian

In this hands-on lab, you will learn to troubleshoot and fix common MySQL errors. You will be given a pre-configured EC2 instance to use, so please have an SSH client installed on your laptop. This tutorial is for beginner MySQL database administrators who are comfortable with the command line.

1. Instance Crashes and Hangs
* Basic troubleshooting methods
* Evaluating MySQL and system error messages
* Determining issue causes (OS, filesystem, MySQL configuration, MySQL crashes)
* Recovery methods

2. MySQL Replication
* High-level overview and diagnosing issues
* IO thread and SQL thread issues, relay log corruption, duplicate key errors and data drift
* Recovery methods including checksum and sync

3. Performance Issues and Bottlenecks
* Diagnosing performance issues via OS tools and MySQL utilities
* Determining problems queries and connections
* Reducing contention with MySQL configuration changes and commands
* Troubleshooting memory and NUMA issues


MySQL / MariaDB
 Experience: Beginner
Operations

Monday 9:30AM-12:30PM

@ Room M2

Jignesh Shah - Amazon Web Services

In this training session, we will combine an extended deep dive on the Aurora architecture with a hands on lab using Aurora PostgreSQL. As part of the deep dive we will cover the unique features and changes that work together to produce improved scalability, availability and durability.

In addition, you will get a hands-on experience creating an Aurora PostgreSQL cluster, configuring that cluster for high availability and read scaling as well as point in time recovery, and cloning your cluster. We will also walk through failover, promotion and the best practices around parameter settings based on application workload.


Open Source Databases
 Experience: Intermediate
Developer

Monday 9:30AM-12:30PM

@ Room M3

Rafael Chacon - Slack, Jitendra [Jiten] Vaidya - PlanetScale Inc.

Are you dealing with the challenges of rapid growth? Are you thinking about how to scale your database layer? Should you use NoSQL? Should you shard your relational database? If you are facing these kinds of problems, this tutorial is for you.

Vitess is a database solution for deploying, scaling and managing large clusters of MySQL instances. It's architected to run as effectively in a public or private cloud architecture as it does on dedicated hardware. It combines and extends many important MySQL features with the scalability of a NoSQL database.

By the end of the session, attendees will understand the basics of how to get a Vitess cluster up and running. They will also understand how to perform most of the typical operations you face while running Vitess clusters in a production environment.


MySQL / MariaDB
 Experience: Advanced
Developer, Operations

Monday 12:30PM-1:30PM

@ Terra Courtyard in the Hyatt

Lunch

Monday 1:30PM-4:30PM

@ Room 203

David Murphy - Percona, Barrett Chambers - Percona

This hands-on tutorial is for when a single replica set it not enough. As some people may not have attended the morning session, there will be talks on backup types and import/export patterns. However, these will be extended to also consider sharding.

We will also talk about multiple aspects of sharding and using the right engine for your workload. If you want to know the basics about MongoDB you should also attend the morning session.

What to expect in this session:
- Types of sharding and which MongoDB uses
- Rules for picking a good shard key
- MongoDB engines and how they matter as much as the shard key itself
- Example of a multiple DC data local cluster (GDPR, EU privacy as a reason for it)
- Example of a multiple region cluster for DR
- How to fix things when you pick a bad shard key
- Implementing schema rules to prevent bad actors
- Backup considerations with sharding
- When do you scale up vsx scale out?
- Troubleshooting a cluster, it's easier than you think when you know the rope


MongoDBOpen Source Databases
 Experience: Intermediate
Developer, Operations

Monday 1:30PM-4:30PM

@ Room 204

Dimitri Vanoverbeke - Percona, Tom De Cooman - Percona

Do you want to get more familiar with how to become a MySQL DBA? Are you a developer familiar with writing applications that use MySQL, but feel a bit limited on how to manage a MySQL database?

This full-day tutorial will be mainly hands-on. We'll show some slides on each of the various topics presented, but the goal is to have YOU the student work in a MySQL environment as much as possible.

What will we cover? Almost every aspect of being a MySQL DBA,on MySQL 5.7:
- We will install MySQL and configure the right privileges for your system
- Once we have a database running, we will get a better understanding of what our database is doing and look at the different possible diagnostics and monitoring options in MySQL using PMM and other tools.
- We will troubleshoot issues
- We will discuss and try some of the different backup options, since not losing any data is an important goal for a MySQL DBA
- We will clarify and troubleshoot replication


Percona
 Experience: Beginner
Operations

Monday 1:30PM-4:30PM

@ Room E

Peter Zaitsev - Percona

InnoDB: What you didn't know about the storage engine that powers most of the Web

InnoDB is the most commonly used storage engine for MySQL 8.0 and Percona Server for MySQL, and is the focus for the majority of storage engine development by the MySQL and Percona teams.

In this tutorial, we will look at the InnoDB architecture, including new developments in MySQL 8.0 as well as Percona Server for MySQL. We will explain how InnoDB should be used to get the best performance from your application. We will provide specific advice on server configuration, schema design, application architecture and hardware choices.


Percona
 Experience: Beginner
Developer, Business / Case Studies

Monday 1:30PM-4:30PM

@ Room F

Matthew Boehm - Percona

Getting Percona XtraDB Cluster running is pretty simple these days. But what about after it is running? How do you handle high availability (HA)? How do you handle DDLs? How do you handle backups?

In this short three-hour tutorial, we will cover these aspects and a bit more advanced Percona XtraDB Cluster ideas and practices. We will cover setting up ProxySQL, and using it to handle Percona XtraDB Cluster node failure and recovery.


MySQL / MariaDB
 Experience: Intermediate
Operations

Monday 1:30PM-4:30PM

@ Room G

Gillian Gunson - GitHub, Brian Cain - SurveyMonkey, Mark Filipi - SurveyMonkey

Table migrations remain a pain point for MySQL DBAs. There are more options than ever for running migrations, with the later versions' in-place alters and new third-party tools (like gh-ost). But with the increase in tools and procedures it's been shown that there is no one-size-fits-all tool. Depending on the table size, available disk space, database traffic, server performance and SLAs, some migration methods make more sense than others.

In this tutorial we will discuss and demonstrate the different tools and methods and the best practices and scenarios for each.

Optional Lab Requirements:
- MacOS or Linux laptop (or VM)
- MySQL Sandbox, Percona Toolkit, gh-ost, sysbench
- MySQL 5.7 generic binary (for MySQL Sandbox)

Agenda:

Migration Concepts and Types
- Straight and in-place ALTER TABLE
- Alter on replicas, then promote
- pt-online-schema-change
- gh-ost

Caveats and Best Practices

Lab
- Test each of the migration types in a database cluster


MySQL / MariaDB
 Experience: Intermediate
Operations

Monday 1:30PM-4:30PM

@ Room H

Sveta Smirnova - Percona, Alexander Rubin - Percona

Performance Schema in MySQL is maturing from version to version. It includes extended lock instrumentation, memory usage statistics, new tables for server variables, first time ever instrumentation for user variables, prepared statements and stored routines.

Version 8.0 adds additional variables, replication, error messages, data locks instrumentation. A lot! Amazing! And complicated!

In this tutorial, we will try all these instruments out. We will provide a test environment and a few typical problems that would be difficult to solve before MySQL 5.7. Just few examples:

- "Where is memory going?"
- "Why are these queries hanging?"
- "How huge is the overhead of my stored procedures?"
- "Why are queries waiting for metadata locks?"

You will not only learn how to collect and use this information but will gain practical experience with it. You will also learn many details on how to setup Performance Schema.


MySQL / MariaDB
 Experience: Beginner
Developer, Operations

Monday 1:30PM-4:30PM

@ Room M1

Jean-François Gagné - Booking.com, Eduardo Ortega - Booking.com

This tutorial covers all parallel replication implementation in MariaDB 10.0 and 10.1 and MySQL 5.6, 5.7 and 8.0 (including how it works in Group Replication).

MySQL and MariaDB have different types of parallel replication. In this tutorial, we present the different implementations that allow us to understand their limitations and tuning parameters. We cover how to make parallel replication faster and what to avoid for maximizing its benefits. We also present tests from Booking.com workloads.

Some of the subjects that are covered are group commit and optimistic parallel replication in MariaDB, the parallelism interval of MySQL and its Write Set optimization, and the ?slowing down the master to speed up the slave? optimization.

After this tutorial, you will know everything you need to implement and tune parallel replication in your environment. But more importantly, we will show how you can test parallel replication benefit in a non-disruptive way before deployment.


MySQL / MariaDB
 Experience: Intermediate
Business / Case Studies, Operations

Monday 1:30PM-4:30PM

@ Room M2

Robert Treat - OmniTI

Postgres 10 was one of the most significant releases in years, adding several long-awaited features: Logical Replication, an overhauled Partitioning System, enhanced multi-server management options, improved parallel query support and better support for multi-column statistics, (among other changes).

This tutorial will be split into two parts. The first will provide an overview of where the project is today and a look at many of the new features that came out in Postgres 10. For part two, we will provide a live demonstration of logical replication, and discuss various trade-offs between this new replication option and the other existing solutions.

Attendees are encouraged to bring a laptop with Postgres 10 installed and to play along as we walk through our live demonstrations. This will also give you a good basis for setting up your own experiments to help you get hands-on experience with this new service.


Open Source Databases
 Experience: Intermediate
Developer, Operations

Monday 1:30PM-4:30PM

@ Room M3

Michael Coburn - Percona

This is a hands-on tutorial covers how to set up monitoring for MySQL database servers using the Percona Monitoring and Management (PMM) platform.

PMM is an open-source collection of tools for managing and monitoring MySQL and MongoDB performance. It provides thorough time-based analysis for database servers to ensure that they work as efficiently as possible.

You will learn about:

- MySQL monitoring best practices
- Metrics and time series
- Data collection, management and visualization tools
- Monitoring deployment
- How to use graphs to spot performance issues
- Query analytics
- Alerts
- Trending and capacity planning
- How to monitor HA

Please bring a laptop with the Virtualbox application.


MySQL / MariaDB
 Experience: Beginner
Developer, Operations

Monday 4:30PM-6:30PM

@ Exhibit Hall

Welcoming Reception

Monday 5:00PM-5:20PM

@ Demo Theater in the Exhibit Hall

Emily Slocombe - Square

The MySQL Community Awards initiative is an effort to acknowledge and thank individuals and corporations for their contributions to the MySQL ecosystem. It is a from-the-community, by-the-community and for-the-community effort. Awards are given for Community Contributor, Application, and Corporate Contributor. More information can be found here: http://mysqlawards.org


SurveyMonkey
 Experience: Beginner
Developer, Operations

Monday 5:20PM-5:45PM

@ Demo Theater in the Exhibit Hall

  • Amazon Aurora MySQL and RDS MySQL: Lessons learned
    Mariella Di Giacomo - ViaSat

  • Hiring DBAs from an HR perspective
    Kayla Boyer - Shopify

  • JSON_TABLE - The Best of Both Worlds
    Øystein Grøvlen - Oracle

  • Scaling MySQL with HaProxy
    Laurent Kolakofsky - Indeed.com

  • Using blackhole storage engine as binlog server in master/slave replcation
    Michael Wang - Salesforce

Connect with Percona

Stay Connected on:

Percona Live Conferences

The Percona Live Open Source Database Conferences are the premier event for the diverse and active open source database community, as well as businesses that develop and use open source database software.
 

Contact Us

For general information about the event/expo/conference, including registration, please contact us at:

  • info(@) percona.com
  • +1-888-401-3401
  • +1-919-948-2863
  • 8081 Arco Corporate Drive - Suite 330 - Raleigh, NC 27617, USA