---
title: "日志流和副本概述 - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: 日志流和副本概述 OceanBase 数据库参考传统数据库分区表的概念，把一张表格的数据划分成不同的分区（Partition）。在 V4.x 版本中，分区是用户创建的逻辑对象，是划分和管理表数据的一种机制。 每个分区都有其对应的数据存储对象，称之为分片（Tablet），它具备存储数据的能力，支持在机器之间迁移（tra…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.5.0

# 日志流和副本概述

更新时间：2026-02-20 09:10:47

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/100.oceanbase-database-concepts/500.distributed-database-objects/300.data-partitions-and-replicas/100.data-partitioning-and-partitioned-replica-overview.md)  

OceanBase 数据库参考传统数据库分区表的概念，把一张表格的数据划分成不同的分区（Partition）。在 V4.x 版本中，分区是用户创建的逻辑对象，是划分和管理表数据的一种机制。

每个分区都有其对应的数据存储对象，称之为分片（Tablet），它具备存储数据的能力，支持在机器之间迁移（transfer），是数据均衡的最小单位。Tablet 与分区一一对应，单分区表会创建一个Tablet，多分区表会为每个分区各创建一个 Tablet。

日志流是由 OceanBase 数据库自动创建和管理的实体，它代表了一批数据的集合，包括若干 Tablet 和有序的 Redo 日志流。它通过 Paxos 协议实现了多副本日志同步，保证副本间数据的一致性，实现了数据的高可用。

在分布式环境下，为保证数据读写服务的高可用，OceanBase 数据库会把同一个日志流的数据拷贝到多个机器。不同机器同一个日志流的数据拷贝称为副本（Replica）。同一日志流的多个副本使用 Paxos 一致性协议保证副本的强一致，每个日志流和它的副本构成一个独立的 Paxos 组，其中一个日志流为主副本（Leader），其它日志流为从副本（Follower）。主副本具备强一致性读和写能力，从副本具备弱一致性读能力。

## Location Cache

OceanBase 数据库按日志流、分片组织用户数据，且每个日志流有多个副本用于容灾。因此，在 SQL 请求执行过程中需要知道分区数据的位置信息，用于路由到特定机器读写对应副本的数据。分区数据的位置信息即称为 Location，每个 observer 进程会有一个服务，用于刷新及缓存本机需要的分区 Location 信息，该服务称为 Location Cache 服务。

V4.0.0 版本引入了日志流、分片的概念，如果需要获取分区数据的 Location 信息，就需要知道分区对应的分片、分片与日志流的映射关系，以及日志流副本的位置信息。您可以通过以下系统租户下的数据字典获取：

- `oceanbase.CDB_OBJECTS`：指定 `OBJECT_TYPE` 为 `TABLE`、`TABLE PARTITION` 或 `TABLE SUBPARTITION` 可以获取对应分区的 `DATA_OBJECT_ID`，即 `TABLET_ID`（租户下分片的唯一标识）。
 - `oceanbase.CDB_OB_TABLET_TO_LS`：获取分片所属的日志流，日志流在租户下通过 `LS_ID` 唯一标识。
 - `oceanbase.CDB_OB_LS_LOCATIONS`：获取日志流的副本类型及位置。

## 副本类型

根据日志流副本存储数据种类的不同，副本被划分成不同的类型，以支持不同业务在数据安全、性能伸缩性、可用性、成本等之间的选择。

OceanBase 数据库支持以下类型的副本：

- 全能型副本（FULL/F）

  全能型副本称为 Paxos 副本，对应副本可构成 Paxos 成员组，参与选举投票。
 - 只读型副本（READONLY/R）

  对于 V4.x 版本，OceanBase 数据库从 V4.2.0 版本开始支持只读型副本。只读型副本为非 Paxos 副本，对应副本不可构成 Paxos 成员组，不参与选举投票。
 - 列副本（COLUMNSTORE/C）

  对于 V4.x 版本，OceanBase 数据库从 V4.3.3 版本开始支持列存副本。列存副本与只读副本类似，也为非 Paxos 副本，对应副本不可构成 Paxos 成员组，不参与选举投票。

## 分布式一致性协议

OceanBase 数据库使用 Paxos 协议在同一日志流各副本间同步事务日志，多数派同步成功才能提交。缺省情况下读、写操作在主副本上保证强一致；从副本支持弱一致性读，允许读取某一个稍旧版本的数据。

此外，对于 V4.3.x 版本，OceanBase 数据库从 V4.3.1 版本开始支持 R 副本按照 Region 级联，跨 Region 部署的 R 副本可以自动组成树状级联结构来同步日志，减少跨 Region 网络流量的消耗。

## 数据均衡

OceanBase 数据库通过 Root Service 管理租户内各个资源单元间的负载均衡。不同类型的副本对资源的需求各不相同，Root Service 在执行均衡操作时需要考虑的因素包括每个资源单元的 CPU、磁盘使用量、内存使用量以及 IOPS 使用情况。经过负载均衡，最终会使得所有机器的各类型资源占用都处于一种比较均衡的状态，充分利用每台机器的所有资源。

Root Service 主要通过以下两种方式实现数据均衡：

- 副本均衡

  Root Service 会通过 Unit 迁移、日志流副本复制或迁移的方式，调整租户在各机器上的资源占用情况。
 - Leader 均衡

  在副本均衡的基础上，Root Service 会根据租户的 Primary Zone 等因素，自动创建并均衡各机器日志流的 Leader 的数目。有关日志流 Leader 均衡的详细介绍，参见 [租户内均衡](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004479398)。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
