使用 PowerFlex 在 Kubernetes 平台上部署 Microsoft SQL Server 大数据集群
简介
Microsoft SQL Server 2019通过SQL Server 2019大数据集群 (Big Data Clusters, BDC)推出了突破性的数据平台。Microsoft SQL Server大数据集群旨在解决当今大多数组织面临的大数据挑战。您可以使用SQL Server BDC来组织和分析大量的数据,也可以将高价值的关系型数据与大数据结合起来。本文描述了使用Dell PowerFlex软件定义存储在Kubernetes平台上部署SQL Server BDC的过程。
PowerFlex
Dell PowerFlex是一个统一的、软件定义的计算存储和网络解决方案,提供横向扩展的块和文件存储服务,旨在提供灵活性、弹性和简单性以及大规模的可预测的高性能和恢复能力。
PowerFlex平台提供多种消费选项,可帮助客户满足其项目和数据中心需求。PowerFlex设备和PowerFlex机架为客户提供了针对整个基础架构堆栈的全面IT运营管理(ITOM)和生命周期管理(LCM),以及完善的高性能、可扩展、弹性的存储服务。
PowerFlex软件定义存储具有统一的计算和网络,可提供灵活的部署架构,以帮助最好地满足特定的部署和架构需求。PowerFlex可以部署在两层架构中,以实现计算和存储的非对称扩展,也可以部署在单层(HCI)或混合架构中。
最新的基于PowerEdge 15G的PowerFlex节点采用英特尔®至强®Platinum处理器,性能更高的CPU,更多的内存,带来极高的性能。
Microsoft SQL Server大数据集群概述
Microsoft SQL Server大数据集群 (Big Data Clusters, BDC) 旨在以独特的方式应对大数据挑战,BDC通过构建大数据和数据湖环境解决了许多传统挑战。SQL Server大数据集群是Microsoft SQL Server 2019的附加功能。您可以查询外部数据源,将大数据存储在由SQL Server管理的HDFS中,或者使用集群查询来自多个外部数据源的数据。
1
在PowerFlex上部署
Kubernetes平台
在该解决方案中,在我们安装Kubernetes集群后,配置了CSI 2.0来为SQL BDC工作负载提供持久卷。
2
在Kubernetes平台上部署
Microsoft SQL Server BDC
当具有CSI的Kubernetes集群准备就绪时,Azure data CLI将安装在客户端计算机上。
为了加速BDC的部署,我们建议使用本地专用注册表中的离线安装方法。虽然这意味着在创建和配置注册表时需要做一些额外的工作,但它消除了每个BDC主机从 Microsoft repository中提取容器映像的网络负载。在充当专用注册表的主机上,安装Docker并启用Docker repository。
BDC配置从默认设置修改为使用群集资源并满足工作负载要求。为了横向扩展BDC 资源池,需要调整副本数以使用集群的资源。
运行Spark 和Apache Hadoop YARN的配置值也根据每个节点可用的计算资源进行了调整。
为SQL master pod提供了20TB的存储空间,其中10TB作为日志空间。由于测试涉及运行TPC-DS工作负载,我们为五个storage pods配置了总共60TB的空间。
3
在PowerFlex上验证
SQL Server BDC
下图显示了不同比例因子设置的数据生成所消耗的时间。数据生成时间还包括计算表统计信息的后期数据分析过程。
下图显示了性能和可扩展性测试结果。结果表明,在PowerFlex上运行Microsoft SQL Server大数据集群对不同的数据集具有线性可扩展性。这表明PowerFlex能够为不同类型的Spark SQL工作负载提供一致且可预测的性能。
下图显示了在30TB运行TPC-DS测试期间捕获的Grafana仪表板实例。从图中可以看出,在测试过程中实现了15GB/s的读取带宽。
在这个最小的实验室硬件中,TPC-DS数据加载和查询执行没有存储瓶颈。工作节点上的CPU接近90%,表明更强大的节点可以提高性能。
总结
点击阅读原文,了解更多PowerFlex内容
微信扫码关注该文公众号作者