数据库管理-第302期 国产类RAC架构数据库网络连接方式(20250314)

devtools/2025/3/16 16:44:50/

数据库管理302期 2025-03-14

  • 数据库管理-第302期 国产类RAC架构数据库网络连接方式(20250314)
    • 1 Oracle RAC
    • 2 DMDSC
    • 3 YAC
    • 4 KES RAC
    • 总结

数据库管理-第302期 国产类RAC架构数据库网络连接方式(20250314)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database
PostgreSQL ACE Partner10年数据库行业经验
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP,ITPUB认证专家
圈内拥有“总监”称号,非著名社恐(社交恐怖分子)公众号:胖头鱼的鱼缸
CSDN:胖头鱼的鱼缸(尹海文)
墨天轮:胖头鱼的鱼缸
ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭

胖头鱼的鱼缸_01.png
最近解除了不少国产类RAC架构数据库,其中的数据库连接字符串配置有些许不同,本期做个简单的介绍与总结。

1 Oracle RAC

当然,在介绍国产类RAC架构数据库之前需要先回顾下使用Oracle RAC是如何连接到数据库的:
image.png
Oracle RAC在公网(即业务网络)上会有两个主要监听:

  • SCAN Listener:对应与SCAN IP一起工作,集群一般可配置1-3个SCAN Listener/IP,接收来自于外部的数据库访问请求,并根据集群状态与负载均衡需求将请求转发至Local Listener。SACN Listener/IP可进行手动/失败转移。
  • Local Listener:对应与节点VIP一起工作,因此每个节点有一个Local Listener,接收来自于SCAN Listener转发的访问,同时Local Listener本身也可以直接进行访问,节点维护/故障后节点VIP会进行漂移但无法通过漂移后的VIP访问数据库

对于访问Oracle RAC我们一般配置的连接字符串是写入SCAN IP+端口+服务名,如有多个SCAN Listener/IP,则还可以配置DNS+域名进行负载均衡+高可用配置。这样的集群配置带来了以下一些好处:

  • 节点增减无需调整连接字符串
  • 数据库本身负责负载均衡与高可用(故障转移)
  • 通过服务名可以使得不同节点运行不同的业务
  • 等等

2 DMDSC

DM 数据共享集群又称为 DM 共享存储集群,英文全称 DM Data Shared Cluster,简称 DMDSC。DM 共享存储数据库集群,允许多个数据库实例同时访问、操作同一数据库,具有高可用、高性能、负载均衡等特性。DMDSC 支持故障自动切换和故障自动重加入,某一个数据库实例故障后,不会导致数据库服务无法提供。
image.png
image.png
连接DMDSC需要使用DM提供的驱动,并将所有节点的IP信息写入连接字符串,由驱动通过获取节点信息来判断节点状态/负载等信息,以达到实现负载均衡和故障识别转移的功能。

3 YAC

YAC共享集群基于YashanDB内核持续演进,硬件上依赖共享存储实现shared-Disk的架构,同时引入了Cohesive Memory核心技术实现Shared-Cache能力,可在集群数据库多个实例之间协同数据页的读写访问以及各种非数据类资源的并发控制。
image.png
当前版本访问YAC集群的高可用访问是通过Yashan JDBC驱动或C语言驱动配置实现的,需要将所有节点信息写入连接字符串中,通过驱动实现负载均衡与故障识别转移。
从最新消息得知,YashanDB已经开始研发类似于SCAN的技术。

4 KES RAC

KingbaseES RAC是人大金仓推出的、完全自主研发的国产共享存储数据库集群,具备稳定、高可用、高性能、高扩展特性。KingbaseES RAC共享存储集群方案可以提供性能扩展和可用性,同时保持低存储成本和中等维护成本,适用于大部分业务的需求。
image.png
KingbaseES提供了数据库的连接驱动,也是将节点IP信息写入连接字符串,由驱动实现客户端的负载均衡与故障识别转移。

总结

从目前国内主流数据库的类RAC架构集群来看,访问数据库需要在连接字符串中配置所有节点信息,负载均衡和故障识别转移是通过驱动实现的。这是非常容易实现需求的方案,当然也会带来以下一些问题:

  • 集群节点增减需要调整连接配置,可能带来业务中断
  • 需要使用专用驱动或者进行额外配置

老规矩,知道写了些啥。


http://www.ppmy.cn/devtools/167602.html

相关文章

封装WPF中转换器常用用法封装

代码经常遇到类型A转换到类型C&#xff0c;但是已经写好类型A转换到类型B、类型B转换类型C。往往遇到这种情况&#xff0c;通常会重新写过一个转换器来进行满足需求。以下是解决该痛点。 /// <summary> /// 转换器组转换器 /// </summary> [ContentProperty(nameo…

【前端实战】一文掌握响应式布局 - 多设备完美适配方案详解

一、前言 在当今互联网时代&#xff0c;用户通过各种设备访问网站已成为常态。如何让网站在不同设备上都能完美展现&#xff1f;本文将通过一个实际案例&#xff0c;详细讲解响应式布局的实现方案。 二、项目效果展示 PC 移动端 平板(ipad Pro) 三、核心实现方案 1. 基础设置…

《DeepSeek 开源 DeepGEMM:开启AI计算新时代的密钥》:此文为AI自动生成

《DeepSeek 开源 DeepGEMM&#xff1a;开启AI计算新时代的密钥》&#xff1a;此文为AI自动生成 引言&#xff1a;AI 计算的新曙光 在当今科技飞速发展的时代&#xff0c;人工智能&#xff08;AI&#xff09;无疑是最为耀眼的领域之一。从语音助手到自动驾驶&#xff0c;从图像…

基于Spring Boot的航司互售系统

文章目录 项目介绍项目截图项目获取方式 &#x1f345; 作者主页&#xff1a;超级无敌暴龙战士塔塔开 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &#x1f345;文末获取源码联系&#x1f34…

使用WireShark解密https流量

概述 https协议是在http协议的基础上&#xff0c;使用TLS协议对http数据进行了加密&#xff0c;使得网络通信更加安全。一般情况下&#xff0c;使用WireShark抓取的https流量&#xff0c;数据都是加密的&#xff0c;无法直接查看。但是可以通过以下两种方法&#xff0c;解密抓…

matlab:二维绘图篇——plot绘图命令

目录 1.plot绘图命令 &#xff08;1)plot(x) 实例——实验数据曲线 实例——窗口分割 实例——随机矩阵 (2).plot(x,y) 实例——摩擦系数变化曲线 &#xff08;3&#xff09;plot(x1,y1,x2,y2,...) 实例——正弦图形 实例——正弦余弦图形 &#xff08;4&#xff09…

uniapp+vue实现购物车的左滑删除功能

左滑删除 删除功能利用透明的改变在显示删除按钮实现思路代码效果展示 利用scroll滑动容器来实现代码实现效果展示 我们在移动端的电商平台中&#xff0c;一般都是左滑后然后删除按钮出现&#xff0c;用户可以点击删除按钮来进行该商品的删除&#xff0c;这里我分享两种方法来达…

机器学习-----决策树

文章目录 1、概念2. 决策树的构建过程2.1 特征选择2.2 树的生成2.3 树的剪枝 3. 决策树的优缺点4. 决策树的应用4.1 分类任务4.2 回归任务4.3 集成学习 代码示例 总结 1、概念 1.1决策树是什么 决策树是通过对样本的训练&#xff0c;建立出分类规则&#xff0c;并对新样本进行…