Preparing Your Analytical Databases for Agents
Agents can query databases: this has always been the dream of many data people! But there is some work to do to make this process reliable, secure, and valuable for your team.
Experts in MariaDB, MySQL, PostgreSQL and Casssandra Databases
Live Last read · last published · next check
Agents can query databases: this has always been the dream of many data people! But there is some work to do to make this process reliable, secure, and valuable for your team.
Not many developers know about savepoints in relational databases. Even less of them know when to use them. It’s not their fault: I can’t remember seeing a good explanation of this feature. Let’s try to clarify this lesser-known functionality. In this article I’m using MariaDB syntax. But the concepts are very similar for other transactional databases. To know the exact syntax you should use on a…
Vettabase and HammerDB are announcing a partnership to de-risk and assist database migrations. As vendor-independent companies that offer services for multiple database technologies, Vettabase and HammerDB intend to help organisations in the delicate move of changing their database systems. For many teams, a migration to another database is a logical option — but it comes with real concerns: Our…
In some situations, an application needs to run a single logical transaction that involves multiple database technologies: in our example, they’ll be MariaDB and PostgreSQL. This is not an optimal scenario and I’m not recommending to design systems in this way. But it’s simply a situation that you might have to deal with in real life, for various reasons that are outside of the scope of this…
How do you represent information like this in a database? There are many ways to do that. The most common is to split dates into three different columns, each of which will be NULL when it doesn’t have a specific value.But this makes dates harder to validate for the database, it’s inpractical because it complicates SQL queries, and NULL is error-prone. A more practical and efficient way to store…

Hierarchical and networked data appears everywhere in modern databases: organisational charts, product category trees, dependency graphs, and even transport networks. Applications need to retrieve this data to draw a chart, find out whom a certain employee reports to, or find the routes that connect two train stops. Storing and querying this kind of data in a relational database is not trivial. If…
In the first part of this series, we deployed a 3-node MariaDB Galera Cluster on Ubuntu 24.04. While a 3-node topology provides the best fault tolerance, sometimes you need a simpler setup – for example, a two-node cluster with a lightweight arbitrator to maintain quorum without running a full third MariaDB instance. At Vettabase, we often use this pattern in small or resource-limited…
At Vettabase, we’re starting a new blog series on High Availability (HA) with focus on MariaDB Galera Cluster. This series will be a collection of hands-on guides, each tackling one practical topic: from installation, configuration, and adding or removing nodes, to backups, upgrades, and schema changes. Our goal is simple: create a complete, practical reference that anyone can follow to deploy and…
There are many ways to import data from external sources into a database. MariaDB and PostgreSQL offer native solutions: the MariaDB CONNECT storage engine and PostgreSQL Foreign Data Wrappers. Unfortunately, these options are often overlooked, in favour of more expensive, more fragile and slower solutions. Let’s see what CONNECT and FDWs are, and why they are often the best choice for importing…
I see a lot of problems with database schemas: missing indexes, wrong types, tables used like an spreadsheet… but all these problems are widely known. An often overlooked problem is inconsistency. Let me explain how you should guarantee database consistency, and how inconsistency is making your life more sad than it would be otherwise. What Schema Inconsistency Is The inconsistencies we’ll talk…