重庆oracle认证培训机构

新闻分类

产品分类

热门关键词

联系我们

企业名称:重庆科禄德科技有限公司

联系人:冷老师

手机:17754917523

邮箱:93865813@qq.com

网址:www.cqora.com

地址:重庆石桥铺高创锦业

Oracle键问题和解决方案。

您的当前位置: 首 页 >> 新闻资讯 >> 常见问题

Oracle键问题和解决方案。

发布日期:2022-05-17 作者: 点击:

Oracle键问题和解决方案。

IT系统通常采用两种方式来应对业务量的激增,一种是垂直扩展,即增加单个服务器的CPU计算能力。内存容量和磁盘承载能力;二是水平扩展,即通过增加服务器的数量来增加处理能力。

与纵向扩展相比,横向扩展在扩展规模、系统性能和可靠性方面具有更明显的优势。在数据库层面,数据库的横向扩展更多的是通过数据库集群实现的。Oraclerac(全称Oracleralapplicationcluster)是基于共享存储的典型集群架构。

本文将详细讨论OracleRAC实现双重生活的两种结构、关键问题和解决方案。作者赵海,工作十多年,一线实践经验丰富,擅长云项目建设和部署。金融业数据中心解决方案规划设计。

1.架构分析。

1.基于ASM冗余设计架构(以下简称架构一)

存储层实现SAN网络跨数据中心级联,使双数据中心实现整体SAN网络。

通过网络层,SCANIP可以跨数据中心浮动。

应用层实现跨数据中心RAC,每个数据中心都有一个实例节点。

OracleASM存储层,数据磁盘组需要实现基于双数据中心存储卷的双镜像冗余策略,OCR仲裁磁盘组需要实现基于双数据中心存储卷和第三方网站网络存储卷的三块磁盘高可用策略。

2.基于存储集群实现的架构(以下简称架构二)

在存储虚拟产品的帮助下,存储层实现了由双数据中心和第三方仲裁网站组成的存储集群,使存储可以提供给应用层分布式虚拟磁盘,Z终使应用程序对存储层的逻辑映射没有感知。

通过网络层,SCANIP可以跨数据中心浮动。

应用层实现跨数据中心RAC,每个数据中心都有一个实例节点。

OracleASM存储层,磁盘组不需要做任何特殊的冗余配置,只需将存储层提供的分布式虚拟磁盘作为本地共享磁盘进行安装配置即可。

2.实现难度分析。

2.1架构复杂性。

1.架构1的复杂性在于ASM层的设计。ORACLERAC实例节点看到的共享磁盘是基于双中心存储的镜像策略。所有IO的读写分发都是由ASM本身的冗余算法规则决定的。DBA不仅要根据磁盘设计合理的FailureGroup,还要结合第三方网站的网络存储卷合理设计仲裁磁盘组的分配。更重要的是,ASM的一些IO参数需要结合实际的网络环境指标(延迟.稳定性等)进行调整。).稳定性.灾难测试等。

2.结构1的复杂性在于整体结构的复杂性。例如,仲裁一致性是指双中心之间的存储集群和数据库RAC集群的仲裁结果是否能保证一致性。存储集群通过仲裁网站与两个网站之间的网络连接来确定网站故障。数据库集群通过以太网心跳和OCR仲裁板进行数据库仲裁。数据库中的OCR仲裁板是存储集群提供的分布式共享卷。如何保证两种仲裁的一致性是一个非常重要的问题。假设在网站级别出现故障时,数据库集群首先根据网络故障触发仲裁,以确定网站A的节点存活。存储集群的仲裁随后发生。此时,如果根据仲裁网站确定的结果正好是仲裁委员网站B的节点存活。那么整个数据库集群就会崩溃,这对业务来说是一场灾难。

2.2着陆成本。

1.从实现的基本条件来看,这两种结构的实现将依赖于双中心的二层。双中心波分设备。以太转换设备。光纤链路租赁是必不可少的条件。包括其购买成本和未来的运行和维护成本。这是一个非常可观的成本预算。

2.从存储层的结构组成来看,存储层不需要增加任何其他设备的成本和运行和维护成本。然而,架构2需要依靠存储层的虚拟网关产品来实现存储虚拟集群,这无疑需要增加相应的购买成本和相应的运行和维护成本。特别注意存储集群产品是否有容量许可成本。

3.从第三点的仲裁网站成本来看,这两种方案都需要第三点的仲裁。区别在于架构一需要NAS存储,而架构二需要仲裁虚拟机是基于以太网的计算资源。投资成本没有区别。

4.从Oracle运维成本的角度来看,结构对DBA的要求非常严格。DBA不仅需要了解原理,还需要在性能分析方面有深刻的造诣,以确保在复杂的双中心联动环境中快速准确地判断和处理各种复杂情况下的性能和稳定性变化。结构2对DBA没有特别严格的要求,但需要增加存储集群的专业维护成本。

3.关键问题及解决方案。

3.1.针对架构二的仲裁一致性。

在这个问题上,有两个风险触发点:数据库和集群的仲裁触发和仲裁过程的时间顺序紊乱;1:1分离后的默认仲裁策略不一致。换句话说,只要控制这两个触发点,理论上就可以避免这个问题。对于第一个触发点,事实上,存储集群的默认仲裁触发时间约为15秒,数据库仲裁触发的控制参数由miscount参数决定。因此,只要我们将misscount参数调整到45秒,即理论上,存储集群仲裁绝对保证在第一位,数据库仲裁在第二位,第一个触发点就不会消失。

对于第二个触发点,假设两个网站的节点资源是平等的,仲裁选票是平等的,存储集群将有一个默认的Winner策略,在这种情况下,数据库集群也有一个默认的仲裁策略:选择一个小的实例集群来生存。只要我们确保这两种策略结果的一致性,第二个触发点就不存在。

3.2.链路稳定不可控。

这个问题是两种结构都面临的问题。主要表现为两个方面:链路稳定性无法控制;延迟指标无法控制。由于双中心之间的链路是通过租赁运营商的裸光纤链路实现的,因此将经历大量的中继设备和节点。金融企业本身在管理和技术控制方面都是无法控制的因素。假设双中心之间的链路延迟指标不稳定,即数据库节点之间的私人网络传输延迟往往会出现长延迟,这必然会导致数据库节点之间的阅读和写作热点竞争加倍。

由于数据库集群之间的数据传输量非常大(缓存、锁、心跳等),在阅读和写作热点相对突出的业务中,数据库的阅读和写作性能会导致灾难,数据库节点会直接僵化。此外,链路的不稳定会导致存储链路的频繁切换,甚至集群仲裁的频繁发生,这是业务连续性的灾难。

对于这个问题,对于当前金融业的传统数据架构,没有完整的解决方案。我们只能通过以下措施来降低这个问题的风险。

1、业务层面需要进行拆分重组,按照IO特点进行合理拆分,将读写业务尽量分布于不同节点上,减少节点间的锁竞争。按照业务将数据库表进行分区,避免在数据库写上的数据热点块儿。例如,对于银行核心系统来讲,尤其是要将批量业务和联机业务区分对待,批量业务的热点以及数据量非常之巨大,所以一定要将批量业务的数据库读写放在单边实现。对于联机业务来讲可以根据热点状况以及链路质量评测结果可以尝试实现双中心同时读写,但是本文建议对于这种重量级的业务还是要从业务层尽量实现应用上的读写分离,或者在应用层双中心部署而在数据库层将数据引到单边来做。

2、双中心间通讯的整体控制,具体包括对通讯带宽的优先级管理、对通讯的实时监控和控制、对跨中心数据传输的严格策略把控。例如:优先保障存储和数据库通讯的优先级和带宽,严格的规则算法和优先级限定VMOTION、DRS等行为的跨中心随意性,从LTM负载分发上尽可能保障正常情况下纵向IO的单中心效率策略,故障情况下保障跨中心访问的科学性。DWDM上设置双中心间通讯带宽的逻辑隔离以及实时可控。

3.3、存储网络故障泛滥

这是两种架构都会面临的问题,只是架构一可能性相对高一些。

如果我们把两个中心的SAN环境整合为一张大网,物理上没有任何隔离的大网,那么可能会因为局部的存储网络故障而波及到整个存储网络。尽管我们通过SAN交换机上的逻辑隔离能够解决大部分的安全问题,但是这样的风险毕竟还是存在的。

所以我们可以通过对数据中心内部SAN环境前后物理隔离,双中心之间靠专一SAN交换机实现存储后端网络的联通来解决该问题。这样的话,单中心内前段SAN环境故障不会波及存储后端,更不会波及整个基础架构的存储网络。

3.4、串联深度带来的性能问题

这个问题是针对架构二的问题。

架构深度越深,那么IO的性能就会越差,因为IO每经过一层设备就会有一定的延时消耗,纵向深度越深经历的设备越多,那么IO的延时也就越高。如果我们的架构在纵向上越复杂,那么这个问题应该说从本质上是无法消除的,只能通过一定的方法来减少和优化。

从存储层来看,一般存储侧在对物理卷进行虚拟化的时候都会有几种策略。为了增加管理的灵活性及扩展性,虚拟化的时候可能会经过多层映射。另外一种策略是为了提高性能,在虚拟化的时候尽量较少映射。我们在规划存储卷的时候,尽量采用后一种策略。例如VPLEX就会有(1:1map、Raid等策略),我们可以选择1:1map这种策略,仅仅利用它的镜像聚合,而舍弃它的灵活伸缩特性。


本文网址:http://www.cqora.com/news/872.html

关键词:Oracle,Oracle认证培训,oracle培训

Z近浏览:

报名咨询

点击咨询报名

QQ群

赛烽达技术群

冷老师

17754917523

加微信咨询

张老师微信.jpg

93865813@qq.com