Open-source distributed relational database from Ant Group, MySQL-compatible, built on Paxos for high availability and horizontal scaling.
alibaba/AliSQL
A MySQL 8.0.44 branch from Alibaba Cloud adding a DuckDB analytical storage engine, HNSW vector indexes, and native flashback queries.
- Stars
- 5,992
- Forks
- 905
- Open issues
- 13
- Last commit
- 22 days ago
What is it?
AliSQL is a branch of MySQL 8.0.44 maintained by the Alibaba Cloud Database Team. It keeps the MySQL client protocol, so existing MySQL clients and drivers can connect without changes, while adding several engine-level capabilities.
The main additions are a DuckDB storage engine for analytical tables, which uses columnar execution and storage, and native vector support through the VECTOR(N) type and HNSW indexes with cosine and Euclidean distance, supporting up to 16,383 dimensions. Native Flashback lets queries read historical InnoDB data with AS OF TIMESTAMP, and binlog optimizations cover large-transaction flushing, binlog persistence in redo, and opt-in binlog realtime replication.
Some features are marked planned, including instant DDL and faster crash recovery. Build instructions cover release and debug modes with CMake, Python 3, and GCC 7+ or Clang 5+.
Key features
- 01Columnar DuckDB storage engine for analytical tables with automatic compression.
- 02HNSW vector indexes with COSINE and EUCLIDEAN distance on up to 16,383 dimensions.
- 03Native Flashback queries on historical InnoDB data via AS OF TIMESTAMP.
- 04Binlog optimizations including large-transaction cache flushing and binlog persistence in redo.
- 05Keeps the MySQL client protocol so existing clients and drivers still work.
Use cases
- Running analytical queries alongside transactional tables without moving data to a separate warehouse.
- Storing embeddings and running approximate nearest-neighbor search inside MySQL.
- Querying historical table state for auditing or recovery with native flashback.
- Migrating existing MySQL applications that need analytics or vector features.
Quick start
- 1
Clone the repository
git clone https://github.com/alibaba/AliSQL.git - 2
Change into the project directory
cd AliSQL - 3
Build in release mode
sh build.sh -t release -d ~/alisql - 4
Install the build
make install
Things to know
- Building from source requires CMake 3.x or later, Python 3, and GCC 7+ or Clang 5+.
- Vector features are disabled by default and vector indexes require READ-COMMITTED isolation.
- The README states the project is licensed under GPL-2.0, a copyleft license.
In collections
Topics
FAQ
- What is AliSQL?
- A MySQL 8.0.44 branch from Alibaba Cloud adding a DuckDB analytical storage engine, HNSW vector indexes, and native flashback queries. AliSQL is a branch of MySQL 8.0.44 maintained by the Alibaba Cloud Database Team. It keeps the MySQL client protocol, so existing MySQL clients and drivers can connect without changes, while adding several engine-level capabilities.
- Is AliSQL free to use? What license does it have?
- AliSQL is open source under the Other license. Check the license terms before using it in commercial products.
- Is AliSQL still maintained?
- Actively maintained. The last commit to AliSQL was on Oct 16, 2026.
- What can I use AliSQL for?
- Running analytical queries alongside transactional tables without moving data to a separate warehouse. Storing embeddings and running approximate nearest-neighbor search inside MySQL. Querying historical table state for auditing or recovery with native flashback. Migrating existing MySQL applications that need analytics or vector features.
- How do I install AliSQL?
- Clone the repository: git clone https://github.com/alibaba/AliSQL.git Change into the project directory: cd AliSQL Build in release mode: sh build.sh -t release -d ~/alisql Install the build: make install
- Where can I get AliSQL?
- The source code and installation instructions are on GitHub: https://github.com/alibaba/AliSQL
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A single-file C++ library for approximate nearest-neighbor vector search and clustering, with bindings for Python, JavaScript, Rust, Java, Go, Swift and more.
Open-source search database supporting full-text, vector and hybrid search with real-time indexing and SQL, positioned as an Elasticsearch alternative.
A leaderless, distributed SQLite replication server that accepts writes on any node and speaks the MySQL wire protocol.
A pure Go library for speaking the MySQL and MariaDB network protocol, with binlog replication, a client, a fake server and a database/sql driver.
Open-source distributed SQL database with MySQL 8.0 compatibility, ACID transactions, HTAP analytics, and vector search.