【12.2新特性】Oracle Sharding分片级别的高可用实现

简介:

编辑手记:Oracle Sharding是从12c推出的通过分区技术实现的一种数据库架构,在12.2中这项技术也越来越成熟。release 2中新特性包含:分片的自动部署,智能路由和全生命周期管理等,同时,通过与DG技术的集成,将实现分片级别的高可用。


推荐阅读:

关于Oracle Sharding,你想知道的都在这里

Oracle 12.2新特性掌上手册 - 第四卷 Sharding 的增强

Oracle Sharding与Oracle数据库复制技术(Data Guard)集成,可在碎片级别实现高可用性和灾难恢复


Oracle Sharding与Oracle Data Guard紧密集成。 Data Guard复制维护一个或多个分片(主要)的同步副本(standbys),以实现高可用性和数据保护。Standbys可以在本地或远程部署,并且在使用Oracle Active Data Guard时也可以打开只读访问。


1、关于分片和复制

Oracle Sharding与Oracle Data Guard紧密集成。复制技术为读取提供高可用性,灾难恢复和增强的可扩展性。


分片数据库(SDB)中的复制拓扑使用GDSCTL命令语法声明性地指定。 Oracle Sharding自动部署指定的复制拓扑并启用数据复制。


SDB的可用性不受一个或多个分片的中断或性能影响。 复制技术用于提供单独的分片级高可用性(Oracle Active Data Guard)。 创建SDB时,会自动配置和部署复制。 或者也可以使用Oracle RAC进行碎片级高可用性(由复制补充),以在集群中断的情况下维护分片级数据可用性。 如果出现计划外中断,Oracle Sharding会自动从分片到其副本的数据库连接失败。


2、Oracle Data Guard与SDB集成的实现

Oracle Data Guard复制维护一个或多个分片(主要)的同步副本(standbys),以实现高可用性和数据保护。 Standbys可以在本地或远程部署,并且在使用Oracle Active Data Guard时也可以打开只读访问。


Oracle Data Guard可以用作SDB的复制技术,使用系统管理的或复合的分片方法。

将Oracle Data Guard与系统管理的SDB配合使用

在系统管理和复合分片中,逻辑复制单元是称为分片组的一组分片。在系统管理的分片中,分片包含存储在SDB中的所有数据。数据通过构成分片组的碎片之间的一致哈希进行分片。属于分片组的碎片通常位于同一个数据中心。整个分组可以完全复制到相同或不同数据中心中的一个或多个分组。


下图说明了Data Guard复制如何与系统管理的分片一起使用。在图中的示例中,有一个主分片组,Shardgroup 1和两个备用分片组,Shardgroup 2和Shardgroup 3. Shardgroup 1由Data Guard主数据库(分片1-3)组成。 Shardgroup 2由位于同一数据中心并配置为同步复制的本地备用数据库(分片4-6)组成。 Shardgroup 3由位于不同数据中心的远程Standbys(分片7-9)组成,并配置为异步复制。在此配置中启用Oracle Active Data Guard,因此每个待机都是只读的。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


shardgroup以逻辑复制单元呈现,其实现细节对于用户是透明的。 使用Data Guard,在分片(数据库)级别进行复制。 上图中的SDB由三组复制的分片组成:{1,4,7},{2,5,8}和{3,6,9}。 每组复制的分片都作为启用快速启动故障切换(FSFO)的Data Guard Broker配置进行管理。


要部署复制,需要指定shardgroups(region,role等)的属性,并将碎片添加进去。 Oracle Sharding自动配置Data Guard并为每组复制的分片启动FSFO观察器。 它还提供只读工作负载,基于角色的全局服务和复制滞后以及基于位置的路由的负载平衡。


运行以下GDSCTL命令来部署上图所示的示例配置。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


使用Oracle Data Guard与复合SDB

在复合分片中,SDB由多个分片组成。 但是,每个shardspace,而不是复制的碎片,包含复制的碎片组。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


运行以下GDSCTL命令部署上图所示的示例配置。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


文章转自数据和云公众号,原文链接
相关文章
|
存储 SQL Oracle
Oracle使用expdp/impdp实现全库导入导出的整体流程
Oracle的全库导入,首先一点必须先创建数据库,创建了数据库,才能往该数据库导入所有数据。相对来说,使用Oracle进行数据导入导出还很有些“麻烦”的,大多数资料上来就是......
6150 0
Oracle使用expdp/impdp实现全库导入导出的整体流程
|
存储 设计模式 Oracle
Oracle跨数据库实现定时同步指定表中的数据
Oracle跨数据库实现定时同步指定表中的数据
|
Oracle 关系型数据库
查询Oracle字段列的最大值并查询多列数据的实现方法
查询Oracle字段列的最大值并查询多列数据的实现方法
2094 0
|
存储 SQL Oracle
跨Oracle数据库实现表级别的实时同步
跨Oracle数据库实现表级别的实时同步
|
10月前
|
Oracle 关系型数据库
中国第一个Oracle高可用认证大师?
根据Oracle的官方说明,要想获得Oracle Database 12c Maximum Availability certification,需要下面三个证书
|
10月前
|
运维 Oracle 关系型数据库
中国第一个Oracle高可用认证大师?
根据Oracle的官方说明,要想获得Oracle Database 12c Maximum Availability certification,需要下面三个证书
中国第一个Oracle高可用认证大师?
|
SQL 存储 Oracle
在Oracle 12c中,在RMAN方面有哪些增强的新特性?
在Oracle 12c中,在RMAN方面有哪些增强的新特性?
148 0
|
Oracle Java 关系型数据库
oracle实现主键自增长及自动生成策略
oracle实现主键自增长及自动生成策略
473 0
|
SQL Oracle 关系型数据库
SpringBoot整合oceanbase,实现oracle无缝切换到oceanbase
随着去“IOE”化的潮流,近些年来,许多与国家相关的项目不约而同到地往”国产化“方向靠拢,不可避免地,一些项目可能需要进行数据库迁移。
979 0
SpringBoot整合oceanbase,实现oracle无缝切换到oceanbase

推荐镜像

更多