当前位置: 首页 > news >正文

数据库管理-第113期 Oracle Exadata 04-硬件选择(20231020)

数据库管理-第113期 Oracle Exadata 04-硬件选择(2023010290)

本周没写文章,主要是因为到上海参加了Oracle CAB/PAB会议,这个放在后面再讲,本期讲一讲Exadata,尤其是存储节点的硬件选择及其对应的一些通用软件配套。

1 InfiniBand/RoCE

InfiniBand交换机是Exadata X8及之前一直使用的内部交换机,以X8为例,单路带宽为40Gb。相较于以太网交换机,InfiniBand的延迟具有交大的优势。
RoCE交换机则是X8M开始使用的内部交换机,目前X8M、X9M、X10M均为单路100Gb,为以太网交换机。相较于InfiniBand价格更加便宜,而且能提供更大的带宽。

2 RDMA

对应交换机硬件,Exadata在很早的版本就开始使用RDMA技术,即:

  • Remote(远程):数据在网络中的两个节点之间传输。
  • Direct(直接):不需要内核参与,传输的所有处理都卸载到NIC硬件中完成。
  • Memory(内存):数据直接在两个节点的应用程序的虚拟内存间传输;不需要额外的复制和缓存。
  • Access(访问):访问操作有send/receive、read/write等。
    在这里插入图片描述

毕竟Exadata使用的是存算分离架构,本身基础延迟会大于存算一体架构。使用RDMA还有以下一些好处,使得计算节点可以更加快速的从存储节点获取数据:

  • 内存零拷贝(Zero Copy):RDMA应用程序可以绕过内核网络栈直接进行数据传输,不需要再将数据从应用程序的用户态内存空间拷贝到内核网络栈内存空间。
  • 内核旁路(Kernel bypass):RDMA应用程序可以直接在用户态发起数据传输,不需要在内核态与用户态之间做上下文切换。
  • CPU减负(CPU offload):RDMA可以直接访问远程主机内存,不需要消耗远程主机中的任何CPU,这样远端主机的CPU可以专注自己的业务,避免其cache被干扰并充满大量被访问的内存内容。

3 PMEM/XRMEM

PMEM即非易失性内存(傲腾),XRMEM则是Exdata RDMA内存(DDR5)。其中PMEM使用于X8M和X9M,因Intel停止生产傲腾,因此X10M开始使用XRMEM。二者本质上是在Flash Card(即NVMe SSD)上再添加一层加速缓存,且二者均可直接接入RDMA,极大地降低了数据访问延迟。

4 Flash Card(NVMe SSD)

这里就不介绍啥是NVMe SSD了,毕竟现在新款的笔记本都是标配,最近的降价也是家用的常规产品了。Exadata也是很早就开始使用这一技术产品,使用PCIe接口极大的带宽在HDD(当然对于X10M之前的全闪存储是不存在的,X10M开始的全闪存储,有容量型Flash Card)之上加速缓存数据。在X9M之前标准存储节点使用的是4块PCIe 3.0 x4+x4的6.4TB(3.2TB+3.2TB) NVMe SSD,而X9M开始则是4块PCIe 4.0 x4+x4的6.4TB(3.2TB+3.2TB) NVMe SSD(Exadata单盘都是做了PCIe拆分的),正好我电脑上有PCIe 3.0和PCIe 4.0 x4的NVMe SSD,这里也做一个测试:
下面是一块PCIe 3.0普通SX8200的成绩:
在这里插入图片描述
下面是一块PCIe 4.0顶级旗舰980Pro的成绩:
在这里插入图片描述
首先从极限带宽来看,PCIe 4.0是PCIe 3.0的两倍,这里用家用级产品大概对比下X8M和X9M一个存储节点Flash Card 的极限带宽,X8M总计大概为3300MB/s×4×2=26400MB/s,X9M大概是2倍32800MB/s。试想一下如果使用传统FC-SAN的32Gb/s(≈4000MB/s),其实算上本身损耗,一块PCIe 3.0的Flash Card就会占满,即便是40Gb/s(≈5000MB/s)或100Gb/s(≈12500MB/s),光是X8M上的配置就已经可以远远超过一台存储节点的全部带宽,而Flash Card往上还有PMEM/XRMEM这两个的带宽可是接近内存的速度(可以参考数据库管理-第二十四期 数据库设计-硬件篇(20220610)中对内存的测试结果)。
这里再试想一下上百TB的全闪存储,以RAC集群为例,极端数据库读取的带宽肯定是远远大于传输层(FC/网络)带宽的,那么这种情况下瓶颈在传输,磁盘性能是无法充分利用的。

5 ESS起个头

为了解决存储节点磁盘能力远远大于网络能力的问题,Exadata使用Exadata Stroage Software(后面文章都将用ESS作为简称)来将存储节点转换为智能存储,即让存储参与数据库计算,仅将需要的数据通过网络传输至计算节点,配合RDMA,降低了延迟、网络IO、内存占用以及CPU损耗。可以说ESS才是Exadata最能打的部分,也是很多国产一体机纸面数据吊打Exadata但实际使用又干不过Exadata的主要原因。后面我将用若干期来讲ESS带来的一系列存储功能。

6 总结

老规矩,知道写了些啥。

相关文章:

  • HTML列表
  • Qt 中model/View 架构 详解,以及案例实现相薄功能
  • Kubeadm 高可用集群部署
  • UDP 协议
  • 01-Nacos安装和下载
  • CPU就绪情况及其对虚拟机性能的影响
  • Spring底层原理(四)
  • 【esp32]VSCode-SPI控制OLED
  • 使用 Curl 和 DomCrawler 下载抖音视频链接并存储到指定文件夹
  • 定时器PWM输出
  • uniapp 模仿 Android的Menu菜单栏
  • 开源软件:释放创新的力量,改变数字世界的游戏规则
  • 基于springboot实现学生就业管理系统项目【项目源码+论文说明】计算机毕业设计
  • 绝缘栅双极型晶体管igbt短路如何用自动化软件进行测试?
  • WPS文件恢复怎么做?记得掌握这5个方法!
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • 【css3】浏览器内核及其兼容性
  • angular学习第一篇-----环境搭建
  • Druid 在有赞的实践
  • Facebook AccountKit 接入的坑点
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Laravel Mix运行时关于es2015报错解决方案
  • Linux Process Manage
  • Logstash 参考指南(目录)
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • Python - 闭包Closure
  • vue-router的history模式发布配置
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 面试总结JavaScript篇
  • 浅谈Golang中select的用法
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 使用SAX解析XML
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • (3)STL算法之搜索
  • (SpringBoot)第二章:Spring创建和使用
  • (补)B+树一些思想
  • (二)WCF的Binding模型
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (三维重建学习)已有位姿放入colmap和3D Gaussian Splatting训练
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (轉貼) UML中文FAQ (OO) (UML)
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .gitignore文件—git忽略文件
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • .NET运行机制
  • ?
  • ??myeclipse+tomcat
  • [ vulhub漏洞复现篇 ] Grafana任意文件读取漏洞CVE-2021-43798
  • [1181]linux两台服务器之间传输文件和文件夹