产品评测:SmartX 与 Nutanix 超融合在数据库场景下的性能表现

重点内容

  • SmartX 与 Nutanix 超融合分布式存储设计差异如何影响数据库性能表现。
  • 重点测试结论:数据库场景下,SmartX 超融合基于单卷部署的性能,依旧优于 Nutanix 超融合基于多卷部署+最佳配置的性能。
  • 更多 SmartX、VMware、Nutanix 超融合技术与性能对比,欢迎下载阅读《超融合技术原理与特性解析合集(一)虚拟化与存储》超融合技术原理与特性解析合集(二)管理与运维》电子书。

自从 Nutanix 将国内的服务变更为合作伙伴销售主导模式,不少用户纷纷转向其他厂商的超融合解决方案,替换 Nutanix 超融合。在《Nutanix 国产化替代|一文了解 SmartX 超融合替代可行性与迁移方案》中,我们从市场格局、技术特性和性能的角度探讨了 SmartX 超融合替代 Nutanix 的可行性。本文,我们将进一步对比 SmartX 与 Nutanix 超融合在数据库支持上的技术与性能差异,帮助用户更直观地了解两者在数据库场景下的具体表现。


总体而言,相较存写缓存分离的 DSF(Nutanix 分布式存储),SmartX 分布式存储 ZBS 采用统一的缓存空间,能更好地满足大型数据库的性能需求;SmartX 超融合在基准性能测试与数据库场景性能测试中的整体表现也优于 Nutanix 超融合,尤其是在数据库插入测试中,在单数据卷部署 Oracle 时,SmartX 超融合性能较 Nutanix 超融合提升超 60%,而参考 Nutanix 最佳实践拆分数据卷后,单卷 SmartX 超融合性能表现仍高于 Nutanix 超融合约 5%。

技术对比:分布式存储设计实现如何影响超融合在数据库场景下的表现

超融合主要由虚拟化和分布式存储两大部分构成。在虚拟化方面 SmartX 与 Nutanix 超融合均选择了 KVM 作为其基础。这意味着它们都采用了开源的虚拟化技术,为用户提供高度的灵活性和可迭代性。这一共同点使得两者在虚拟化层面的性能和特性较为接近,真正的区别体现在它们的核心分布式存储系统上。

其中,SmartX 的分布式存储 ZBS 使用统一缓存空间,注重于提供简单而高效的块存储服务。而 Nutanix 的分布式存储 DSF 采用存写缓存分离构建了更为复杂的分布式存储网络。这为得盘率带来了一定的提升,但在实际应用中也引入了一些挑战。例如,在面对大型数据库时,单一虚拟硬盘的性能可能无法满足要求,需要通过使用多个虚拟硬盘并行操作来提高性能。两者的具体技术差异如下:

nutanix数据库1.png

smartx-vs-nutanixdatabae-2.png

关于 SmartX 与 Nutanix 超融合在技术与架构方面的更多对比资料,请阅读:《Nutanix 国产化替代|一文了解 SmartX 超融合替代可行性与迁移方案》。

综合验证:基准性能测试和数据库场景性能测试

接下来我们看一下两种超融合在性能上的具体表现。在本次测试中,包含基于 FIO 的存储性能测试和基于 Oracle 的数据库场景测试。SmartX 均基于单卷进行部署测试,而 Nutanix 根据最佳实践,分别基于单卷和多卷进行部署测试。注:根据 Nutanix 数据库迁移最佳实践,需要多个虚拟卷并发来满足数据库的性能需求。即不建议直接迁移完整数据库实例,而是重新构建数据库后迁移数据,P2V 或 V2V 的迁移方式仅适用于开发测试环境,生产环境则需要额外部署新的数据库实例并为每个分区配备大量的条带化虚拟卷以满足性能需求。

smartx-vs-nutanix-databae-3.png

测试环境配置

本次测试在相同的 3 节点硬件平台分别部署 Nutanix AOS 6.5.2 和 SMTX OS 6.0 超融合系统,详细硬件信息如下:

smartx-vs-nutanix-databae-4.png

基准性能测试(FIO)

smartx-vs-nutanix-databae-5.png

单节点性能验证

smartx-vs-nutanix-databae-6.png

集群性能验证

smartx-vs-nutanix-databae-7.png

可以看到,SmartX 超融合在随机读写场景下的性能远高于 Nutanix 超融合,在顺序读和顺序混合读写场景下的性能略低于 Nutanix 超融合。

数据库业务场景性能测试(Oracle)

在业务测试中,选择 Oracle 单实例部署模式,SmartX 使用单卷,Nutanix 分别使用单卷和其最佳实践的多卷,具体部署方式如下:

smartx-vs-nutanix-databae-8.png

数据库导入导出场景

在数据库导入导出场景中,使用 SOE(Simple Order Entry)模型进行测试,测试不同数据量的导入导出用时,耗时越短性能越优。整体测试表明,SmartX 超融合单卷性能明显优于 Nutanix 超融合单卷,与 Nutanix-ASM 最佳部署方式接近;而在导出测试中,SmartX 超融合性能表现明显优于 Nutanix 单卷和最佳部署方式。

