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.
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.
Redundancy and high availability are the basis for all production deployments. Database systems with large data sets or high throughput applications can challenge the capacity of a single server like CPU for high query rates or RAM for large working sets. Adding more CPU and RAM for vertical scaling is limited. Systems need horizontal scaling by distributing data across multiple servers.
MongoDB supports horizontal scaling through sharding. Each shard consists of a replica set that provides redundancy and high availability. In this session we will talk about:
-How MongoDB HA works
-Replica sets components/deployment typologies
-Cluster components - mongos, config servers and shards/replica set
-Shard keys and chunks
-Hashed vs. range based sharding
-Reads vs. writes on sharded cluster
By now you surely know that MongoDB 3.6 Community became generally available on Dec 5, 2017. Of course, this is great news: it has some big ticket items that we are all excited about! But we need to talk about general thoughts on this release good an
It is always a good idea for your internal teams to study and consider new versions. This is crucial for understanding if and when you should start using it. After deciding to use it, there is the question of if you want your developers using the new features (or are they not suitably implemented yet to be used)?
So what is in MongoDB 3.6 Community?
- Change streams
- Retryable writes
- Security improvement
- Major love for arrays in aggregation
- A better balancer
- JSON Schema validation
- Better time management
- Compass is community
- Major WiredTiger internal overhaul
As you can see, this is an extensive list. But there are 1400+ implemented Jira tickets just on the server (not even in the WiredTigers project).
This is a big so come hungry!
This session will overview how we leverage old technology with modern solutions that helped us to improve and optimize documents manipulation using MongoDB.
You need to store and retain time-series data in MongoDB and HDDs can't keep up with your insert rate, but you can't afford to keep everything on SSD? Then this presentation is for you. You'll learn how to use sharding and shard tagging to keep your inserts and most recent data on the fast SSDs and your archived data on the cheap HDDs, and how to quickly and efficiently transition data from SSD to HDD. You'll also learn the best programming techniques for adding your time-series data and accessing the data as a stream without missing any data points.
This presentation will discuss implementing external authentication when using Percona Server for MongoDB and MongoDB Enterprise. It will review authentication using OpenLDAP or ActiveDirectory and ActiveDirectory with Kerberos.
The presentation will also include examples of the configurations required by these external directory services. It will also review the LDAP Authorization features introduced in MongoDB Enterprise 3.4.
As our MySQL/MariaDB/Percona Server deployments get larger and more complex, they will certainly contain more use of proxies and likely an ever-growing number of users. This talk will discuss some of the the challenges and implications which are already known, including performance implications and connection parameters. A brief overview will be given of a pull request which addresses the most obvious performance concern.
In this day and age, maintaining privacy throughout our electronic communications is absolutely necessary. Creating user accounts and not exposing your MongoDB environment to the wider internet are basic concepts that have been missed in the past. Once that has been addressed, individuals and organizations interested in becoming PCI compliant must turn to securing their data through encryption.
With MongoDB, we have two options for encryption: at rest (only available as enterprise feature with MongoDB) and transport encryption. In this session, we will review:
- Why encryption is important
- What are the prerequisites to set up encryption
- Step by step for encryption at rest and in transit
- Encrypting data with volume encryption in the cloud
- Percona for MongoDB encryption features
A database trigger is a stored procedure that is executed when specific actions occur within a database. Triggers fit perfectly on a relational schema (foreign keys) and are implemented as a built-in functionality on popular relational database like MySQL.
MongoDB does not have any support for triggers, mainly due to the lack of support for foreign keys. Even if it usually considered an antipattern, there are use cases in MongoDB that benefit from a partially-relational schema. The lack of triggers is an obstacle for a partially-relational schema but there can be workarounds for simulating trigger behavior.
This presentation will guide you through different ways to implement triggers in MongoDB. We will cover the topics streams, tailable cursors, and hooks. We will demonstrate coding examples for each topic and we will explain pros and cons of each implementation.
We all use and love relational databases....albeit the latter might not always be true, since sometimes we try to use them for purposes for which they are not a good fit.
And it is precisely these special uses cases that have given birth to dozens of other databases that are built upon paradigms that don't follow the relational model.
In this talk, we'll review the goals, pros and cons and good and bad use cases of these alternative paradigms by looking at some modern open source implementations that are all the rage nowadays.
By the end of this talk, the audience will have learned the basics of three database paradigms (document, key-value and columnar store) and will know when it's appropriate to opt for one of these or when to favor relational databases and avoid falling into buzzword temptations.
Do you have a 24x7 system and can't afford any downtime? In this talk, we are going to discuss the best methods to upgrade MongoDB versions, as well as how to change storage engines without downtime.
We will discuss the best architecture to do so, and the steps you need to walk through to perform these operations.