【案例】软件定义存储技术研究及在金融行业中的应用分析

作者系中国银联国家工程实验室软件定义存储研究团队

1.存储技术变革背后的推动力

近些年来,信息处理和互联网技术一直处于高速发展的道路上,云计算技术的诞生与成长逐渐对各行各业产生着潜移默化的影响。在基于网络应用的互联网时代,数据的采集手段纷繁复杂,形态五花八门,半结构化与非结构化数据的体量日趋增大,有力推动着存储、计算、网络等技术的快速发展,尤其是存储如何满足新形势下的业务需求。云计算技术在基础硬件与应用层面上对于传统存储架构提出了要求,通过虚拟化与自动化,构建共享的资源池,实现高利用率、高可用性、高性能、低成本、低能耗的存储服务模式。在这种背景下,传统的“烟囱式”IT存储架构已经逐渐不能适应技术的发展与时代的需求,急需做出改变。

1.1 数据规模、形态和处理方式的转变

1.1.1 数据体量的增长

各行各业正处在一个数据量爆发增长的时代。移动互联网、移动终端和数据传感器产生的数据以超出人们想象的速度快速增长,2011-2015年期间,全球数据储量以每年超过30%的增长率膨胀。作为数据的载体——存储,地位日益重要。相应的,后端存储容量的需求也不断提升,涵盖多个方面:

1)能够简单快速的进行扩容,以满足数据量的增长需求。

2)提供高带宽、高IOPS方面的能力,满足万亿的访问需求。

3)在以体验为核心的场景下,低时延的存储架构更加能适应新技术的发展。

1.1.2 数据形态的转变

互联网业务的发展,应用种类日趋复杂,造成数据类型日益多样,半结构化非结构化数据占比日益增大。结构化数据存储在数据库中居多,半结构化和非结构化数据则需要存储在文件或者对象中,不同的数据类型对存储提出不同的要求:

1)提供传统的块设备服务,满足数据库类型的存储要求。

2)提供文件系统、对象等存储服务,满足半结构化数据和非结构化数据的存储要求。

1.1.3 数据处理方式的进化

云计算是以数据为中心的一种数据密集型的超级计算。对用户来说,云计算资源可以及时获取,支持弹性伸缩,按需使用。作为数据的核心载体,存储是未来数据中心的核心部分,承担着业务数据的处理分析等多种关键服务。图片、语音、日志等非结构化数据的处理分析和快速查询,大量虚拟机文件的并发访问等均对存储的使用方式提出了新的要求:

1)提供基于大容量存储的高并发随机访问能力;

2)统一满足不同业务场景的数据处理需求;

3)具有不同业务场景下,存储访问QoS的控制能力,优先满足高优先级的业务需求。

1.2 技术的发展深刻改变存储行业

软硬件技术的革新也不断推动存储的快速发展,包括存储的介质、计算能力、网络能力等多方面,尤其是存储介质的性能提升,极大改变了传统磁盘介质的性能瓶颈问题。同时,网络技术的发展,也对存储应用架构产生了较大的影响。

1.2.1 固态硬盘 SSD

传统机械硬盘HDD受限于技术发展,在IOPS、带宽、访问延迟等方面存在瓶颈,无法满足互联网场景下业务的高性能要求。

固态硬盘SSD作为新的存储技术,相比HDD具有超快的数据访问速度,随机数据访问速度比HDD快100多倍,响应时间从毫秒级缩短到亚毫秒级(0.1ms),将IOPS从HDD的200-300提升至数万,同时功耗只有不到十分之一。SSD的高性能充分满足了存储系统I/O负荷瓶颈带来的困扰。

不同性能的存储介质将在云计算、互联网等业务场景中发挥各自的优势和价值,既有高性能的SSD,也有大容量、高性价比的HDD。

1.2.2 高速网络技术与扁平化网络

依靠自身优异的性能与低廉的端口成本,万兆以太网越来越多普及,为虚拟化、存储等各种技术和应用提供更为宽松而可靠的网络环境。经过几年的快速发展,通用网络平台延迟的降低打破了网络在I/O通道上的瓶颈,现有的万兆以太网已经能够提供高性能、低时延、低CPU占用率的高带宽连接服务。同时,扁平化网络的应用也将大大减少延迟,有力提升存储系统的性能和可靠性。

表 1-1 通用网络平台的延迟统计

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-25-08

如表1-1所示,交换机、网卡、操作系统等方面的发展,已经使得网络延迟有了大幅降低,详见下表。网络处理延迟已经较大幅度低于软硬件的固有延迟,使得基于万兆以太网的存储服务可以逐步替代传统的存储光纤网络。

1.3 传统存储架构的应用局限性

传统SAN存储设备一般采用双控制器架构,两者互为备份,配置两台交换机与前端的服务器进行连接,如图1-1所示。这种双控制器架构这种方式会有以下两个方面的缺点:

1)网络带宽容易变成整个存储性能的瓶颈;

2)如果一个控制器损坏,系统的性能将大幅下降,影响存储的正常使用。

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-26-44

图 1-3 传统存储双控制架构

传统存储架构的局限性主要体现在以下几个方面:

1、横向扩展性较差

受限于前端控制器的对外服务能力,纵向扩展磁盘数量无法有效提升存储设备对外提供服务的能力。同时,前端控制器横向扩展能力非常有限,业界最多仅能实现几个控制器的横向。因此,前端控制器成为整个存储性能的瓶颈。

2、不同厂家传统存储之间的差异性带来的管理问题

不同厂商设备的管理和使用方式各有不同,由于软硬件紧耦合、管理接口不统一等限制因素无法做到资源的统一管理和弹性调度,也会带来存储利用率较低的现象。因此,不同存储的存在影响了存储使用的便利性和利用率。

2 金融行业对于下一代存储的需求

互联网、云计算的快速发展推动着金融行业的不断创新,在移动支付、互联网金融等创新业务方面全面推进。业务的发展、数据的增长以及云计算、大数据等新技术的快速发展,均对存储提出了相关的要求,具体包括如下五点:

2.1 高性能

互联网和移动互联网的快速发展,以及金融企业业务的快速增长,使得企业在业务过程中产生了大量的业务数据,这些大量的数据需要被记录在虚拟机、数据库、文件系统等中,从而对存储的性能要求越来越高。

大数据分析技术的发展,使得企业逐渐认识到数据在企业发展中的重要性。结合业务发展需要,企业对记录和存储的大量业务数据等进行分析和挖掘,形成支撑企业经营决策、精准获客、风险防范等多方面的数据增值服务,满足企业内部和外部用户的需求,也对存储的性能提出更高的要求。

因此,为满足高并发的业务以及大量的业务数据分析等需求,存储首先需要提供较高的性能。

2.2 高可用性

数据是企业的核心资产,存储的高可靠性和数据高可靠性是业务活动的基础支撑。存储系统需要避免因为单个设备的故障,对整体服务以及服务能力产生较大影响,提高存储系统的鲁棒性。对于数据来说,也要提供相应的高可用机制,在存储发生故障时候,支撑和保障数据的自动恢复和动态迁移。

尤其是对于金融行业企业来说,存储和数据的高可用性相比其他行业来说更加重要。因此,在金融行业的业务场景下,存储需要满足更高要求的高可用性。

2.3 动态扩展

虚拟化技术的发展使得计算资源得以池化,使得业务系统所需要的资源能够按需分配,弹性扩展。在整个平台资源不足的时候,能够便捷地动态增加新的服务器资源。同样,对于存储来说,金融企业需要建立存储的资源池,并能够按需分配和动态增加资源池的资源,满足业务发展的需要。

因此,存储能够支撑资源的动态伸缩以及资源池的动态扩展也是行业信息技术发展的需要。

2.4 接口标准性

一个架构先进的、符合时代发展的存储系统应该是软硬件之间松耦合或者不耦合的状态,系统支持自动对硬件资源的部署、优化和管理,将各类存储资源进行灵活的配置,实现应用按需(容量、性能、QoS、SLA等)分配。

因此,这就要求存储能够提供丰富的标准接口,包括文件系统接口(NFS、CIFS)、块接口(iSCIS、FC)或者对象接口(S3、SWIFT)以及对内能够提供标准的管理接口。

2.5 高可管理性

存储作为企业数据中心的核心和基础服务,应该具备日常部署、管理、监控的自动化和可视化,提高存储资源服务的可管理性,包括资源分配、资源监控、故障告警等多方面的内容,从而提高运维管理人员的管理效率。

存储服务需要逐步支持智能化的采集和分析,帮助企业高效地利用现有资源,包括对存储IOPS、存储吞吐量以及存储容量的使用进行动态的监测和预测,方便管理人员对存储现有情况进行了解和及时对未来存储的扩容进行规划。

因此,从管理运维方面来说,存储需要提供相应的高可管理性。

3. 软件定义存储技术的发展现状

3.1 传统存储到软件定义存储的演变

存储系统在演变过程中经历了数次变迁,最早诞生于服务器内部,后逐渐成为一个独立系统,出现了NAS、SAN等存储技术。但是随着业务规模与模式的不断扩大更新,传统存储架构由于横向扩展成本高、周期长、兼容性差和性价比低等原因无法适应更多的应用场景。伴随x86服务器逐渐通用标准化,结合计算机与网络技术,辅以高速网络、SSD等技术的发展和广泛应用,存储系统逐渐向以下两个方面发展:

1.从集中式逐渐过渡到分布式存储架构。分布式最大的特点就是数据分散在各个独立节点上,多台存储服务器分担存储负荷,提高了系统的可靠性、可用性和效率,并且易于扩展。

2.受到“互联网+”深入融合背景下业务云化需求的推动,数据类型从结构化向半/非结构化逐渐过渡,存储系统也要从块设备存储转向文件、对象存储。

在这样的背景下,软件定义存储(Software Defined Storage,SDS)应运而生。SDS往往采用分布式的架构,可以向上提供块、文件或对象存储服务,通过软件将控制平面与数据平面分离开来,成功实现了资源的灵活控制。这种方式提高整个系统的容错性,将通用硬件引入的不稳定因素降到最低。

3.2 软件定义存储的发展和特点

在全球网络存储工业协会(Storage Networking Industry Assiociation, SNIA)的定义中,SDS是带有服务管理接口的虚拟化存储,包括了具有数据服务特性的存储池,这些服务特性可以通过服务管理接口去实现,从而满足需求。

3.1.1 软件定义存储发展的三个方面

使用软件管理硬件资源是一个的过程,需要将硬件与软件解耦,将硬件资源以服务的方式逐步开放给应用层,才能分阶段地满足应用对资源的不同程度的灵活调用。为了提升存储资源的性能、利用效率和解决统一管理的问题,SDS将这一过程分为抽象化、池化和自动化三个阶段。

1.存储系统的抽象化

存储的抽象化是指将服务与硬件之间的对应关系剥离开来,打破壁垒,达到资源共享。不同厂商的存储管理软件通过统一的行业标准来管理存储的资源,从而避免被单一厂商所垄断或者不同厂商之间的管理复杂、维护困难等问题。从本质上说,这个过程是将硬件之间差异隐藏了起来,并与上层隔离。由顶至下,只能看到标准化的通用硬件,忽略了品牌之间的差异。

2.存储系统的池化

存储系统的池化是指对硬件进行统一的管理、分配和调度。SDS将资源虚拟化成为存储池,从外面看是一个统一的、完整的存储设备。SDS可以基于服务器、网络或者存储子系统三个层面进行虚拟化。基于服务器的虚拟化可以跨越不同的磁盘介质。基于网络的虚拟化则主要是在不同架构存储系统之间进行统一的管理。SDS也可以在存储子系统上进行虚拟化,实现精简配置和存储资源的灵活调用。

3.存储系统的自动化

SDS的自动化是指存储系统可以根据业务场景,通过一定的策略去自动部署所需要的存储资源,提供业务所需要的数据服务级别。通过SDS提供的接口,存储系统将控制层和数据层分离,实现了高度自动化,从而为企业提供了更加高效、灵活的存储架构,也降低了运维复杂度和成本。

3.1.2 软件定义存储的特点

简而言之,SDS就是更多地由软件来驱动并控制硬件资源,并以服务的形式提供支持。SDS通常有如下几个特点:

1. SDS采用分布式架构

