/oceanbase

OceanBase is an enterprise distributed relational database with high availability, high performance, horizontal scalability, and compatibility with SQL standards.

Primary LanguageC++OtherNOASSERTION

What is OceanBase database

OceanBase Database is a native distributed relational database. It is developed entirely by Alibaba and Ant Group. OceanBase Database is built on a common server cluster. Based on the Paxos protocol and its distributed structure, OceanBase Database provides high availability and linear scalability. OceanBase Database is not dependent on specific hardware architectures.

OceanBase Database has these features:

  • High availability Single server failure recovers automatically. OceanBase Database supports cross-city disaster tolerance for multiple IDCs and zero data loss. OceanBase Database meets the financial industry Level 6 disaster recovery standard (RPO=0, RTO<=30 seconds).
  • Linear scalability OceanBase Database scales transparently to applications and balances the system load automatically. Its cluster can contain more than 1500 nodes. The data volume can reach petabytes. The records in a single table can be more than a trillion rows.
  • Highly compatible with MySQL OceanBase Database is compatible with MySQL protocol and syntax. You can access to OceanBase Database by using MySQL client.
  • High performance OceanBase Database supports quasi memory level data change and exclusive encoding compression. Together with the linear scalability, OceanBase Database provides high performance.
  • Low cost OceanBase Database uses PC servers and cheap SSDs. Its high storage compression ratio and high performance also reduce the storage cost and the computing cost.
  • Multi-tenancy OceanBase Database supports native multi-tenancy architecture. One cluster supports multiple businesses. Data is isolated among tenants. This reduces the deployment, operation, and maintenance costs.

OceanBase Database supports the entire core business of Alipay and the core systems of hundreds of financial institutions, such as banks and insurance companies.

Quick start

Refer to the Get Started guide (Simplified Chinese, English will be ready soon) to try out OceanBase Database.

Documentation

Supported clients

Licencing

OceanBase Database is under MulanPubL - 2.0 license. You can freely copy and use the source code. When you modify or distribute the source code, please obey the MulanPubL - 2.0 license.

OS compatibility list

OS Ver. Arch Compilable Package Deployable Compiled Binary Deployable Mysqltest Passed
CentOS 7.2,8.3 x86_64
Debian 9.8,10.9 x86_64
Fedora 33 x86_64
MacOS any x86_64
openSUSE 15.2 x86_64
OpenAnolis 8.2 x86_64
SUSE 15.2 x86_64
Ubuntu 16.04,18.04,20.04 x86_64

How to build

Preparation

Before building, you need to confirm that your device has installed the necessary software.

Fedora based (, including CentOS, Fedora, OpenAnolis, RedHat, etc.)

yum install git wget rpm* cpio make glibc-devel glibc-headers binutils

Debian based (, including Debian, Ubuntu, etc.)

apt-get install git wget rpm rpm2cpio cpio make build-essential binutils

SUSE based (, including SUSE, openSUSE, etc.)

zypper install git wget rpm cpio make glibc-devel binutils

debug mode

bash build.sh debug --init --make

release mode

bash build.sh release --init --make

rpm packages

bash build.sh rpm --init && cd build_rpm && make -j16 rpm

Contributing

Contributions are warmly welcomed and greatly appreciated. Here are a few ways you can contribute:

Support

In case you have any problems when using OceanBase Database, welcome reach out for help: