Repolode
alibaba

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. 1

    Clone the repository

    git clone https://github.com/alibaba/AliSQL.git
  2. 2

    Change into the project directory

    cd AliSQL
  3. 3

    Build in release mode

    sh build.sh -t release -d ~/alisql
  4. 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