March Madness Ticket Price $599 | Save 20% with code M17TAKE20

Note: all workshops take place at the same time; so one workshop choice per attendee, please.

Tuesday, April 11  |  9:00 - 12:30

Scaling and Securing MariaDB for High Availability

This hands-on workshop will provide attendees with an overview of the options for enabling high availability, disaster recovery and scalability, and guide attendees through the process of setting up a production cluster by configuring Galera for multi-master replication and MaxScale for read-write scaling, automatic failover and secure data access.

MariaDB ColumnStore for High Performance Analytics

MariaDB ColumnStore is a powerful open source columnar storage engine option for MariaDB that supports a wide variety of analytical use cases with ANSI SQL in highly scalable distributed environments. This workshop will cover everything you need to know to get started using MariaDB ColumnStore for high performance analytics from simple queries to complex analytics like cross engine join, aggregation and window function.

Building Modern Applications with MariaDB

Want to get more proficient building apps with MariaDB? This workshop will provide practical education on MariaDB commands, advanced SQL statements, connectors, integration, virtual and dynamic columns and more. We will spend more than three hours diving deep into MariaDB architecture with a mix of instructor presentation and hands-on exercises.

Day 1 Day 2
Tuesday, April 11
Wednesday, April 12
Tuesday, April 11
1:15 pm - 1:45 pm

The velocity of change in today’s world, regarding new opportunities, as well as new threats, can only be handled by technology that is a reflection of our times. State sponsored cyberattacks on private companies, or operational leverage of machine learning, are just two examples of threats and opportunities that were unheard of five years ago. This duality is the new normal, and past methods of proprietary responses cannot continue. Accordingly, the world is moving. Only a well organized community of innovation can keep up. Therein lies the strategic mandate of Open Source. Michael Howard will illustrate the key points of this mandate, exemplified through innovation and how MariaDB is helping some of the largest organizations in the world into the era of Open Source.

1:45 pm - 2:15 pm

DBS Bank Ltd is a Singaporean multinational banking and financial services corporation headquartered in Marina Bay, Singapore. Ms. Tay is leading the company’s Open Source transformation. In this keynote, she will share DBS' reasons for adopting a strategic Open Source initiative and how they have solved organizational and technological challenges by replacing Oracle Enterprise and DB2 with MariaDB as their database standard.

2:15 pm - 2:45 pm

Not too long ago the world was all about low cost, clustered machines. Scale out was in and scale up was out. Transactional integrity was sacrificed for scale. MapReduce was heralded over SQL as the best way of processing analytical use cases. Cloud and the exponential increase in processor cores and memory are blowing up that theory. Roger will discuss how MariaDB exploits these fundamental architectural changes and how MariaDB enables both OLTP and Analytical use cases for enterprises at any scale.

2:45 pm - 3:00 pm
3:00 pm - 3:50 pm

In this talk you will learn about the latest features in MariaDB Server and MaxScale.

In MariaDB Server 10.2, we will introduce:

  • SQL additions: window functions, common table expressions, check constraints, and administrative statements
  • Security enhancements, including enforced security options
  • Per user resource limitations and enhanced options for replication environments
  • Multi-trigger support, binary log based rollback, and MyRocks

MariaDB MaxScale 2.1 is the newest release of the next-generation database proxy for the MariaDB and MySQL environment. New features in this release further enhance security, scalability, performance and ease of use of the database environments. 

In this talk you will learn about the following new features of MaxScale 2.1:

  • Security: binlog encryption, SSL, LDAP/GSSAPI, data masking, max row/size limits, and prepared statement/function filtering
  • Scalability: Aurora cluster monitor, multi-master and failover mode for MySQL Monitor, read-write splitting with master pinning
  • Performance: query cache filter, streaming Insert plugin
  • Ease of use: Dynamic configuration of firewall rule, dynamically add or remove servers, listeners, and monitors
Dipti Joshi


Dipti Joshi
Director of Product Management

In this session, we’ll go over the basics of deploying MariaDB, both a single server as well as a cluster, on Amazon Web Services – including a live demo. In addition, we’ll go over fundamental concepts and best practices to help you successfully deploy and manage MariaDB databases on AWS. We will cover everything from recommended instance types to performance optimizations. Amazon Web Services offers Relational Database Services that make it easy to set up, operate, and scale MariaDB deployments in the cloud. With Amazon RDS, you can deploy scalable MariaDB databases in minutes with cost-efficient and resizable hardware capacity. Amazon RDS frees you up to focus on your application by managing time-consuming database administration tasks including backups, software patching, monitoring, scaling and replication – and makes it easy to upgrade from MySQL, Oracle and other sources to MariaDB.

