alibaba/AliSQL
alibaba/AliSQL has 5,992 GitHub stars and 905 forks. GitHot measured -1 in 7 days. Last checked 2026-11-09 07:06 UTC. Last push 2026-10-16.
AliSQL is a MySQL branch originated from Alibaba Group. Fetch document from Release Notes at bottom.
What you can do
- DuckDB Storage Engine - Columnar execution and storage for analytical tables, with automatic compression - Available
- Vector Index (VIDX) - Native vector storage & ANN search with HNSW, supports COSINE & EUCLIDEAN distance - Available
- Native Flashback - Query historical InnoDB data with AS OF TIMESTAMP and retained undo snapshots - Available
- Large TX Optimization - Binlog Cache Free Flush reduces commit-time I/O amplification for large InnoDB transactions - Available*
측정된 스타 증가
- in 24h
- 업데이트 지연
- in 7 days
- -1
- in 15 days
- 업데이트 지연
- in 1 month
- 업데이트 지연
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
README.md
Original
AliSQL
Alibaba's MySQL Branch with DuckDB Analytics and Native Vector Search
Based on MySQL 8.0.44 and maintained by Alibaba Cloud Database Team
Features • Quick Start • Docs • Roadmap • Contributing
About AliSQL
AliSQL is an open-source MySQL branch maintained by Alibaba Cloud Database Team. This release is based on MySQL 8.0.44 and adds a DuckDB analytical storage engine, HNSW vector indexes, Native Flashback, binlog realtime replication (BRR), and binlog optimizations while retaining the MySQL client protocol.
The 2026-10-16 update introduces BRR and upgrades the embedded DuckDB snapshot to v1.5.2-dev736, with optional AUTO_INCREMENT and background checkpoints.
Analytics Reference ResultsThe included TPC-H SF100 results show more than 200x speedup over InnoDB for several queries in that test environment |
Native Vector IndexesThe |
MySQL Client CompatibilityApplications connect through the MySQL protocol and continue to use MySQL clients and drivers |
Key Features
| Feature | Description | Status |
|---|---|---|
| DuckDB Storage Engine | Columnar execution and storage for analytical tables, with automatic compression | Available |
| Vector Index (VIDX) | Native vector storage & ANN search with HNSW, supports COSINE & EUCLIDEAN distance | Available |
| Native Flashback | Query historical InnoDB data with AS OF TIMESTAMP and retained undo snapshots |
Available |
| Large TX Optimization | Binlog Cache Free Flush reduces commit-time I/O amplification for large InnoDB transactions | Available* |
| Binlog Durability | Persist Binlog Into Redo V2 reduces synchronous binlog I/O while retaining crash recovery | Available |
| Binlog Realtime Replication (BRR) | Transmit eligible large transactions before commit and optionally apply supported DDL and transactions early on replicas | Available, opt-in |
| DDL Optimization | Instant DDL, parallel B+tree construction, non-blocking locks | Planned |
| RTO Optimization | Accelerated crash recovery for faster instance startup | Planned |
* Free Flush targets eligible InnoDB transactions while DuckDB mode is inactive. With DuckDB mode enabled, commit uses the dedicated DuckDB path. BRR reuses Free Flush cache files; this does not by itself imply a Free Flush commit.
Quick Start
Option 1: Build from Source
# Clone the repository
git clone https://github.com/alibaba/AliSQL.git
cd AliSQL
# Build (release mode)
sh build.sh -t release -d ~/alisql
# Install
make install
Option 2: Set Up a DuckDB Analytical Node
Step-by-step guide: How to set up a DuckDB node
Initialize & Start Server
# Initialize data directory
~/alisql/bin/mysqld --initialize-insecure --datadir=~/alisql/data
# Start the server with DuckDB enabled for the example below
~/alisql/bin/mysqld --datadir=~/alisql/data --duckdb_mode=ON
Usage Examples
DuckDB for Analytics
-- Create an analytical table with DuckDB engine
CREATE TABLE sales_analytics (
sale_date DATE,
product_id INT,
revenue DECIMAL(10,2),
quantity INT
) ENGINE=DuckDB;
-- Run an analytical aggregation through DuckDB
SELECT
DATE_FORMAT(sale_date, '%Y-%m') as month,
SUM(revenue) as total_revenue,
COUNT(*) as transactions
FROM sales_analytics
GROUP BY month
ORDER BY total_revenue DESC;
Vector Search for AI Applications
-- Vector features are disabled by default and vector indexes require RC.
SET GLOBAL vidx_disabled = OFF;
SET SESSION transaction_isolation = 'READ-COMMITTED';
-- Create a table with a vector column
CREATE TABLE embeddings (
id INT PRIMARY KEY,
content TEXT,
embedding VECTOR(3)
) ENGINE=InnoDB;
INSERT INTO embeddings VALUES
(1, 'first document', VEC_FROMTEXT('[0.1,0.2,0.3]')),
(2, 'second document', VEC_FROMTEXT('[0.2,0.1,0.4]'));
-- Create HNSW index for fast ANN search
CREATE VECTOR INDEX idx_embedding ON embeddings(embedding) DISTANCE=COSINE;
-- Find similar items using cosine distance
SELECT id, content,
VEC_DISTANCE_COSINE(
embedding, VEC_FROMTEXT('[0.1,0.2,0.3]')
) AS distance
FROM embeddings
ORDER BY distance
LIMIT 10;
Build Options
| Option | Description | Default |
|---|---|---|
-t release|debug |
Build type | debug |
-d <dir> |
Installation directory | /usr/local/alisql when writable; otherwise $HOME/alisql |
-g asan|tsan |
Enable sanitizer (memory/thread) | disabled |
-c |
Enable code coverage (gcov) | disabled |
Prerequisites: CMake 3.x+, Python 3, GCC 7+ or Clang 5+
Roadmap
Q4 2025 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[x] DuckDB Storage Engine [x] Vector Index (VIDX) [x] 8.0.44 Release
2026 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[x] Native Flashback [x] Transaction & Binlog [ ] DDL / RTO
- AS OF TIMESTAMP - Binlog in Redo V2 - Instant DDL
- Undo snapshots - Free Flush - Fast Crash Recovery
- Realtime Replication
Documentation
| Document | Description |
|---|---|
| DuckDB Integration Guide | Architecture, compatibility, replication, and performance reference |
| Vector Index Guide | Native vector storage and ANN search |
| Native Flashback Guide | Historical InnoDB queries and recovery |
| Binlog in Redo Guide | Redo-backed binlog persistence and fallback rules |
| Binlog Cache Free Flush Guide | Large-transaction commit path, configuration, and restrictions |
| Binlog Realtime Replication Guide | BRR transmission, early apply, configuration, monitoring, and limitations |
| 2026-10-16 Release Notes | BRR, DuckDB updates, and integration fixes |
| Release Notes | What's new in AliSQL 8.0.44 |
| Setup DuckDB Node | Quick setup guide for analytics |
External Resources:
Alibaba Cloud RDS MySQL
Alibaba Cloud RDS MySQL provides managed versions of several AliSQL features. RDS manages engine releases, topology, data synchronization, backup, monitoring, and support. Supported versions and parameter defaults can differ from this repository; use the product documentation when operating an RDS instance.
| Feature | RDS MySQL product documentation |
|---|---|
| DuckDB analytical instances | English / 中文 |
| Vector storage | English / 中文 |
| Native Flashback | English / 中文 |
| Binlog Cache Free Flush | English / 中文 |
| Binlog in Redo | English / 中文 |
The local feature guides note behavior that differs between this source tree and RDS MySQL.
Contributing
AliSQL has been open source since August 2016 and is actively maintained by Alibaba Cloud Database Team. The current 8.0.44 feature release continues that open-source line.
Bug reports, documentation fixes, and code changes are welcome.
- Fork the repository.
- Create a feature branch (
git checkout -b feature/my-change). - Commit the change (
git commit -m 'Describe the change'). - Push the branch (
git push origin feature/my-change). - Open a pull request.
For bugs and feature requests, please use GitHub Issues.
Related Tools
RDSAI CLI
RDSAI CLI is a command-line client for AliSQL and MySQL. It accepts natural-language requests for SQL generation, execution-plan analysis, and query diagnosis.
# Install
curl -LsSf https://raw.githubusercontent.com/aliyun/rdsai-cli/main/install.sh | sh
# Connect and ask in natural language
rdsai --host localhost -u root -p secret -D mydb
mysql> analyze index usage on users table
mysql> show me slow queries from the last hour
mysql> why this query is slow: SELECT * FROM users WHERE name LIKE '%john%'
Key features:
- Natural language to SQL conversion (English/中文)
- Query optimization and diagnostics
- Execution plan analysis with
Ctrl+E - Multi-model LLM support (Qwen, OpenAI, DeepSeek, Anthropic, etc.)
- Performance benchmarking with automated analysis
Project and installation instructions
Community & Support
GitHub Issues For bug reports & feature requests |
Alibaba Cloud RDS Managed DuckDB analytical instances |
License
AliSQL is licensed under GPL-2.0, the same license as MySQL.
See the LICENSE file for details.
Star History
Maintained by Alibaba Cloud Database Team
관련 프로젝트 살펴보기
Asabeneh/30-Days-Of-Python
30 Days of Python 프로그래밍 챌린지는 Python 프로그래밍 언어를 30일 동안 배우기 위한 단계별 가이드입니다. 이 챌린지는 100일 이상 걸릴 수 있습니다. 자신의 속도에 맞춰 진행하세요. 다음 동영상도 도움이 될 수 있습니다: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,486 스타grafana/grafana
개방적이고 조합 가능한 옵저버빌리티 및 데이터 시각화 플랫폼입니다. Prometheus, Loki, Elasticsearch, InfluxDB, Postgres 등 여러 소스의 메트릭, 로그, 트레이스를 시각화합니다.
77,790 스타redis/redis
실시간 데이터 기반 애플리케이션을 구축하는 개발자에게 Redis는 가장 선호되고, 가장 빠르며, 기능이 가장 풍부한 캐시, 데이터 구조 서버이자 문서 및 벡터 쿼리 엔진입니다.
77,332 스타apache/superset
Apache Superset는 데이터 시각화 및 데이터 탐색 플랫폼입니다.
75,455 스타