High thanks to all who attended and participated in Percona Live Open Source Database Conference Europe 2019.
A big thank you to our Gold Sponsors AWS and PlanetScale, along with all our other sponsors who made the conference possible. We would also like to extend our thanks to all the speakers who shared their in-depth knowledge with the community.
Percona Live conferences provide the open source database community with an opportunity to discover and discuss the latest trends, technologies and innovations among the best and brightest innovators and influencers in the open source database industry.
KeynotesThe State of Open Source Databases
Peter explores the current topics and trends impacting the database ecosystem, as well as the businesses that run open-source databases as part of their infrastructure. Will cloud-native surpass public cloud usage? How Is the changing licensing around open source going to impact you? What keeps most of your peers up at night? What will impact your business in 2020 and beyond?
The State of the Dolphin
Where are we with MySQL 8.0 one year after GA? How was the journey and how the Community impacted the road map? During this session come to discover our new release way, allowing us to be even closer to users looking for performance, stability and innovation.
Unlocking the Cloud Operating Model
To unlock the fastest path to the value of the cloud, enterprises must consider how to industrialize the application delivery process across each layer of the cloud: embracing the cloud operating model, and tuning people, processes, and tools to it. The essential implication of the transition to the cloud is the shift from static infrastructure to dynamic infrastructure: from a focus on configuration, and management of a static fleet of IT resources, to a focus on provisioning, securing, connecting, and running dynamic resources on demand. In this session, we'll discuss what the Cloud Operating Model means for your enterprise.
Day 2Why Have Efforts to Simplify Led to More Complexity?
A great deal of time and effort goes into making things easier, from simplification through automation, DevOps processes, and the emergence of new technology. Despite the best efforts of our brightest minds, systems still crash, databases are breached (seemingly daily), and smart people still do stupid things. Despite our best efforts, advancements have led to more complexity, less unity, and more confusing options than ever before. Why did this happen and how can we address it?
Postgres: From Respected by DBAs to Loved by Application Developers
Ten years ago, Postgres was a safe and stable database, although not at the same level of user-friendliness or rich feature set as other databases. But, that all started to change as it learned from MySQL and Mongo. We'll examine some of that journey: how it went from being respected by DBAs to beloved by application developers. We'll close with a look at what the next five years may hold.
Day 1 - AMAmazing Sandboxes with dbdeployer
This session shows the basic usage of dbdeployer, before delving into the advanced operations, such as: importing running databases into a sandbox, replicating on-the-fly between single sandboxes, or between groups, or NDB clusters.
More Than a Query Language: SQL in the 21st Century
This talk provides the big picture on the evolution of the SQL standard and introduces some selected modern SQL features by example. You will see that SQL has changed as much as our requirements have changed over the past decades.
MySQL 8.0 Performance : Scalability & Benchmarks
The latest benchmark results obtained with MySQL 8.0 will be in center of the talk because every benchmark workload for MySQL is a headache and "problem to resolve" and each resolved problem is a potential gain in your production.
Our Journey to Better MySQL Availability Using Global Transaction IDs, ProxySQL and Consul
Stephane Combaudon and Yuriy Olshanetsky
Data is core to our business at Rakuten Intelligence. And while databases not being available can hurt us badly, our 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 for us, therefore we 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).
Vitess: Running Sharded MySQL on Kubernetes
Vitess has continued to evolve into a massively scalable sharded solution for the cloud. It's is now used for storing core business data for companies like Slack, Square, JD.com, and many others. This session will cover the high-level features of Vitess with a focus on what makes it cloud-native.
Day 1 – PMMongoDB Data Security - Custom Rules and Views
In this presentation, we will discuss how to create custom rules when the default rules are not enough for the application. Also, we will discuss how to use view for hiding fields from users when we don't want them to read all the collection.
MySQL on Google Cloud: The Good, The Bad, and The Ugly
Running MySQL in the cloud isn't magic - it can be brilliant, but it can also be a real challenge. We'll learn about some of the big wins that can be had in the cloud (such as elasticity and easy provisioning). We’ll talk about the dark underbelly as well - and face some of the challenges to run a realistic MySQL installation in the cloud.
Percona XtraDB Cluster 8.0 (PXC-8.0)
Percona XtraDB Cluster 8.0 (PXC-8.0) is the latest addition to PXC family. Starting with MySQL/PS-8.0, upstream have made a lot of significant changes including atomic DDL, replication channel, locking algorithm changes, etc.
Tarantool — a NoSQL database with SQL
We will present a short history and overview of Tarantool, an open source in-memory DBMS. We will explain why it is cool to have a DBMS in the same address space as your application server, why Tarantool is in fact single threaded and other main features. Then, we'll explain, why a no-SQL DBMS supports SQL.
What's New in PMM 2.0
Michael Coburn and Rachel Pescador
PMM 2 represents a significant advance in terms of monitoring for Open Source Databases. Learn about: query analytics improvements, architectural changes, and API and GUI configuration.
Why PostgreSQL is Becoming a Migration Target in Large Enterprises
Session covers integration with other RDBMS systems including Oracle, MSSQL, and MySQL, integration with Hadoop and NoSQL databases, examples of OraFCE and Ora2Pg, and how PostgreSQL is suitable for Agile development and Knowledge Portability.
Comparison of Kubernetes Operators for MySQL
Running databases in Kubernetes attracts a lot of attention today. Orсhestration of MySQL on Kubernetes is no way a straightforward process. There are several good MySQL based solutions in the open-source world, made by Oracle, Presslabs, and Percona. Having a common base, they differ in self-healing capabilities, multi-master and backup/restore support, etc. So, let’s make a fair comparison to figure out the pros and cons of their current state.
Enhancing MySQL security
Security is always a challenge when it comes to data protection but regulations like GDPR and HIPAA brings a new layer on top of it with severe fines for breaches and rules more restrictive to access and manipulate personal data. Join us in this presentation to check security best practices, traditional and new features available for MySQL 8.
How to Protect PII Data in MySQL While Allowing Customers to Access the Database
Protecting PII data is one of the biggest challenges of security minded DBA. But when you add a requirement to allow customers to have a direct access to a database replica it will make a life of a DBA nightmare. At VirtualHealth we deals with medical data. In this talk I will share an experience of how to implement customer authentication, authorization and data isolation in MySQL.
MyRocks and RocksDB Advanced Features and Performance
We have been running MyRocks in Facebook's largest database (UDB) and Facebook Messenger backends for a while. We have made significant improvements in both MyRocks and RocksDB, especially from performance, efficiency, reliability and operations point of view. In this session, the speaker will go through several important features and performance improvements.
New Indexing and Aggregation Pipeline Capabilities in MongoDB 4.2
MongoDB 4.2 comes GA soon delivering some amazing new features on multiple areas. In this talk, we will focus on the new capabilities of the aggregation framework.
Pg_catalog Unrevealed! That Part of PostgreSQL You Are Probably Underusing
PostgreSQL users want to know how the system is performing. They want to know if the system needs some improvements, but also to generate the occasional report requested by managers. Standard monitoring tools will monitor the CPU, RAM and I/O consumption, but they won't be able to tell you if indexes are being used, if tables are bloated, what is the lag of replication, what are the status of sessions connected, and many other interesting and useful things from PostgreSQL.
ClickHouse for Time-Series Real-time Analytics
ClickHouse is a very fast general-purpose open source DBMS. Starting from web analytics use case several years ago, it quickly develops to other areas, including time series applications where ClickHouse manages to outperform dedicated time series solutions. Explore different approaches of using ClickHouse for time series, highlight ClickHouse features that help to design an efficient schema, present some benchmarks, and walk through real life optimization techniques.
Improving Enterprise HA and Disaster Recovery solutions
Who does not know of HA solutions based on MySQL/Maria/Percona cluster (Galera)? However, with the rollout of this very powerful solution it is often not correctly designed, especially when trying to solve not only local HA, or to meet Disaster Recovery scenarios. This presentation wants to clarify once for all WHY some of the current misconception are ...just that, “misconceptions”.
Join Heterogeneous Databases using PostgreSQL Foreign Data Wrappers
This presentation will explain in detail how PostgreSQL FDWs work. It includes a detailed explanation of simple features and will introduce more advanced features that were added in recent versions of PostgreSQL.
Lessons from Building Automation for a Large Distributed Database
Ameet Kotian and Leigh Johnson
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. Everyday operations like provisioning, host replacements start of as steps in a runbook. Later, you might code-ify these processes with scripts. At some point, there is enough complexity and requirements for your automation that it evolves into a piece of full-fledged production software.
PCI/DSS Compliance with MySQL - 2019 Edition
This talk uncovers which tools/plugins/settings you need to use to comply with PCI/DSS when using MySQL. Gain a solid grasp of the possibilities MySQL offers to someone looking to become PCI/DSS certified, as well as the limitations it comes with.
What's New in Percona Server for MongoDB
Adamo Tonete and Akira Kurogane
In this presentation we share important changes that all MongoDB DBAs should be aware of, including a new throttle mechanism that works on primary nodes, a merging of foreground and background index build methods, the listing of client ops (active or idle), and wildcard indexes.
Backing up Wikipedia Databases
Jaime Crespo and Manuel Arostegui
In this session, they discuss how they backup 550TB of MariaDB data without impacting the 15 billion page views per month they get. They cover the initial plans to replace the old infrastructure, how they achieved recovering 2TB databases in less than 30 minutes while maintaining per-table granularity, as well as the different types of backups they implemented.
Deep Dive on Amazon Aurora
The talk covers key Aurora capabilities such as low latency replicas, instant crash recovery, in-place rewind, copy-on-write cloning, zero-downtime patching, multi-master, and serverless, and look under the hood to explain how they work.
High Availability and Automatic Failover in PostgreSQL
This talk starts with a list of replication types in PostgreSQL followed by a detailed understanding of some of the widely used open source tools for high availability and automatic failover in PostgreSQL.
InnoDB Management and Scalability Improvements in MySQL 8.0
At the beginning there was one general tablespace... Then we added a tablespace per table... What have we designed and delivered in MySQL 8.0 to manage even better your tablespaces? This session teaches everything you need about InnoDB tablespaces.
MySQL InnoDB Cluster - Advanced Configuration & Operation
Frédéric Descamps and Pedro Gomes
MySQL InnoDB Cluster is a very easy HA solution to deploy. In this session get an overview of settings that you can tune like those related to quorum lost, level of consistency, but also some you may not know like how to change like recovery system and effect of increasing the event horizon.
VictoriaMetrics: Why and How We Built Fast and Scalable Open Source Time Series Database
Roman Khavronenko and Aliaksandr Valialkin
The talk describes typical evolution of application monitoring during the last few years: it starts with zero monitoring, then logging is added, then the observability is improved with app-specific metrics, altering and graphing.
ClickHouse Features to Blow Your Mind
See a subset of the most notable ClickHouse features over the last half of year.
From Scheduled Downtime to Self-Healing in Less Than a Year
In this session see you how we went from fully manual operations to a self-healing system in less than a year at Salesforce. Having done this at several companies already I've seen the common mistakes that can break your system and make your well-intended scheduler/scripts/orchestrator a ticking bomb. I will share how to avoid these problems and build a robust and scalable automation framework that's been battle tested at companies such as Booking.com and Dropbox.
MySQL 8.0.18: Latest Updates
MySQL 8.0.18 is almost here! In this talk we’ll focus on two of the new features: hash joins and EXPLAIN ANALYZE. This talk will cover how these features work, both on the surface and on the inside, and how you can use them to improve your queries and make them go faster.
OpenCorporates: Providing Transparency for the Public Benefit
OpenCorporates is one of the largest open databases made available for the public benefit in the world. This talk describes our journey and the challenges, pitfalls and crucial business decisions along the way which led us to our current implementation using Percona XtraDB Cluster and ProxySQL on top of ZFS.
Tracing and Profiling MySQL
While troubleshooting MySQL performance problems it is important to find out where CPU time is spent inside mysqld process. The process of investigation should have as small influence as possible on the server we try to troubleshoot. Profilers can come handy.
Day 2 – AMBillion Goods in Few Categories: How Histograms Save a Life?
New MariaDB and MySQL 8.0 feature: histograms, can work better, cleaner and faster.
How a Modern Database Gets Your Data Fast: MariaDB Query Optimizer
A deep dive into the optimizer, covering strategies for dynamic query rewriting, including derived-table merging and condition push down and moving HAVING clauses into WHERE; temporary table reuse; join optimizations via IN/EXISTS subqueries; condition selectivity estimations via pre-collected histograms; and improved analytics via Window functions and CTEs.
Maintenance for MongoDB Replica Sets
This session will cover Database upgrades, OS server patching, Hardware upgrades, Network maintenance and more.
MySQL Has Gone Away: An In-Depth Look at the MySQL Networking Implementation
The purpose of the talk is to present the implementation of the network layer in MySQL 8.
Parted Ways with Partitioning? It's Time to Reconsider...
Go through the history of partitioning, and then take a deep dive into what this means for your next schema (re)design.
Percona Server for MySQL: What It Is and How It Is Done
Yura Sorokin and Satya Bodapati
This talk will explain what exactly Percona Server is and how it is similar to / different from Oracle MySQL Server. It will also give you a brief description of some unique features it already has and may have in the near future.
ClickHouse Materialized Views: A Secret Weapon for High Performance Analytics
This talk introduces ClickHouse materialized views using standard examples that should be in the toolkit of any data warehouse designer.
Databases, Crypto & Decentralization
Caleb James DeLisle
Hear Caleb argue that in the era of decentralization, the database is more relevant than ever, and that the next revolution in computing will be the general purpose decentralized database, where all manner of decentralized apps from federated social networking to cryptocurrency can coexist as schemas in a DBMS.
Fortify Your MySQL Data Security in AWS Using ProxySQL Firewall
Nowadays to be able to control and manage what can access our data is a must, while how to do this with standard tools is a nightmare. This presentation will help your discover how implementing a robust protection is more than possible.
MySQL Shell: The Best DBA Tool? Extend the Shell With the New Extension Infrastructure
MySQL Shell 8.0.17 has been released with a new extension framework—this session helps you discover how to write your extension. Also gives an overview of several useful extensions, how to find them and how to install them.
Percona Backup for MongoDB
Percona's open-source solution saves consistent sharded cluster backups to S3 (or S3-compatible) object stores or locally-mounted filesystem. It also provides a single-command action to restores those in-place. It is compatible with MongoDB® Community edition as well as Percona Server for MongoDB.
Percona Distribution for PostgreSQL
Learn how to enable a repository to use the Percona distribution, and how some of the extensions work.
Data Protection and OSS in the Age of GDPR
An overview of how the GDPR has impacted OSS, how to apply the model of data controller and data processor on the contexts of various communities and infrastructure providers.
Handling Transaction ID Wraparound in PostgreSQL
Get introduced to the internals of transaction ID's with a detailed understanding of transaction ID wraparound. And then understand how this can be avoided through parameter tuning and routine monitoring and maintenance. And finally move to the procedure involved in repairing the damage when a database is no more available for writes.
My First 90 Days with Vitess
This talk starts with the basic architecture of Vitess, then goes over some of the basic concepts and terminology that Morgan has found useful to learn such as Topos, Keyspaces, VSchemas, and Tablets.
Running PMM in Production at Tessi
Michael Coburn, Valentin Traën and Jonathan Gourdon
Have you struggled with problem identification using MySQL? Listen to how Tessi Document Services uses PMM + MySQL InnoDB Cluster to visualize cluster performance and to identify & analyze slow queries.
What's New On Sharding in MongoDB 4.2
Discover distributed transactions & mutable shard keys providing examples that will reveal the internals of the new MongoDB features, with best practices around the new sharding features.
10 Common Mistakes (Java) Developers Make when Writing SQL
In this talk, we'll see the most common mistakes that OO, and in particular Java, developers make when writing SQL code and how we can avoid them.
Benchmarking Should Never Be Optional
Art van Scheppingen
In this session you will learn why benchmarking any (database) system is not optional and should never be skipped. Including examples from Art’s experience over the past years in various roles at various (big) companies, with experience from the trenches: war stories and funny anecdotes.
Large Scale Deployment of SSL/TLS For MySQL
Daniël van Eeden
Deploying SSL/TLS with MySQL at Booking.com on thousands of servers is not without issues. In this session discover the steps they took, what problems they hit, and how they improved various parts of the MySQL ecosystem while doing so.
Protecting Your Secrets
In this session, John presents his recommendations on how to protect your secrets and avoid secret sprawl.
Securing MySQL with Vault and Table Level Encryption
Demonstration on how to secure your MySQL user accounts with Hashicorp Vault, and how to do MySQL user account rotation and expiration.
Top 10 Mistakes When Migrating From Oracle to PostgreSQL
As more and more people are moving to PostgreSQL from Oracle, a pattern of mistakes is emerging. They can be caused by the tools being used or just by not understanding how PostgreSQL is different than Oracle. In this talk, we discuss the top mistakes people generally make when moving to PostgreSQL from Oracle and what the correct course of action.
Day 2 – PMHow To Upgrade Like a Boss to MySQL 8.0?
This talk explains best practices for upgrade techniques in MySQL. In deep dive, Alkin goes over how to upgrade successfully to MySQL 8.0. Explain MySQL 8.0 upgrade specific challenges, gotchas and best practices.
MongoDB Analysis with Prometheus and Grafana
Prometheus and Grafana are spreading through DevOps organizations around the world. We'll show how they been put together in PMM2 to create MongoDB monitoring timeseries graphs and alert triggers equal to any of the commercial solutions that currently exist
MySQL 8.0: The New Replication Features
This session highlights the new replication features in MySQL 8.0. Those that were released pre and post-GA. Come and learn, directly from the engineers, how the new features help you operate, sustain and extend your MySQL Replication infrastructure.
Optimize and Troubleshoot MySQL using PMM 2
In this presentation, Peter demonstrates how using recently released PMM version 2 enables you to solve these challenges, which is built on free and open-source software. He looks at specific, common MySQL problems and review.
Running ElasticSearch at Large Scale
In this talk, Alex covers tuning parameters and approaches that will assist the audience in running fast, efficient and well written queries on stable and performant clusters.
Strength in Numbers: Slack's Database Architecture
Guido Iaquinti and Josh Varner
In this talk, they review the architecture they’ve built, specifically focusing on our Vitess infrastructure. Vitess currently handles nearly half of Slack's database traffic. They talk about how they’ve built this system to withstand common failures and continue to perform at their scale.
Automatic Upgrade and New Error Logging in MySQL 8.0
Cover upgrade from MySQL 5.7 to MySQL 8.0 (8.0.15), going from legacy meta data storage to transactional data dictionary. Also cover the new possibilities for automation of upgrade, and the major advances upgrade speed and reliability as well as new consistency checks in the MySQL upgarde checker.
Becoming Cloud Native: How Percona Brings Databases to Kubernetes Using Operators Tyler Duzan
This talk covers some of the challenges we sought to address by creating a Kubernetes Operator for Percona XtraDB Cluster and Percona Server for MongoDB, as well as a look into the current state of the Operators, a brief demonstration of their capabilities, and a preview of the roadmap for the remainder of the year.
Graph Databases: Introduction, Standardization, Opportunities
A presentation of the current developments in the world of graph databases and discussion on how SQL databases could evolve to work well with graph data.
How to Instrument Your Code in Performance Schema.
This session aims to walk you through the process of instrumenting your code that is to run inside the MySQL server process. And give you tips on how to do this most efficiently and where to go for further details.
Managing MySQL at Scale in Facebook
Pradeep Nayak and Junyi Lu
This session covers terminology, lifecycle of an instance, tools that are used for moving instance between states, shard movements(OLM) and touch base on balancing and test infrastructure.
The DB is Broken. Now What?
Allan Mason, Carmen Mason and Ivan Groenewold
This talk covers the tools that you'll use to determine what other agents may be working against the database performance. They share experiences with crazy scenarios that stumped us, and the tools that we used to figure out the root cause.