Replication is a feature that is easy to set up, allows read-write access on both master and slave, and can easily create complicated deployments, such as circular replication. By default, MariaDB and MySQL replication is asymmetrical, but has a semi-sync replication plugin that supports multi-master slaves. All these features can be implemented quickly; however, there is also huge risk in making the wrong decisions. In this session, I will:

  • Discuss common replication errors and methods which will help to resolve them

  • Use built-in, then command-line tools, because knowledge of how they work is essential for effective troubleshooting

  • Cover the differences between MariaDB and MySQL replication

Storing geospatial data in databases is becoming more and more popular, and there are several reasons for this trend. The most prominent reason is the increased use of mobile smartphones, which tracks location using built-in GPS features. As a result, using location data is much more convenient, and is creating many new use cases for GIS technologies. In this talk, we will look at some of the existing and new features of managing GIS data in MariaDB. Some topics we will discuss include the GIS datatypes available in MariaDB, how to index them, and how to search for GIS data.

4:00 pm - 4:50 pm

Choosing the right storage engine has an impact on your business. This talk will list all common storage engines which are in production for many years, those innovative new and experimental storage engines.

MariaDB ColumnStore is a columnar storage engine in the MariaDB ecosystem for analytics use cases. In this session we will look at the architecture and capabilities of MariaDB ColumnStore. Specifically, we will talk about how to do analytics using MariaDB ColumnStore, what MariaDB ColumnStore 1.0 offers and what are we planning for MariaDB ColumnStore 1.1.

Dipti Joshi


Dipti Joshi
Director of Product Management

The goal of this presentation is to inform MariaDB users about the potential for reducing total cost of ownership (TCO) by enjoying enhanced performance with Intel support. Our presentation will be structured into three parts:

  • An overview of the Intel group working with MariaDB.

  • A description of the technical collaboration with MariaDB and how well it runs on Intel Xeon processors.

  • Swarm64 will present their cloud solution based on various Intel products (e.g., FPGA, SSD) with MariaDB. Swarm64 will be used as the model “use case” or success story of a solution provider using Intel technologies with MariaDB.

MariaDB 10.2 introduces support for common table expressions (CTEs). This talk will provide everything you need to know about CTEs.

The first part is about non-recursive CTEs. We will present:

  • A description of SQL syntax for non-recursive CTEs
  • Real-world use cases for non-recursive CTEs
  • Query optimizations that are applicable for these kinds of CTEs
  • MariaDB's query optimizations, and how they compare to PostgreSQL and MySQL
  • A closely related new optimization in MariaDB 10.2 called Condition Pushdown into CTEs

The second part of the talk is about recursive CTEs. Following the same pattern, we will present:

  • An introduction to recursive CTEs
  • Use cases: computation of transitive closures and paths
  • How MariaDB knows when to stop the recursion, and how loops are handled in each of the use cases
  • A comparison of MariaDB with MySQL 8.0, SQL Server and PostgreSQL
  • MariaDB's extra features for recursive CTEs
5:00 pm - 6:30 pm
Wednesday, April 12
9:00 am - 9:50 am

MyRocks is a new storage engine developed by Facebook, providing a breakthrough in compression and storage efficiency. And now, it is coming to MariaDB!

This talk has two parts: Part one is about MyRocks itself. We will describe MyRocks architecture and how it allows us to achieve better compression and higher storage efficiency. We will also present benchmark results confirming these improvements.

Part two is about MyRocks in MariaDB. We will describe how MyRocks works with MariaDB's features, and also cover household items like packaging, running MyRocks together with other storage engines, and identifying limitations.


Want to leverage big data analytics to transform your business? MariaDB ColumnStore, a powerful open source columnar storage engine, delivers high performance at scale, enterprise-level analytics, and reduces costs with better price performance. MariaDB ColumnStore has been deployed in various industries, including healthcare and high-tech, to provide deep analytical insights that drive business growth and change. In this session, we will showcase real-world big data analytics use cases from various industries.

Dipti Joshi


Dipti Joshi
Director of Product Management