由于SDS通常采用分布式的架构,因而相对应地继承了高性能和灵活的优点。在使用中,SDS可预估和实现计算、性能和存储容量的弹性扩展,并且具有以下特性:节点扩展后,系统会自动负载均衡,避免单点过热;实现弹性扩展过程中不会对业务造成影响;在集群弹性扩展的过程中,性能具有线性化的特点。

归功于分布式的特点,无论是要以低价格获得普通的性能还是要以较高的价格获得极高的性能,软件定义存储都能够满足。加上先进的读写缓存技术,软件定义存储相比传统存储具有超高的性价比。

2. SDS支持分级存储

由于通过网络进行松耦合链接,SDS允许高、低速存储分开部署,或者任意比例混布。分层存储的优势在不可预测的业务环境或者敏捷应用情况下,可以发挥到最佳。

3. SDS的高可靠

与传统的存储架构使用RAID模式来保证数据的可靠性不同,SDS采用了多副本备份机制。为了保证多个数据副本之间的一致性,SDS通常采用的是一个副本写入,多个副本读取的强一致性技术。在读取数据失败的时候,系统可以通过从其他副本读取数据,重新写入该副本进行恢复,从而保证副本的总数固定;当数据长时间处于不一致状态时,系统会自动数据重建恢复,同时租户可设定数据恢复的带宽规则,最小化对业务的影响。

4. SDS的强兼容性

随着SDS的发展,存储行业的标准化进程也不断推进。在云计算潮流中,SDS也能够很好地兼容各种云平台,为其提供后端存储服务。同时,SDS优先采用行业标准接口(SMI-S)进行存储接入。在平台层面,通过将异构存储资源进行抽象化,以实现存储资源的集中管理,并能够自动执行创建、变更、回收等整个存储生命周期流程。基于异构存储整合的功能,用户可以实现跨品牌、介质的容灾备份,相应降低了存储采购和管理成本。

分布式存储技术及其软件产品已经日趋成熟,并在各行各业的数据中心中得到了广泛的使用和验证。

3.3 现有业界主流SDS产品介绍

3.3.1 开源Ceph

Ceph是最早致力于开发下一代高性能分布式存储系统的开源项目。除了分布式系统最基本的特性,Ceph还拥有大规模可扩展(PB、甚至EB级的存储空间)、基于CRUSH算法的自我管理和修复、灵活的架构等优点,并且支持OpenStack、CloudStack、OpenNebula、Hadoop等云平台。这使其迅速获得开源社区的认可,成为最广泛的开源项目之一,得到众多IT厂商支持的协同开发,如Intel、SUSE、RedHat、SanDisk、CISCO、Yahoo等。

Ceph是统一分布式存储系统,具有优异的性能、可靠性、可扩展性。Ceph的架构如图3-1所示,Ceph的核心是RADOS,它是分布式对象存储系统,由自修复、自管理、智能的存储节点组成。RADOS作为数据持久层,Ceph在LibRADOS中封装了面向RADOS集群的操作,像块设备接口(RBD)、对象存储接口(RADOS Gateway)、文件存储接口(POSIX接口)等,使得任意客户端可以直接访问数据节点,从而提供广泛的基于文件、对象和块设备的存储服务。RADOS的核心是一个可扩展的伪随机数据分布算法(CRUSH)。CRUSH能够有效映射数据对象到存储节点上,而且能够处理系统的扩展和硬件失效,CRUSH算法达到了效率和扩展性这两个矛盾的目标。

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-27-44

图 3-1 Ceph存储架构图

3.3.2 国内商业SDS

与开源Ceph类似,国内某些商业公司也推出了相关软件定义存储产品,可以通过部署在x86服务器上,从而把所有服务器的本地硬盘组织成一个虚拟存储资源池,提供块存储功能。

商业版本SDS常常在存储接口层通过SCSI驱动接口向操作系统数据库提供卷设备;在存储服务层提供各种存储高级特性,如快照、链接克隆、精简配置、分布式cache、容灾备份等;在存储引擎层,提供包括管理状态控制、分布式数据路由、强一致性复制技术、集群故障自愈与并行数据重建子系统等功能;同时,成熟的商业版本SDS的安装部署、自动化配置、在线升级、告警、监控和日志等功能都可以在存储管理层提供,并向用户提供Portal界面。在具体实现过程中,商业版本SDS需要保证数据的I/O操作均匀分布在不同服务器的不同硬盘上,避免局部热点,实现负载均衡。

