Author Archives: Frédéric Descamps
JSON support in MariaDB has improved significantly over the years.
We have functions to create JSON documents, extract values, modify objects, inspect arrays, compare documents, and even transform JSON into relational rows using JSON_TABLE().
But sometimes, a very small piece of syntax can make a surprisingly large difference.
With MariaDB 13.1, we can finally write:
document->’$.customer.name’
and:
document->>’$.customer.name’
Yes, the JSON arrow operators have arrived in MariaDB!!
And MariaDB 13.1 also improves JSON_TABLE() with support for formatted JSON columns, allowing complete JSON objects and arrays to be returned without converting them into scalar SQL values.
…
Continue reading “MariaDB 13.1 Feature in Focus: JSON Operators and JSON_TABLE Improvements”
When we talk about open source contributions, we often focus immediately on the code.
How many lines were changed?
What feature was added?
What do the benchmarks show?
But sometimes, the most interesting part is not the feature itself. It is the journey that transforms a production problem inside one company into an improvement available to an entire community.
This is exactly what happened with Headout, Arcadiy Ivanov (Karellen, Inc), and MariaDB Server.
The technical result is support for BLOB values in in-memory internal temporary tables.
…
Continue reading “From a Production Problem to MariaDB: Headout’s Open-Source Contribution Journey”
Sometimes a change happens progressively, one compatibility matrix at a time, until somebody finally writes down what has already become obvious.
This time, Adobe wrote it down.
In its database compatibility guidance for Adobe Commerce, Adobe now describes MariaDB as the default and recommended database platform going forward.
This is the future direction of Adobe Commerce, and, I must admit, this is very nice to read.
Magento, Magento Open Source and Adobe Commerce
Before going further, it is useful to clarify the names, because Magento and Adobe Commerce are often used interchangeably, even though they do not refer to exactly the same product.
…
Continue reading “Adobe Commerce Chooses MariaDB as Its Default Database Platform”
Names are important.
They help us identify people, projects, products, pets, database servers, and occasionally the correct bug tracker.
This may sound obvious, but the database world has spent more than fifteen years proving that it is not.
MySQL and MariaDB share a substantial amount of history, syntax, tooling, knowledge, applications, and community. They also have similar command names, compatible protocols, familiar configuration variables, and many users who simply say “MySQL” when they actually mean:
Some database server that speaks the MySQL protocol and probably has an executable named mysqld.
And most of the time, everybody understands.
…
Continue reading “Say the Name: MariaDB, MySQL, and the Ecosystem We Share”
In my previous post, I introduced the MariaDB Privacy-First Stack.
Nextcloud for collaboration, Passbolt for passwords and secrets, and MariaDB Server for the data.
Simple enough.
But after explaining what the stack is, the next question is usually very practical:
Where can I deploy it?
And the answer should not be:
On the cloud provider the template was written for.
That would be a strange way to talk about digital sovereignty.
If the architecture is really meant to give you more control, you should also have some freedom regarding where it runs.
…
Continue reading “Deploying the MariaDB Privacy-First Stack Anywhere with Terraform”
Database migrations are rarely only about replacing one database server with another.
In real production systems, especially in fintech, a migration is usually about reducing risk, keeping the application online, improving scalability, and giving teams more room to evolve the architecture without freezing product development.
This story is about a fintech B2B enterprise that migrated from a monolithic PostgreSQL 12 environment to MariaDB 11. The company runs a payments-related platform for discounts and cashback, where users can check balances, transaction history, applicable discounts, and other account information. The payment-related part of the workload was mostly transactional, while the rest was mixed, with roughly 60% reads and 40% writes.
…
Continue reading “From PostgreSQL 12 to MariaDB 11: A Gradual Fintech Migration with 23% Lower TCO”
Have you ever modified a MariaDB configuration file, restarted the service, and immediately regretted it?
You wanted to change:
innodb_buffer_pool_size=16G
but accidentally wrote:
innodb_buffer_pool_sze=16G
One missing letter.
That is enough to turn a perfectly healthy database server into a service that refuses to start.
And of course, this kind of mistake never happens during a quiet maintenance window when everybody is available.
It happens during an automated deployment.
It happens during an upgrade.
It happens on a remote server.
Or it happens just before you planned to leave for dinner.
…
When people hear “online schema change” in the MySQL and MariaDB world, many immediately think about pt-online-schema-change. And for good reasons: for years, changing a large table in production was one of those tasks that could ruin your day.
Recently, I discovered that MariaDB includes a very useful hidden gem I completely missed: the ability to update a table schema without blocking concurrent DML statements for the duration of the schema change. [1]
As you probably already know, MariaDB Server supports multiple schema change algorithms.
This is an overview summary:
| ALGORITHM=INSTANT | Metadata-only change. |
…
Continue reading “MariaDB Hidden Gem: Online Schema Change without pt-osc”