VillageSQL came out of
stealth this
week to announce they’ve soft-forked MySQL 8.4 in a bid to attract
community development and to improve the plugin experience. They
specifically mention wanting to support AI workloads in MySQL by
adding vector index capabilities.
In open-source land
MySQL introduced a VECTOR
type
in their 9.0 innovation
release. Indexing
of vector columns happens automatically but not without one of
Oracle’s proprietary products, MySQL
Heatwave
or MySQL AI. Even the
DISTANCE
function
on vector values is not available in MySQL Community Edition at the
moment, only the type itself.
Like VillageSQL, Percona for
MySQL is another distribution
of MySQL based on MySQL 8.4. (Percona mentioned choosing to
skip
MySQL’s innovation releases.) Percona has discussed building their own
vector index but as of late last
year
it doesn’t appear they’ve released it yet.
Separately, Alibaba last week also published their
AliSQL fork of MySQL 8.0 with
vector index support.
And then there’s MariaDB which was a
soft-fork
of MySQL from 2009 until 2014 when 10.0 GA was
released. MariaDB
is run by the independent MariaDB Foundation and has a rich plugin
ecosystem. MariaDB
released vector index support in the 11.7 rolling
release
in September 2024 and then in the 11.8 LTS
release
in June of 2025. (MariaDB
says, “one of the major
open source contributors to MariaDB Vector has been Amazon”.)
There have also been small-scale experiments
building vector search support
using existing types.
Plugins and types
VillageSQL differs from MySQL (and all its existing distributions) and
MariaDB in that it allows new types to be created as plugins, though
it doesn’t yet support indexing custom types.
With all these different distributions and forks, the broader
community
continues
to discuss
where future community development of MySQL might focus.
In proprietary land
PlanetScale
released
vector index support in March, 2025. Cloud SQL for MySQL
released
vector index support in 2024. Amazon RDS for MySQL doesn’t seem
to
support vector indexes yet but Amazon RDS for MariaDB 11.8 (which,
again, has vector index support) is
available.
Azure DB for MySQL doesn’t appear to have vector index support and
Azure DB for MariaDB was
retired
last year. Vector indexes were
announced
in TiDB (a rewrite, not a fork, of MySQL) in 2024 but the feature is
still marked
beta
today.
Index algorithms
Every distribution and fork and rewrite of MySQL described
above today uses variations of the Hierarchical Navigable Small
World (HNSW) algorithm to index
vectors, except PlanetScale which uses a variation of the
Space-Partitioned Approximate Nearest
Neighbors
(SPANN) algorithm, and Cloud SQL for MySQL which uses Google’s
Scalable Nearest
Neighbor
(ScaNN) algorithm.
What's next
In a future post we'll dig more into how vector search actually works
as a user, and the different choices you might make while doing it.
About the author
Phil is the founder of The Consensus. Before this, he contributed to
Postgres products at EnterpriseDB, cofounded and led marketing at
TigerBeetle, and was an engineering manager at Oracle. He runs the
Software Internals Discord, the NYC Systems Coffee Club, the
Software Internals Email Book Club, and co-runs NYC
Systems. @eatonphil
Notice a mistake? Have a question or comment? Write to the editor.