3.3.3 国内高校SDS

作为未来存储的而发展趋势,软件定义存储也吸引了国内外高校的广泛关注,国内部分高校推动产学结合,面向云计算数据中心而研发了大规模存储系统。

高校SDS在系统架构上实现了“分布存储、集中管理”的理念。系统软件组件由监控服务器、数据服务器、客户端组成,实现集中化的系统配置、管理、状态监控,并负责系统拓扑的实时监控和计算。监控服务器部署在两个不同节点上,实现高可用,并支持数据强一致性。

高校版本的SDS的优势在于核心技术的领先性,通过使用专用的Cache管理算法,避免由于断电等故障引起数据丢失。在数据读写过程中,高校SDS周期性检查并修复损坏的副本,并且支持差异化数据保护策略,可以在同一存储池中为每个逻辑卷设定不同的副本数,兼顾数据容错和存储空间利用率。高校SDS还提供了fsck工具,可以对全系统、指定的存储池或卷进行一致性检查,并进行修复。

高校SDS在通信协议设计、编解码方式、缓存管理算法、I/O调度、多线程和I/O并发性、基于零拷贝的缓冲区管理等多个关键环节都进行了优化设计,使得存储系统可以充分展现硬件的性能,满足云计算数据中心虚拟机、数据库等业务对高IOPS和低延迟的性能要求。

4. SDS在金融行业应用评测及分析

为面向金融行业的云计算数据中心建设方案提供前沿性指导,中国银联电子商务与电子支付国家工程实验室在深入研究现有存储技术的基础上,结合对金融行业存储需求的分析,编制了SDS存储测试标准,并参照测试标准针对部分目前主流的SDS产品(开源Ceph、商业版本和高校版本)进行测试与评估。

4.1评测范围

结合金融行业的应用背景,考虑到存储系统在实践中使用的普遍情况,中国银联电子商务与电子支付国家工程实验室从功能性、系统性能、可扩展性、高可用性、易维护性五个方面出发,制定了评测标准。

具体的评测方法分为两类:验证测试与用例测试。其中,定性的指标通过验证测试进行评测,定量的指标通过现有工具或编写的脚本程序进行用例测试。具体评测范围如下:

1.系统功能

针对系统的功能完备性进行评测,验证系统是否能够支持业务的正常运行,包括监控集群状态、管理用户账户、创建增加集群或节点、支持逻辑卷层面的操作、具有快照与克隆的功能。

2.系统性能

针对系统的顺序读写和随机读写性能进行评测,验证存储系统是否能够提供较高的IOPS和带宽来分别满足高并发和数据分析的业务需求。测试指标包括IOPS、带宽和磁盘响应时间。

3.系统可扩展性

针对系统的可扩展性进行评测,验证存储系统系统是否能够支持弹性扩展,包括在扩展过程中是否能够不影响业务的正常运行,自动实现负载均衡,扩展过后的性能是否能够线性化。

4.系统高可用性

针对系统的高可用性进行评测,验证存储系统是否能够满足单个存储节点的故障不会造成存储系统的瘫痪,而全局故障不会损害数据的完整性,包括单盘故障、单节点故障和集群故障。

5.系统的可维护性

针对系统的可维护性进行评测,包括存储系统是否有可视化管理的界面,使得用户能快速掌控硬件信息;是否支持保护域、存储池的分层设计使得用户轻松应对资源规划;是否具有丰富的API、命令行、日志和告警功能帮助用户迅速定位并解决存储集群系统中的各种突发状况。

4.2评测环境的准备

本次测试环境如下:由一个万兆交换机连接10个节点,分为4个存储节点和6个计算节点。通过在计算机节点上安装FIO工具,模拟不同块大小及读写模式的I/O压力。

整体测试环境的的网络拓扑如图4-1所示。存储节点与计算节点的配置具体如表4-1和表4-2所示。

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-28-31

图 4-1 物理机测试环境网络拓扑图

表 4-1 存储节点硬件配置

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-28-49

表 4-2 计算节点硬件配置

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-28-59

