A
Active MemTable
An active MemTable can be used to write incremental data. When the active MemTable size triggers the threshold, then after a minor freeze, it becomes a frozen MemTable.
availability zone (AZ)
Availability Zone usually means data center in one region. One region may have multiple AZs. Please note that AZ is not same as OceanBase "zone" . In OceanBase, one zone means one data replica. For example, if an OceanBase cluster is deployed in 3 Availability Zones like H, J and K, then in each Availability Zone, the user can create multiple zones (replicas). Then, the cluster will contain 5 zones: H: (zone1, zone2), J: (zone3, zone4), K: (zone5).
B
baseline data
Baseline data is read-only ordered data that is generated in major compactions and is stored as SSTable on persistent media.
D
database
A database is a repository that organizes, stores, and manages data by using data structures. A database contains database objects, such as tables, views, and indexes, and metadata of database objects. The user can create multiple databases in one OceanBase tenant.
F
frozen MemTable
If an active MemTable reaches a specified memory threshold, the system freezes the active MemTable. Incremental data cannot be written to frozen MemTables.
I
incremental data
Incremental data is data modified by the INSERT, UPDATE, and DELETE operations. Such data is not merged with baseline data, including data in the MemTable and minor compaction data.
L
data shuffling
The system dynamically adjusts the locations of resource units and replicas within the resource units based on specific policies to balance the resource usage of all OBServers in a zone. Data shuffling policies are created based on several factors.
M
major compaction
Major compaction is a process in which incremental data in MemTables, incremental data in minor compactions, and baseline data in persistent storage are combined into new baseline data.
major freeze
All nodes in a cluster freeze the most recent active MemTables at a unified snapshot point. During the freezing process, the current MemTables no longer accept the write operations of new transactions. The write operations of new transactions are performed in new active MemTables.
MemTable
A MemTable stores all incremental modification records in the memory.
minor compaction
Minor compaction is a process for merging frozen MemTable into minor SSTable in storage, not involving major SSTable (baseline data).
minor freeze
If the incremental data size in memory exceeds a specified threshold, the system freezes the current active MemTable. The MemTable no longer accepts the write operations of new transactions. The write operations of new transactions are performed in a new active MemTable of the partition.
MVCC
Multi-version concurrency control.
O
OBClient
OceanBase Client (OBClient) is a command line interface (CLI) tool dedicated to OceanBase Database. You can use it to connect to OceanBase Database tenants.
OBD
OBD is short for OceanBase Deployer, which is an installation and deployment tool for OceanBase open-source software. OBD is also a package manager, which can be used to manage all open-source software of OceanBase.
OBServer
An OBServer is a server of OceanBase Database. OBServer can be deployed on the physical server, virtual machine and container. In OceanBase Database, a server is uniquely identified by its IP address and service port.
OceanBase Connector/C
OceanBase Connector/C is an OceanBase client development component based on C/C++.
OLAP
Online analytical processing.
OLTP
Online transaction processing.
P
primary zone
Primary zone defines the leader distribution policy. In OceanBase, there are two types: by zone and random.
For example, you have a tenant with 100 partitions. If you set primary zone as a specific zone, that means all the leaders of 100 partitions would be on this zone. Otherwise, if you set as random, then all the leaders would spread across 3 zones evenly.
R
replica
Replica is data copies in OceanBase. The minimum unit of replica is partition. In OceanBase, there 3 types of replica:
- Full-Function replica: a regular replica that contains a full set of data and features, including transaction logs, a MemTable, and an SSTable. A full-function replica can be quickly switched as the leader to provide services.
- Log replica: a replica that contains only redo logs. It does not have a MemTable or an SSTable. Log replica is a Paxos quorum but cannot provide read/write service.
- Read-only replica: a replica that contains complete logs, a MemTable, and an SSTable. Read-only replica is not a Paxos quorum but more like a learner.
resource pool
A tenant has several resource pools, which contain all resources available to the tenant. A resource pool consists of several resource units with the same unit configurations. A resource pool belongs to only one tenant. A resource unit is a group of computing and storage resources on a server. You can take it as a lightweight VM with CPU, memory, and disk resources.
A tenant has at most one resource unit on the same server. Replicas are stored in resource units, which means that the resource units are containers of replicas.
RS
RootServer (RS) is the server that runs RootService. It manages clusters, data distribution, and replicas. The resource of RootService is provided by sys tenant.
RS list
An RS list records the IP addresses of servers that run RootService in an OceanBase cluster. In most cases, each zone has an RS list.
RS lists are involved in the creation of clusters and are closely related to the SYS tenant.
OceanBase Database supports the following types of RS lists: RS lists that are directly obtained from the config server and RS lists that are updated based on the server list.
S
schema
In most cases, a schema indicates a specific database object such as a table, a view, and an index. On an OBServer, a schema is a collection of database objects.
SSTable
An SSTable stores baseline data or minor compaction data. It stores row data in order.
sys tenant
OceanBase Database supports system tenants and user tenants. A system tenant stores internal metadata managed by OceanBase Database, and provides resource for OceanBase system service and root service. sys tenant should be accessed and managed by the database administrator only.
T
table
A table is a basic logic unit of data storage in OceanBase Database. Each table consists of one or more partitions and each partition consists of rows of records, and each row has the same pre-defined columns. You can use SQL statements to create, select, update, and delete (CRUD) data in a table. Generally, several columns of a table make up a primary key, which is unique in a table.
table group
If you put some specific tables/partitions in one table group, then the leaders/data of these tables/partitions will be allocated in one same node on priority. In this way, table group helps user to improve distributed transactions performance, make it more like a local transaction.
tenant
OceanBase Database achieves resource isolation by using tenants. OceanBase Database supports multiple tenants in a single cluster. A tenant in an OceanBase cluster is equivalent to a MySQL or Oracle instance. OceanBase Database isolates resources and data among tenants. Each tenant owns a group of computing and storage resources and independently provides a complete set of database services.
transaction
A database transaction is a series of operations that are performed as a single logical unit. Transactions can be used to maintain the integrity of the database, to ensure that all or none of the SQL operations are performed.
Z
zone
In OceanBase, one zone means one data replica. For example, if an OceanBase cluster is deployed in 3 Availability Zones like H, J and K, then in each Availability Zone, the user can create multiple zones (replicas). Then, the cluster will contain 5 zones: H: (zone1, zone2), J: (zone3, zone4), K: (zone5).
Meanwhile, Availability Zone usually means data center in one region. One region may have multiple AZs. Please note that AZ is not same as OceanBase "zone".