Are you trapped by high-cost closed-source legacy databases? Do people tell you that upgrading to MariaDB is too hard? Learn how to break free using tools and techniques from Amazon Web Services and others to upgrade Oracle Database and other high-cost databases to scalable, managed open source solutions. Got 10,000 lines of PL/SQL? Applications with obscure connection code? Complex schemas? No problem!

With a focus on practical applications, this talk will give a full introduction to window functions, an important tool for analytical queries. Window functions act as regular functions but have access to more than one row during computation. This makes them highly useful for optimizing queries involving self-joins, as well as queries that need to extract data from multiple related rows from the same table. The performance speedups obtained are sometimes hundredfold, especially for analytical use cases. We will cover syntax, supported functions, use cases and performance. We will also see how MariaDB compares feature wise to other database solutions.

10:00 am - 10:50 am

In this session, I'll discuss how we migrated from InnoDB to MyRocks in production at Facebook, for both slave and master instances, without stopping services, losing data, or returning incorrect results. We created many features for easier migration, such as fast data loading, and a tool that confirms data and query correctness, and runs without affecting online service. I will share lessons learned from our initial migrations and the impact we have seen.

MariaDB ColumnStore works a little differently than traditional storage engines so that it can perform well with OLAP workloads. In this session we will cover how MariaDB ColumnStore organizes data in disk, how multi-node configurations work and the steps involved to process a query and return data. This will give you the tools you need to optimize your data and queries for use with ColumnStore as well as set up the right hardware for your workloads.


This session will provide an overview of MariaDB solutions available in the Azure Marketplace today. This includes a standalone deployment, a full cluster deployment with the MariaDB Enterprise Cluster + MaxScale template and the MariaDB “Test Drive”. In addition to a demo, we’ll cover basic Azure concepts, helpful to anyone who has used AWS or Google Cloud.

Today’s IT infrastructure is vulnerable to a range of attacks and threats. How do you safeguard your database against them? By learning and using best practices, and choosing a database with robust security tools built in. We will discuss both securely deploying MariaDB Server alone and with MariaDB MaxScale.

10:50 am - 11:10 am
11:10 am - 12:00 pm

When your database is growing to big data capacity, you need to consider other techniques to manage your data, including database sharding. Spider is a MariaDB Server storage engine plugin for database sharding that allows you to access your data efficiently across multiple database backends. During this talk we will introduce:

  • An overview of Spider, including its architecture, features roadmap and use cases

  • How to get started with Spider

  • A multi-dimensional sharding technique with the Vertical Partitioning (VP) storage engine

To be able to work with MariaDB ColumnStore, or with any other database, we need to get some data in it first. As ColumnStore is built on MariaDB, it may be presumed that loading data into ColumnStore is no different than with MariaDB. While this is possible, it is not the most efficient way. MariaDB ColumnStore is a column-based distributed database system, and while LOAD DATA INFILE and standard INSERT, UPDATE and DELETE statements work, there are faster and better ways to load data into ColumnStore. This talk will discuss how and from where to retrieve data, and will showcase examples, guidelines and demos for data loading with MariaDB ColumnStore.

Containers are great ephemeral vessels for your applications. But what about the data that drives your business? It must survive containers coming and going, maintain its availability and reliability, and grow when you need it. Alvin Richards does some live coding to show key strategies to help you survive the transition to production.

With the new features of MariaDB 10.2, migrating existing Oracle-based applications has become much easier and thus economically advantageous. We present some of our best practices and introduce the Migration Practice of MariaDB.

MariaDB introduces SQL support for time-related information (ISO 32N2439) which makes it possible to query past states of database records. This talk discusses:

  • Use cases for SQL system versioning

  • SQL examples (how to enable system versioning for a table, how to query previous states of records and so on)

  • Design considerations and limitations

  • The implementation internals and how InnoDB transactions handling was adjusted

  • Further development of the feature
12:00 pm - 1:00 pm
1:10 pm - 2:00 pm

Data inconsistency is the worst problem that can happen for a synchronous database cluster. At some point it will appear during replication processing, simply because the application of replication events is not possible in some cluster nodes due to missing rows, excessive rows or wrong values in the row columns. As a result, this usually stops the replication process altogether or, at the least, the failing node must drop out from the cluster. Sorting out the reason for the cluster inconsistency can be problematic because the inconsistency may have occurred without leaving any signs in the system. Therefore, it may also be difficult to determine which cluster node has the trusted data contents.

