We had an amazing response to our Call for Papers for Percona Live Europe, offering talks of incredible breadth and depth. Our European open source database conference rivals its North American cousin in the number and quality of submissions, which has made it an incredibly tough job for the volunteer Committee – thank you, again – and the Percona team to put together the schedule. The hardest job has been deciding which talks we could afford to leave out when the quality is so high.
The full agenda will be published towards the end of next week, but in the meantime here’s just a peek at the talks we have in store. If you would like to attend, you only have until August 9 to get tickets at the lowest price, currently just €525 + VAT for all three days: a full day of tutorials plus two days of conference. Don’t miss out, registration is open now.
Here’s a taste of what’s in store from September 30 to October 2 in Amsterdam.
Lessons From Building Automation for a Large Distributed Database
Ameet Kotian and Leigh Johnson, Slack
Automation is a critical investment when scaling infrastructure operations. If you delay automating, your company’s growth will end up supported by a mountain of human toil.
Ameet (below, left) and Leigh (below, right) will outline the natural evolution of automation software. They believe at-scale automation software has the same sets of rigorous requirements as any other production software, but there are easily identifiable patterns common to automation software.
Once such an automation framework is available, you can build a self-healing infrastructure on top of it by feeding it reliable and robust failure signals.
Large Scale Deployment of SSL/TLS For MySQL
Daniël van Eeden, Booking.com
Deploying SSL/TLS with MySQL at Booking.com on thousands of servers is not without issues. In this session, Daniël will tell you what steps they took, what problems they hit, and how they improved various parts of the MySQL ecosystem while doing so. To start he’ll go over the basics, and then start to address some of the problems that were encountered inside MySQL, inside connectors, and with the tools that are used to maintain and manage MySQL databases.
Running ElasticSearch at Large Scale
Alex Cercel, Palantir Technologies
ElasticSearch is a high performance search engine based on Apache Lucene. It is growing in popularity which means that more and more users are running part of their search patterns against the information stored on this datastore. However, it’s quite difficult to find a comprehensive set of best practices that will assist in efficiently running large scale clusters. In this talk, Alex will cover tuning parameters and approaches that will help you to run fast, efficient, and well-written queries on stable, perfomant clusters. He’ll offer tips and tricks based on his experience that will help you to make some informed choices when building your own large scale cluster.
MongoDB Data Security – Custom Rules and Views
Adamo Tonete, Percona
In this presentation, Adamo will discuss how to create custom rules when MongoDB’s default rules are not enough for the application. Have you needed to give a more permissive rule to a user just because this user wanted to run a specific command? This is what the talk will address.
Also, he’ll talk about how to use views to hide fields from users when you want to prevent them from viewing the whole of a collection. If you have concerns about MongoDB security, you should come to this talk.
Tutorial: Introduction to PL/pgSQL Development
Jim Mlodgenski, AWS
When developing against a PostgreSQL database, many times you will use SQL from your applications, but sometimes you need more. You might need to run some of your logic on the database server for performance or you may want to just create some server-side functions to simplify your application development. There is an infinite number of reasons why you would want to write some code that runs on the PostgreSQL server and PostgreSQL has a rich set of options when you want to do that, but most times, you will use PL/pgSQL. The primary objective of this tutorial is to introduce you to the PostgreSQL PL/pgSQL programming language and to give you the practical skills to be a productive developer working with PostgreSQL databases.
How to Protect PII data in MySQL While Allowing Customers to Access the Database
Alexander Rubin, VirtualHealth
Protecting PII data is one of the biggest challenges of a security-minded DBA. But when you add a requirement to allow customers to have direct access to a database replica, it will make the life of a DBA a nightmare. VirtualHealth deals with medical data. In this talk, Alexander shares his experience of how to implement customer authentication, authorization, and data isolation in MySQL.
Our journey to better MySQL availability using Global Transaction IDs, ProxySQL and Consul
Stéphane Combaudon and Yuriy Olshanetsky, Rakuten Intelligence
Data is core to business at Rakuten Intelligence. While databases not being available can hurt the company badly, the system was not initially designed with MySQL high availability in mind. Each MySQL master switch involved stopping and restarting applications, which at some point was no longer a valid option.
No existing HA solution worked well, so they focused on implementing the glue between existing bricks, the main ones being: ProxySQL (connection management between the applications and MySQL), Consul (service discovery), and MySQL GTIDs (easy tracking of transactions across servers).
Stéphane (below, left) and Yuriy (below, right) will share their failures and how they incrementally improved their system to reach their availability goals.
Strength in Numbers: Slack’s Database Architecture
Josh Varner and Guido Iaquinti, Slack
Traditionally, database reliability has focused heavily on the stability of a single server or a small number of servers. At Slack, however, they’ve built a database architecture that instead focuses on an approach of strength in numbers. The team has designed this architecture to allow failures to happen and to limit the effects of those failures instead of attempting to eliminate them entirely. They’ve also built this architecture from the ground up to be cloud-first, and to use the nuances of running databases in the cloud to Slack’s advantage.
In this talk, Josh (below, left) and Guido (below, right) will review the architecture, specifically focusing on their Vitess infrastructure. Vitess currently handles nearly half of Slack’s database traffic. They’ll talk about how we’ve built this system to withstand common failures and continue to perform at our scale.
MySQL Shell : the best DBA tool?
Frédéric Descamps, Oracle
MySQL Shell 8.0.17 has been released with a new extension framework. Join this session to discover how to write your own extension. Frédéric (“LeFred”) will also give you an overview of several useful extensions, how to find them, and how to install them. Finally, he’ll show you how to create your own.