4.3 评测结果及分析

4.3.1 功能测试结果及分析

在功能测试环节中,三个不同版本SDS软件展现出了在基本业务功能上的完备性。作为业界主流的产品,三款产品都在开发过程中考虑到应用场景,在基础环境监控及用户管理、逻辑卷管理和快照与克隆方面提供完备的功能,满足用户在具体使用中的各种业务需求。测试结果详情见表4-3。

表 4-3 三个不同版本的SDS产品业务功能测试结果

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-30-53

4.3.2 性能测试结果及分析

为了对系统的性能全面地进行评估,本次测试选取IOPS、带宽和磁盘响应时间三个维度进行综合考量。

IOPS(I/O per second)是指每秒读写的次数,通常对于小I/O,且传输I/O的数量比较大的情况下,是一个最主要的衡量指标。带宽是指每秒在I/O流中传输的数据总量。在对存储系统性能进行评价的时候,需要综合看IOPS和带宽这两个指标,同时存储性能另外一个重要指标是磁盘响应时间。

1.带宽指标

在顺序写的测试项中,商业SDS展现出最好性能,带宽平均达到6171.8MB/s,在顺序读的项目中,高校SDS的性能最好,带宽平均达到5577.5MB/s。综合判断,商业SDS的顺序读写性能较为均衡,更加适合大数据传输业务。开源Ceph与高校SDS相对也能满足一定的性能需求。表4-4与图4-2展示了三个不同版本SDS软件分别在顺序读写、随机读写的带宽性能测试结果。

表 4-4 顺序随机读写带宽性能测试结果(单位MB/s)

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-31-11

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%889-32-12

图 4-2 顺序随机读写吞吐量性能测试结果柱形图

2.IOPS

在随机读写的测试项中,高校SDS展现出最好性能,IOPS分别平均达到83.2万与32.1万。综合判断,高校SDS的随机读写性能更为优秀,更加适合联机事务处理业务。开源Ceph与高校SDS均能满足一定业务需求。而商业SDS采用的分布式哈希表(Distribute Hash Table,DHT)路由数据算法,虽然可以使得数据尽可能分布到所有节点上,实现负载均衡,同时也带来了随机读写时路径过长的缺点,牺牲了部分性能。表4-5与图4-3展示了三个不同版本SDS软件分别在顺序读写、随机读写的IOPS测试结果。

表 4-5 顺序随机读写IOPS性能测试结果

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-26-29

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-26-37

图 4-3 顺序随机读写IOPS性能测试结果柱形图

3.响应时间

在磁盘响应时间的测试项中,高校SDS和商业SDS的磁盘响应时间都较低,基本在20ms以内。而相对开源Ceph的响应时间就比较长,这是因为Ceph的读/写流程中,写入操作会先到主副本所在的服务器,然后复制到另外2个副本的服务器并全部返回OK,才向客户端确认,路径较长。表4-6与图4-4展示了三个不同版本SDS软件分别在顺序读写、随机读写的磁盘响应时间测试结果。

表 4-6 顺序随机读写磁盘响应时间测试结果(单位:ms)

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-26-50

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-26-56

图 4-4 顺序随机读写延时测试结果柱形图

4.3.3 可靠性测试结果及分析

通过可靠性测试结果的对比,商业SDS在四个级别的可靠性方面都展现出有效地应对措施,能够保障系统的可靠运行。高校SDS系统则在单硬盘、单服务器层面保障了系统的稳定运行,集群层面由于测试环境原因未做测试。表4-7展示了三个不同版本SDS产品在可靠性方面的测试结果。

表 4-7 三个不同版本的SDS产品可靠性测试结果

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-27-06

4.3.4 可维护性测试结果及分析

在可维护性测试项中,开源Ceph、商业SDS和高校SDS均支持资源监控可视化、性能分析可视化、容量分析可视化和故障警告可视化的功能,使得存储管理员可以通过Web网页直接查看资源的使用和健康状况、当前存储的性能状况以及及时接到故障的警报,大大方便了日常工作中的存储系统的安装部署、日常管理、监控审计和升级扩容等工作。表4-8中展示了三个版本的SDS产品的可维护性测试结果。

