Skip to content

arana-db/arana

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1e525f4 · May 12, 2024
Nov 13, 2023
Oct 14, 2022
Dec 12, 2023
May 12, 2024
Jul 7, 2022
Aug 15, 2023
Jul 1, 2023
May 12, 2024
May 12, 2024
Sep 30, 2023
Aug 15, 2023
Oct 11, 2022
Aug 15, 2023
Sep 22, 2022
Nov 7, 2022
Jul 20, 2023
Sep 18, 2023
Sep 22, 2022
Jul 28, 2023
Sep 30, 2023
Sep 22, 2022
Aug 15, 2023
Nov 28, 2021
Jul 8, 2023
Sep 29, 2023
Sep 29, 2023
Sep 22, 2022
Jul 17, 2023
Dec 4, 2023
Jan 13, 2024
Jan 13, 2024
Apr 7, 2023
Sep 26, 2022

Repository files navigation

Arana

Arana is a Cloud Native Database Proxy. It can be deployed as a Database mesh sidecar. It provides transparent data access capabilities, when using Arana, user doesn't need to care about the sharding details of database, they can use it just like a single MySQL database.

Overview

License codecov Go Report Card Release Docker Pulls

Stargazers Over Time Contributors Over Time
Stargazers over time Contributor over time

Introduction | 中文

First, Arana is a Cloud Native Database Proxy. It provides transparent data access capabilities, when using Arana, user doesn't need to care about the sharding details of database, they can use it just like a single MySQL database. Arana also provide abilities of Multi Tenant, Distributed transaction, Shadow database, SQL Audit , Data encrypt / decrypt and so on. Through simple config, user can use these abilities provided by Arana directly.

Second, Arana can also be deployed as a Database mesh sidecar. As a Database mesh sidecar, arana switches data access from client mode to proxy mode, which greatly optimizes the startup speed of applications. It provides the ability to manage database traffic, it takes up very little container resources, doesn't affect the performance of application services in the container, but provides all the capabilities of proxy.

Architecture

Features

Feature Complete
Single DB Proxy
Read Write Splitting
Sharding
Multi Tenant
Distributed Primary Key
Shadow Table
Tracing / Metrics
Distributed Transaction WIP
Database Mesh WIP
SQL Audit WIP
Data encrypt / decrypt Roadmap
SQL LIMITER Roadmap

Getting started

Please reference this link Getting Started

arana start -c ${configFilePath}

Prerequisites

  • Go 1.20+
  • MySQL Server 5.7+

Design and implementation

Roadmap

Built With

  • TiDB - The SQL parser used

Contact

Arana Chinese Community Meeting Time: Every Saturday At 9:00PM GMT+8

Contributing

Thanks for your help improving the project! We are so happy to have you! We have a contributing guide to help you get involved in the Arana project.

Developer

Thanks to all developers!

License

Arana software is licenced under the Apache License Version 2.0. See the LICENSE file for details.