Recovering from data inconsistency usually requires full database state transfers across the cluster nodes. Galera Cluster 3 has a strict inconsistency policy: all transaction replication errors cause emergency abort for all nodes detecting the inconsistency – a rather aggressive strategy that can lead to full cluster crash. Galera Cluster 4 has a more sophisticated inconsistency strategy where the cluster runs an inconsistency voting protocol and optimizes the way the cluster reacts to the detected inconsistency. This presentation will describe:

  • The various reasons that cause data inconsistency in a cluster

  • Possible ways to deal with them

  • How to recover a cluster after data inconsistency

  • Galera Cluster’s built-in support for continuous consistency checking, helping to harden the cluster against potential threats for data inconsistency

  • The difference in data inconsistency strategies between Galera 3 and Galera 4 clusters

IHME's volume of data grows at a rapid pace throughout the year as multiple research teams contribute information to the Global Burden of Disease study. A few years ago, we standardized on Percona Enterprise Server 5.6 and invested significant time and resource into performance tuning our database environments to handle the query and data loading traffic from our 16,000 CPU-core High Performance Compute cluster, and user's jobs. The platform has been super solid for us, but as data volume expands, we were unable to perform analytical queries againt the XtraDB storage engine, despite having very powerful hardware. We started looking at InfiniDB, and thought the architecture seemed like a good fit for a) keeping compatibility with MySQL, since the vast majority of our codebase relies on MySQL, and b) saw that MariaDB was re-releasing the InfiniDB codebase as "ColumnStore". We took the opportunity to perform some R&D cycles with the alpha and beta releases of the product, and were able to transition our public-facing visualizations to a multi-server MariaDB ColumnStore environment. This is a discussion of our experiences along the way.

Andrew Ernst


Andrew Ernst
University of Washington IHME
Assistant Director of Infrastructure

Deploying MariaDB on DC/OS requires just a few clicks, but once the service is running, you may have a few questions, such as:

  • "What" is actually running?
  • How is data persistence and consistency handled?
  • How does the DC/OS architecture affect database performance?
  • What do containers have to do with all this?

The goal of this session is to help answer the questions that may arise after deploying your first database on DC/OS. We will share some of the thought processes and lessons learned from a real-world use case, provide the background of how DC/OS operates, and identify key items that need to be considered when deploying database services.

Performance tuning and subsequent optimization is an important way to save money and time in the company. In this talk, the basic tools for DBAs and developers are presented in order to achieve this goal.

Huatai Securities is one of the leading comprehensive securities groups in China, with brokerage and investment services for a broad customer base that is supported by the most stockbrokers in China. The company also maintains a leading internet platform to support the company’s extensive transactions in the stock exchange field. In 2015, the company replaced Oracle with MariaDB in its production environment, and is now the biggest user of MariaDB in China’s financial sector.

This talk is aimed at:

  • Providing an overview of how Huatai uses open source

  • Discussing reasons to migrate from Oracle to MariaDB, including security, fees, and reliability

  • Sharing the benefits of making the switch, including disaster recovery technology to ensure data security and integrity

Jian Fan


Dr. Jian Fan
Huatai Securities
Director of Platform Architecture
Wenqi Guan


Wenqi Guan
Huatai Securities
System Architect
2:10 pm - 3:00 pm

MaxScale is MariaDB's database proxy for managing security, scalability and high availability.

In this session we will start by providing an overview of MaxScale's extendable architecture and an introduction to its functionality. We will also briefly cover how MaxScale can be extended with new functionality.

Thereafter we will look more closely at some particular use-cases and round the session up with a hands-on demonstration.

Clustering is an important feature in container technology, as multiple nodes are required to provide redundancy and failover in case of outage. Docker Swarm is an orchestration tool that allows administrators to manage a cluster of Docker nodes as one single virtual system. MariaDB Cluster, however, has its own clustering model based on Galera.

How do you get the two to work together? Container orchestration tools like Docker Engine swarm mode and Kubernetes are not aware of the redundancy model of MariaDB Cluster and presumes containers are independent from each other. It is possible, however, to make Swarm aware of Galera’s model by extending Galera on-container startup logic to bring MariaDB up to the correct state before serving any data.

In this talk, we’ll look at how to deploy MariaDB Cluster on Docker Swarm with a multi-host environment, by “homogeneousing” the MariaDB image to achieve high availability and scalability in a fully automated way. We will touch upon service controls, multi-host networking, persistent storage, scaling, fault tolerance, service discovery, and load distribution.