表 4-8 三个版本的SDS产品可维护性测试结果

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-27-%e4%b8%8a%e5%8d%8810-27-16

4.4评测总结

中国银联电子商务与电子支付国家工程实验室联合产业各方,三个不同版本的SDS产品依据测试标准进行了评估测试。测试主要从功能性、性能、可靠性和可维护性四方面出发。在综合考量技术特点与测试结果之后,现将三款主流SDS产品优缺点总结如下:

开源Ceph

缺点:由于RBD的I/O路径很复杂,导致效率相对较低,Ceph无法将磁盘性能发挥到最佳,不过整体性能已经能够满足正常业务需要。由于维护社区的主要开发者为国外开发团队,存在后期维护路径长的不足,在使用过程中出现问题后,反馈、解决周期较长。

优点:Ceph作为开源版本,整个系统自主可控,并且支持iSCSI、SWIFT等访问协议,对异构存储具有更强的兼容性。开源Ceph提供精简配置功能、卷级的QoS、存储的压缩和消重服务。在对接上层虚拟化平台方面,开源Ceph也具有得天独厚的优势,除了与OpenStack原生集成之外,对VMware、Hyper-V、KVM等虚拟化平台也能够很好地兼容。在开源社区有许多企业参与Ceph技术的系统架构和研发,不断对Ceph进行优化和改进。SUSE是Ceph社区的8大理事成员之一,也是社区贡献最多的组织之一,提供了SUSE Storage的发行版,支撑Ceph的维护和发展,并且提供了更多的增强特性,包括在线升级等。

商业SDS

缺点:作为商业产品,商业SDS版本的更新需要经过长时间的开发测试,版本与版本之间间隔时间长,现有产品不一定对新版本操作系统和新设备能够良好兼容。同时由于商业SDS是为特定公司产品线量身定做的存储软件产品,虽然能够良好接入自身公司的产品线,其他云平台接入性稍弱。

优点:商业SDS由于经过数次迭代演变成为一个成熟的商业产品,优化较好,性能较高,内部提供多项功能像QoS保证了在多业务并发的情况下维持系统的稳定运行。商业SDS在部署时要求存储网络与业务网络之间相互隔离,为数据的安全性提供了保障,后期维护方便。商业SDS提供功能全面的管理页面,交互性好,支持对传统存储进行统一接管,方便利旧。

高校SDS

缺点:由于研发过程应用场景较为单一,高校SDS系统的可靠性服务较少,并需要在多场景下进行大量验证。同时作为面向市场的初期产品,高校SDS的维保支持服务环节较为薄弱。

优点:作为高校学术的产物,高校SDS继承了学术研究上的领先架构,,具有超高的性能,能够完全发挥出磁盘的性能,系统部署方便,支持精简配置等功能。作为学术界成果产业化的典型案例,在初期阶段,高校SDS系统具有超高性价比。

5.SDS在金融行业云中的应用前景

软件定义存储SDS技术相比传统存储已经在多方面有了明显的优势,能够有效满足云计算环境下存储服务高性能、高扩展性以及多种通用接口服务等需求。同时,SDS基于x86架构服务器进行构建,能够很好的和云计算平台中的虚拟机技术、软件定义网络技术等进行集成。

对于金融云计算平台中典型的存储服务需求:虚拟机存储、文件等非结构化数据存储、数据库存储、大数据存储,SDS技术的应用分析如下:

1、虚拟机存储

虚拟机存储是云计算平台中运行的虚拟机以及虚拟机镜像的存储环境,主要特点包括:

文件较大,一般为10G以上;

单个虚拟机的IOPS和带宽要求低,一般在几十以内;

可用性要求较高。

一般来说,在云计算环境下会存在大量的虚拟机,少则上千台,多则几万台甚至几十万台,虽然单台虚拟机所需资源较少,但是量变带来质变,整体对于存储的性能需求极高,该场景下为了满足所有虚拟机访问带来的带宽要求,使用传统存储的解决方案需要购置多套SAN或者NAS存储设备并分别部署,显然价格较贵。

基于SDS技术可构建统一的资源池,并能够动态扩展资源,并有效提升存储资源的管理和使用效率。结合虚拟机存储的使用特点,存储资源池可使用SAS接口的磁盘甚至SATA接口的磁盘。