smartx-vs-nutanix-databae-9.png

数据库 TPC-C 场景

在数据库 TPC-C(Transaction Processing Performance Council)测试中,使用 Swingbench 工具进行压测,该测试 TPS(Transactions Per Second)越高越优。可以看到,随着并发数量增大,两种超融合平均 OPS 均有明显上升,且 SmartX 超融合单卷性能明显优于 Nutanix 单卷部署,略优于 Nutanix-ASM 最佳部署方式。

smartx-vs-nutanix-databae-10.png

数据库插入场景

该测试基于某柜台交易软件商压测脚本,进行委托表插入操作,模拟委托落库场景,每个脚本每 1000 笔提交一次,循环执行,一共 30 个 PDC 脚本同时运行,总计运行 2 分钟。该测试 COUNT(*)表示每秒插入的数据量,数值越大越优。从测试结果可以看到,在 80s 后,Nutanix 超融合多次出现接近触底的情况,而SmartX 则呈现更为稳定和均匀的性能表现。

smartx-vs-nutanix-databae-11.png

为了方便对比,我们抽取原始数据,分别去掉 10 个最高值和最低值排除极端数值干扰,并计算两者的性能平均值。可见,SmartX 超融合单卷整体性能优于 Nutanix 超融合单卷(性能提升超 60%)和最佳部署方式(性能提升约 5%)。

smartx-vs-nutanix-databae-12.png

总结

得益于 ZBS 统一的缓存空间和技术优化,SmartX 超融合在数据库场景下能提供更好的性能表现。通过 SmartX 超融合和 Nutanix 超融合在 FIO 测试和 Oracle 数据库场景测试中的性能表现,可以看出,SmartX 超融合仅需单卷部署就可以发挥最佳性能,而 Nutanix 超融合需要配置多卷并通过系统或应用的并行调度能力,才能提供近似的性能表现,并且 SmartX 超融合在多数数据库场景中性能均优于 Nutanix 超融合。

综合而言,SmartX 更符合企业原有的数据库部署规划,便于部署和迁移,无需额外运维成本,为企业提供更智能、高效的选择,助力其在新平台上充分发挥数据库潜力。

目前,浙商证券等企业用户已采用 SmartX 超融合替代 Nutanix 超融合,进一步实现 IT 基础设施的国产化转型。欲深入了解客户实践,请阅读:从 VMware、Nutanix 到 SmartX,浙商证券超融合云化与信创转型实践。

阅读原文:志凌海纳 SmartX vs. Nutanix 超融合:数据库场景下的技术与性能对比

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/607426.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高防护皮带机巡检机器人:适应恶劣环境的智能助手

在众多工业领域中,皮带机作为一种重要的物料输送设备,广泛应用于发电厂、煤栈等场所。然而,长期以来,皮带机的巡检工作一直依赖人工,存在着劳动强度大、检测效率低、安全性差等问题。为了解决这些痛点,皮带…

Day05-JavaWeb开发-请求响应(postman工具/参数/案例)分层解耦(三层架构/IOC-DI引入)