Telefónica is a global telecommunications company based in Spain. Tim Cheung is part of the U.K. division O2, which is the primary sponsor of the widely recognized O2 Arena in Greenwich Peninsula, London, host to the 2012 Summer Olympics.

Within O2, Tim works on the Wi-Fi team providing free Wi-Fi service to end users across the U.K. O2 has approximately 14,000 hotspots and 23 million registered users to date. Of those registered users, 2.5 million use the service daily. In this day and age these numbers aren’t astronomical, but they do present challenges in the way O2 operates. This talk will present some first-hand insight into the following:

  • How many times a day/week/month should you deploy to your production environment?
  • How to manage customer demand for delivery of products and services in increasingly shorter timeframes.
  • Is the production environment governed by a strict change management process?
  • How can you safely and reliably push implemented changes without service disruption?

Alibaba and MariaDB have a long-standing relationship around MariaDB Server and work closely together to enhance product features for both organizations. AliSQL is a cloud-friendly MySQL branch, which enables this collaborative relationship. In the past, we have worked together on sequence, design and code, multi-source replication, flashback and more. Today, MariaDB is merging AliSQL’s patches, with a plan to include more AliSQL features in the future. Join us in exploring this relationship and learning more about Alibaba and MariaDB.

Linux, Apache, MySQL and PHP used to be the most widely used web application stacks. As technology evolves, this is no longer the case. For the M part, MariaDB has replaced MySQL in numerous Linux distributions and development environments, and is becoming the new M in most production environments as well. This talk presents how the landscape looks today, and why and how web developers are migrating to MariaDB around the globe.

3:00 pm - 3:20 pm
3:20 pm - 4:10 pm

MariaDB MaxScale offers a modular solution to stream binlog events from a master database to a data lake with the help of Apache Kafka, a distributed message broker. The solution consists of a binlog event replicator (binlogrouter), a binlog to Avro translator (avrorouter) and a client request interface (CDC).

The presentation describes the key components of the Change Data Capture solution, how each of the parts interact and how the data is stored in Avro format inside MaxScale. It also explains how the CDC data streaming service can be with other systems for further processing and in-depth analysis.

The final part of the presentation takes a short tour of the ready solutions provided with MariaDB MaxScale 2.0: in the example setup MariaDB MaxScale will act as the producer for a Kafka broker while big data platforms or analytics databases will be the consumer applications, consuming the data through the broker.

Tencent is a very successful internet social networking company with several products including, QQ, WeChat and more, as well as China’s leading cloud service provider. In Tencent Cloud, a public cloud platform, DBaaS is critical as our Cloud has tens of thousands enterprise users to date. This presentation will focus on:

  • The multi-role design concept of Tencent DBaaS

  • How to solve challenges encountered by architects and DBA users

  • How to implement a database service that is easy to manage, reliable, available and high performing

MariaDB supports online alter for many types of changes; however, some alters still require a table copy, and an online schema change tool is desired. The GitHub online schema change transmogrifer, gh-ost, is a new tool that I have already had the pleasure of using in production environments successfully. I will present a use case for running the tool in a complex multi-source, multi-slave replication topology to make changes unsupported by the native MariaDB online alter. This presentation will include a demonstration of the operational tools within gh-ost to throttle or view the status of the running alter process.

You have architected and written the RPC mechanism, service discovery and even the deployment of your Microservice. But what about the Database behind your Microservice? In this session we will cover orchestration and deployment of your Databases service, High Availability & Scale out and schema impact along with other key considerations for make your service deployments with MariaDB successful. Worked code examples will be used to show how this can be achieved and should act as a launch pad for you future deployments.

4:20 pm - 5:30 pm

Hadoop and NoSQL have been the open source heralds of a changing the database landscape that is no longer locked into Oracle, IBM or Microsoft. And while NoSQL may work for a subset of use cases, no matter how fast they try to adapt to a SQL based world, they are decades away. Meanwhile, open source relational database are delivering capabilities for NoSQL use cases at a rapid pace. Join this fireside chat with Monty Widenius to hear how MariaDB is quickly becoming the world’s open source database choice. This session will include audience Q&A so everyone has a chance to get their questions answered.


M|17 offers sponsors a chance to directly engage with the growing global audience of MariaDB users to inspire new ideas and solutions. We offer flexible and valuable sponsorship opportunities to suit your needs. Join us as a sponsor for M|17!


Contact Us