2、非结构化数据存储

业务系统在运行过程中,一般会生成一些非结构化的数据,包括记录的系统运行日志、生成的一些临时文件等。该类型数据的特点包括:

文件大小中等,一般几十MB到几百MB不等;

IOPS和带宽要求低,一般是连续读写;

可用性要求较高。

该类型的应用场景类似于虚拟机存储,差别主要在于虚拟机主要表现为随机访问,非结构化数据主要表现为连续访问。另外,该场景下的文件数量会非常大,文件大小也差别较大,从几MB到数GB都会有。

因此,SDS技术也可很好的满足上述要求,使用廉价SAS和SATA磁盘满足大规模非结构化数据的存储,并提供良好的扩展性。

3、数据库存储

业务系统运行过程中另外一个典型的存储应用就是关系型数据库,基本上所有的业务系统均需要存储用户基本信息、参数信息、业务交易信息等内容。结合数据库使用的不同场景,包括联机业务数据库、批量业务数据库和参数库,相关的主要特点如下:

联机业务数据库:面向实时交易业务处理过程中的数据存储和访问,主要特点包括业务访问并发量很高、实时性和可用性很高、每天数据量较大等,数据表内容可达到几千万甚至几亿条记录;

批量业务数据库:面向交易业务处理过程中的非实时数据处理,比如说基于历史数据的统计分析,主要特点包括业务访问并发量不高、访问数据量较多、实时性较高等;

参数库:面向业务处理过程中关联的用户信息、商户信息、业务参数等内容,主要特点包括数据增加缓慢、业务访问并发量不高、实时性较高等。

SDS技术结合固态硬盘SSD的应用,完全可以满足数据库应用场景下的带宽和IOPS方面的性能要求。但是,SDS技术在高可靠性方面的功能还需要进一步提升,以满足业务系统尤其是联机类业务系统的要求。

4、大数据存储

大数据已经成为企业经营决策和发展的重要支撑。大数据中的数据来源于业务系统,涵盖了结构化数据、半结构化数据和非结构化数据,数据量非常大。大数据场景下的存储主要特点如下:

数据量非常大,涵盖了企业三至五年甚至更长时间的数据;

存储实时分析、实时查询、离线分析和挖掘等多种类型的业务需求;

支持动态扩展,以满足数据增长的需求;

计算靠近数据,以避免大量数据传输带来的网络压力;

SDS技术有效解决了存储资源服务的问题,能够支撑大规模数据存储、动态扩展等。但是,存储资源池和计算资源池的隔离,使得SDS技术目前无法有效满足计算靠近数据的需求。而Hadoop技术体系中分布式文件存储HDFS和并行处理MapReduce从设计之初就考虑了计算靠近数据的需求。

6.总结

数据的迅速增长催生了大数据产业,云计算是一个潮流,也是一个必然的发展趋势。云计算包含Iaas、PaaS和SaaS,整个云计算生态中,存储是IaaS的重要组成部分,是云计算中非常重要的基础架构,作为信息的存放之地,它的高可靠、高可用性和安全性直接决定了数据中心信息化建设的成败。

金融行业的生产中心的存储系统是金融行业机构最重要的基础设施之一。因而存储技术与产品的选择在整个生产业务的运行效率和稳定水平层面具有举足轻重的地位。作为SDDC不可缺少的一个环节——SDS在能够更好地融合大数据和云计算前提下,可以大幅度降低总成本,SDS将是未来金融行业云中存储技术的应用潮流。

SDS技术作为存储发展的主要趋势,已经在高性能、高扩展性、高可管理性等方面相比传统存储体现出了明显的优势,能够在数据中心云计算环境进行了运用,替代部分的传统存储。但是,仍需要进一步在高可靠性、高可用性等方面进行加强,以满足金融行业的业务需求。

新技术的发展是一个持续渐进的过程,需要在实际中不断应用和改进,相信软件定义存储技术在整个产业的联合推进下,会大放光彩!

【本文版权归存储在线所有,未经许可不得转载。文章仅代表作者看法,如有不同观点,欢迎添加存储在线微信公众号(微信号:doitmedia)进行交流。】

抢沙发

昵称*

邮箱*

网址