There have been two big pieces of news this week: the release of MongoDB 4.0 and the fact that Facebook has migrated the Messenger backend over to MyRocks.
MongoDB 4.0 is stable, with support for multi-document ACID transactions. I quite like the engineering chalk and talks videos on the transactions page. There are also improvements to help manage your MongoDB workloads in a Kubernetes cluster. MongoDB Atlas supports global clusters (geographically distributed databases, low latency writes, and data placement controls for regulatory compliance), HIPAA compliance, and more. ZDNet calls it the “operational database that is developer friendly”. The TechCrunch take was more focused on MongoDB Atlas, MongoDB launches Global Clusters to put geographic data control within reach of anyone.
In addition to that, I found this little snippet on CNBC featuring Michael Gordon, MongoDB CFO, very interesting: last quarter MongoDB Inc reported 53% year-over-year growth in their subscription revenue business. The fastest-growing piece of the business? Cloud-hosted database as a service offering. They partner with Amazon, Google and Microsoft. They are looking to grow in the Chinese market.
Did you attend MongoDB World 2018? I personally can’t wait to see the presentations. Do not forget to read the MongoDB 4.0 release notes in the manual. Take heed of this important note: “In most cases, multi-document transaction incurs a greater performance cost over single document writes, and the availability of multi-document transaction should not be a replacement for effective schema design.”
As for Facebook Messenger migrating to MyRocks, this blog post is highly detailed: Migrating Messenger storage to optimize performance. This is a migration from the previous HBase backend to MyRocks. End users should notice a more responsive product and better search. For Facebook, storage consumption went down by 90%! The migration methodology to ensure Messenger usage was not disrupted for end users is also worth paying attention to. A more personal note from Yoshinori Matsunobu, as MyRocks is something he’s been spearheading. Don’t forget that you can try out MyRocks in Percona Server for MySQL as well as in MariaDB Server 10.2 and 10.3. To use Zstandard (or zstd for short), Percona Server for MySQL supports this (MariaDB does not, but has varying other compression algorithms).
Have you seen the Percona Open Source Database Community Blog? Jean-François Gagné recently wrote about how he posted on the Community Blog (so a very nice behind the scenes kind of post), and I hope you also read A Nice Feature in MariaDB 10.3: No InnoDB Buffer Pool in Core Dumps. Don’t forget to add this new blog to your RSS feed readers.
Lastly, as a quick note, there will unlikely be a column next week. I’m taking a short vacation, so see you in the following week!
- Percona XtraDB Cluster 5.7.22-29.26 – Percona XtraDB Cluster now supports keyring_vault plugin so that you can store the master key in a Vault server. It also depends on Percona XtraBackup 2.4.12 to fully support Vault plugin functionality. Many bugs fixed as well.
- Percona XtraBackup 2.4.12
- Percona Monitoring and Management 1.12.0 – check out the visual explain in the query analytics! There are also a handful of new features, including if you happen to be using InnoDB compression.
- FromDual Backup & Recovery Manager 2.0.0 – includes support for MySQL 8, MariaDB Server 10.3.
- pgAdmin 4.3.1
- phpMyAdmin 4.8.2 includes security fixes, so is a recommended upgrade.
- MariaDB 10.2.16 – MyRocks is now stable GA in the MariaDB Server 10.2 series, with numerous bug fixes. Were you using MariaDB Galera Cluster in previous releases? A stability issue reported since 10.2.5 (18 May 2017) has been fixed since MariaDB 10.2.12 (released 4 Jan 2018). If you have encountered stalls and seen WSREP: BF lock wait long, do read MDEV-12837. I think it might also be relevant to follow MDEV-15154 WSREP: BF lock waits long after a TRUNCATE TABLE and MDEV-15747.
- Oracle Linux 7 for ARM is now GA. 64-bit only, UEK5 only kernel, it also comes with MySQL 8.0 for the ARM platform.
- MySQL 8.0 InnoDB Cluster – the quick hands-on manual – this is truly the quick start guide. There has to be more of this beginner styled cookbook guides on the MySQL site too! (The user manual is now really, really, large).
- MariaDB 10.3 use case: Hidden PRIMARY KEY column for closed/legacy applications – use case for the invisible columns feature introduced in MariaDB 10.3.
- usql – described as “A universal command-line interface for PostgreSQL, MySQL” and many other databases, including the likes of ClickHouse, Vitess and more.
- xo – I find the idea of xo rather interesting, as it generates idiomatic Go code for SQL databases like MySQL and PostgreSQL. They initially wrote this for a migration from PHP to Go, and the idea is your self-documenting schema will generate static, type-safe, fast and idiomatic Go code.
- Ever wondered why MySQL 8.0 GROUP BY performance could be a lot better than on MySQL 5.7? Øystein Grøvlen has answered that on StackOverflow, and it has a lot to do with the new TempTable storage engine. This is probably a worthy test to repeat with MariaDB Server 10.3.
- How Oracle’s Acquisition Was Actually the Best Thing to Happen to MySQL – David Stokes (MySQL Community Manager @ Oracle) had a very good interview at SouthEastLinuxFest.
- Louis Fahrberger (formerly of Clustrix, MariaDB Corporation, InfoBright and MySQL) is now an Account Executive in Sales for MemSQL.
- The Wall Street Journal reports on Oracle Cloud and how the business continues to grow. “Revenues from its cloud services businesses jumped 25% year over year to $1.7 billion for its fiscal fourth quarter that ended May 31”.
- The Financial Times reports on Red Hat sinks as currency swings cloud full-year sales outlook. The CFO, Eric Shander said, “we continue to expect strong demand for our hybrid cloud enabling technologies”.
- OSCON – Portland, Oregon, USA – July 16-19 2018
The post This Week in Data with Colin Charles 44: MongoDB 4.0 and Facebook MyRocks appeared first on Percona Database Performance Blog.