1. 请求响应 1.1 概述 1.2 请求-postman工具 1.3 请求-简单参数&实体参数 1.3.1 简单参数 1.3.2 实体参数 1.4 请求-数组集合参数 1.5 请求-日期参数&json参数 1.6 请求-路径参数 1.7 响应-ResponseBody 1.8 响应-案例 2. 分层解耦 2.1 三层架构 2.2 分层解耦(IOC-D…

GitHub Actions 手动触发方式

目录 前言 Star Webhook 手动触发按钮 前言 GitHub Actions 是 Microsoft 收购 GitHub 后推荐的一款 CI/​CD 工具早期可能是处于初级开发阶段,它的功能非常原生,甚至没有直接提供一个手动触发按钮一般的触发方式为代码变动(push 、pull…

使用Processing和PixelFlow库创建交互式流体太极动画

使用Processing和PixelFlow库创建交互式流体太极动画 引言准备工作效果展示代码结构代码解析第一部分:导入库和设置基本参数第二部分:流体类定义MyFluidDataConfig 类详解MyFluidData 类详解my_update 方法详解流体类定义完整代码 第三部分:太…

无监督式学习

1.是什么? 无监督式学习与监督式学习**最大的区别就是:**没有事先给定的训练实例,它是自动对输入的示例进行分类或者分群; 优点:不需要标签数据,极大程度上扩大了我们的数据样本,其次不受监督信…

部署 Sentinel 控制台:实现流量管理和监控

序言 Sentinel 是阿里巴巴开源的一款流量防护与监控平台,它可以帮助开发者有效地管理微服务的流量,实现流量控制、熔断降级、系统负载保护等功能。本文将介绍如何在项目中部署和配置 Sentinel 控制台,实现微服务的流量防护和监控。 一、Sen…

WEB基础--单元测试与三层架构

单元测试 为什么要进行单元测试 减少创建类,我们希望在一个类中,并且测试时不需要改代码,那么我们就要用到junit单元测试 常见测试分类 黑盒测试 黑盒测试也叫功能测试,主要关注软件每个功能是否实现,并不关注软件代…

【websocket-客户端可视化工具】

postman 新版postman (版本v11以上) ,除了http协议,还支持了Websocket,MQTT,gRPC等多种连接协议,可以作为多种协议的客户端,使用起来非常方便。 使用 服务端代码 这里以websocket协议举例,代…

【Linux】网络接口绑定和组合的操作实例

网络接口绑定和组合的操作实例 (一)网卡1. 增2. 查3. 激活——设置网络接口 (二)网络接口绑定1. 概述2. 实验操作3. 删除绑定 (三)网络接口组合1. 概述2. 实验操作 (一)网卡 1. 增 …

分割模型Maskformer系列

maskformer:Per-Pixel Classification is Not All You Need for Semantic Segmentation 论文地址:https://arxiv.org/pdf/2107.06278 1.概述 传统的语义分割方法通常采用逐像素分类(per-pixel classification),而实…

【JAVA基础之装箱和拆箱】自动装箱和自动拆箱

🔥作者主页:小林同学的学习笔录 🔥mysql专栏:小林同学的专栏 目录 1.包装类 1.1 概述 1.2 Integer类 1.3 装箱和拆箱 1.4 自动装箱和自动拆箱 1.5 基本类型与字符串之间的转换 1.5.1 基本类型转换为字符串 1.5.2 字符串转…

带你破解晶振PCB的布局要点!

一、晶振的分类 01 无源晶振 无源晶振器是一种 passives 振荡器,它不需要外部电源来维持振荡。它的振荡频率由晶体的物理尺寸和材料特性决定(一般都采无源晶振)。 02 有源晶振 有源晶振器是一种 active 振荡器,它需要外部电源来…

计算机中GPU快不行的几个标志,看下有没有你遇到的

GPU是处理图形密集型任务的主要组件。尽管它非常耐用,但它最终会磨损并开始失效。在到达生命的终结之前,它通常会显示出即将发生故障的迹象,需要及时修复或更换。本指南详细介绍了这些标志。 在我们开始之前 在深入研究GPU故障的迹象之前,重要的是要承认,下面提到的一些…

卷积通用模型的剪枝、蒸馏---蒸馏篇--RKD关系蒸馏(以deeplabv3+为例)

本文使用RKD实现对deeplabv3+模型的蒸馏;与上一篇KD蒸馏的方法有所不同,RKD是对展平层的特征做蒸馏,蒸馏的loss分为二阶的距离损失Distance-wise Loss和三阶的角度损失Angle-wise Loss。 一、RKD简介 RKD算法的核心是以教师模型的多个输出为结构单元,取代传统蒸馏学习中以教…

Leetcode—394. 字符串解码【中等】

2024每日刷题&#xff08;131&#xff09; Leetcode—394. 字符串解码 实现代码 class Solution { public:string decodeString(string s) {string curstr;int curNum 0;stack<pair<string, int>> st; for(char c: s) {if(isdigit(c)) {curNum curNum * 10 (c…

电脑中的两个固态硬盘比一个好,想知道为什么吗

你当前的电脑很有可能有一个NVME SSD作为主驱动器&#xff0c;但可能至少还有一个插槽可以放另一个SSD&#xff0c;而且这样做可能是个好主意。 两个SSD可以提高性能 如果你有两个固态硬盘&#xff0c;你可以从中获得比有一个更好的性能。一种方法是使用RAID 0将两个驱动器组…

Python_AI库 Pandas的loc和iloc的区别与使用实例

Python中Pandas的loc和iloc的区别与使用实例 在Pandas中&#xff0c;loc和iloc是两个常用的方法&#xff0c;用于基于标签&#xff08;label&#xff09;和整数位置&#xff08;integer location&#xff09;来选择数据。尽管两者在功能上有重叠&#xff0c;但它们在用法和性能…

OceanBase开发者大会实录:SaaS 场景降本50%!石基零售应用 OB Cloud 实践

本文来自2024 OceanBase开发者大会&#xff0c;石基零售助理总裁 、 ROC 产品事业部负责人陈亮的演讲实录—《石基零售与 OB Cloud 零售行业应用实践》。完整视频回看&#xff0c;请点击这里&#xff1e;> 大家下午好&#xff01;我是石基零售的陈亮。今天和大家分享一下石基…

struct和union大小计算规则

Union 一&#xff1a;联合类型的定义 联合也是一种特殊的自定义类型&#xff0c;这种类型定义的变量也包含一系列的成员&#xff0c;特征是这些成员公用同一块空间&#xff08;所以联合也叫共用体&#xff09; 比如&#xff1a;共用了 i 这个较大的空间 二&#xff1a; 联合的…

数据分析从入门到精通 2.pandas修真之前戏基础

从爱上自己那天起&#xff0c;人生才真正开始 —— 24.5.6 为什么学习pandas numpy已经可以帮助我们进行数据的处理了&#xff0c;那么学习pandas的目的是什么呢? numpy能够帮助我们处理的是数值型的数据&#xff0c;当然在数据分析中除了数值型的数据还有好多其他类型…