skilljiang
作者skilljiang·2016-11-16 10:51
存储架构师·COSCON

数据的精益化管理降低企业的运营成本

字数 2539阅读 4441评论 0赞 0

我们现在企业的数据量日益膨胀,各个系统跑起来也是已经“满头大汗”,是一个“亚健康”的状态,也需要去“瘦瘦身”了。所以,数据精益管理讲的就是如何降低数据的存储空间:一方面降低采购成本、另一方面提高业务系统运行的效率。有人会问:数据量的增长是业务需求驱动的,总不能为了降低数据量控制业务的需求吧。这句话对不对,对!我们不能控制业务需求,但是我们能控制数据的增长方式,我们能通过现有的存储技术降低数据量。

接下来,我会通过实际的案例,和大家分享一下如何合理的运用相关的存储技术,来达到数据精益管理的目的。

那今天我给大家讲的这个案例呢,是我刚实施过的一个项目,当时客户的环境相对比较复杂,有很多个环境,生产、开发、测试、预生产、灾备每个环境还分核心系统,财务系统,分析系统等等,每个系统都有相对独立的存储设备,数据都是混合使用的,业务系统的性能也相对比较差,主要集中在IO层面。针对这样一个环境,企业给出的要求是整合数据,提升性能。8字真言,实现起来却难度重重。经过分析后,我们首先想到的是进行数据分层管理,也就是分集存储,即对现有的数据进行分类,将不同的数据存放不同存储阵列:

第一步首先将生产和开发测试隔离,因为,如果生产数据和测试数据在同一套存储系统中,在做压力测试的时候势必会造成生产严重的性能波动,因此,先要把生产和测试进行隔离。

那开发测试环境由于存储众多,也有很多品牌,每台主机安装的驱动、多路径软件都不一样,要进行数据管理成本实在太高,因此,基于开发测试环境,我们采用了虚拟化的技术,将各个品牌的存储通过虚拟化技术进行整合,这样数据管理平台统一了、软件功能统一了、而资源利用率也大大的提升了,并且最重要的一点可以充分资源利旧;

第二步,生产环境数据的分层,我们采用存储自动存储技术(easy tier),我们知道,生产数据一般分为冷数据和热数据,经常调用的数据,我们称为热数据,不太用的成为冷数据,自动分层技术他能够根据数据的冷热程度自动将数据上浮或下沉,根据经验我们通常会建立二层的混合存储池,即采用SSD作为第一层,iops高,响应快,延迟低,第二层用sas磁盘空间大,自动分层技术他可以根据数据访问的频繁程度,计算应用使用的周期和规律,自动的将热数据放在SSD磁盘,将冷数据放在SAS磁盘上,这样能够有效的提升应用系统的性能,值得注意的是,在我们测试的过程中,并不是所有的应用系统都适合自动分层,比如分析系统就并不适合,因为分析系统的特性就是不具有规律性,比如今天会跑这个报表,会调用这部分数据,明天会跑另一个报表,就会调用另外一部分数据,自动分层无法去判断这个规律性,因此并不适合使用该技术。而在线交易系统就非常适合,每天的交易模式都是一样的,性能曲线,波峰波谷也都是有规律可循,这种系统就特别适合;

第三步就是对生产系统进行数据归档,用户有很多个系统,大的系统数据库规模已经超过10TB,存放了近十年的数据量,简单的做一个表查询都会感觉非常慢,因此我们帮助客户进行了数据归档的实施,那数据归档必须要和业务部门进行沟通,了解业务的需求,通常有两种归档模式,一种是按照数据的时间节点来进行归档,比如保留近三年的数据,三年之前的数据都归档,还有一种是按照数据的业务逻辑进行归档,这种模式相对比较复杂,需要去看业务数据是否已经完成其生命周期,比如一票单据从创建到最后财务的结算是否已经完成,如果完成了那就可以进行归档。不管是那种模式,最后能大幅度的降低数据容量。

通过之前三步操作,客户的生产系统数据得到了极大的改善,原来跑一个报表需要20几个小时,进行归档和优化后,提升至了2个小时,所以并不是简单的升级存储性能就一定能达到提升系统性能的目的。

在这个项目实施的过程中,客户还遇到了一个问题,这也是我接下来和大家分享的另一个存储技术。那具体是什么样的问题,由于客户的核心系统是7*24小时运行的,每天只有30分钟的维护时间,但是客户需要从这个核心系统里面抽取数据,作为其分析系统的数据源。前提条件就是不能影响核心系统的性能。那我们首先想到的是对该数据源进行快照,把这份数据copy一份出来,作为数据抽取源,但是大家知道快照技术,实际上是将源数据做一个某个时间点的镜像,数据读取还是从原端进行读取,这样无形中会影响生产系统的性能,因此我们必须将数据进行完整的copy,即fullcopy,客户用的是IBM 的存储,因此我们采用了一天中三个IO低谷的时间段的进行多次快照,每个快照都基于上一份快照进行增量的同步,这样就能够在每天30分钟维护时间里面完成数据的全份copy,同时也不会影响生产的性能。

当然快照的用途还远远不止这些,我们把该技术运用到了客户的开发环境,因为客户的开发版本更新很频繁,之前呢每做一个版本都需要从生产copy一份数据进行开发和测试,比如

生产环境一个系统有1TB的数据量,他要进行5个版本的开发,就copy了5TB空间,这么多个系统,可想而知需要多少存储空间,虽然现在存储如白菜价,但也不能这么用法。

那我们用快照的技术,将数据copy了多份快照,因为这个快照不占用实际空间,只记录开发的变化量,因此大幅的下降了存储空间,我们做了一下统计和比对,存储空间较原来的方式节省了70%,原来客户打算购买存储设备进行扩容,通过这种方式,设备都不需要采购了。

第三个我和大家分享的技术就是存储数据重复删除和压缩,客户几年前就部署了虚拟带库设备,因为买的比较早,微码版本也很老,一直没有数据重复删除的功能,我们通过和原厂商

的沟通,对硬件的微码进行了,设备开启了数据重复删除和压缩功能,使用后大家非常惊喜的发现重删比达到了20:1左右,即原来使用20TB的空间现在只需要1TB的备份空间,同时配合压缩技术,通过网络传输就可以将数据远程传输到异地的灾备带库,起到了一个异地容灾的功能。

总结:

分享了几个存储方面的技术,分级存储、数据归档、存储快照、重复删除和压缩,这些存储技术都不算是非常新的技术,但是在做一个系统架构设计的时候,如果能够想到如何合理的运用这些技术,就能达到意想不到的结果。日后在实际工作中,可以回去和老板说:我可以让我们公司采购成本下降几百万,性能提升XX倍。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

  • VIOS设计、安装、配置--之实施
    评论 11 · 赞 3
  • AIX DB2 闪退
    评论 0 · 赞 0
  • AIX VNC
    评论 0 · 赞 1
  • netperf 与网络性能测量
    评论 1 · 赞 3
  • AIX 下使用expect实现远程关机
    评论 13 · 赞 6
  • 相关文章

    相关问题

    相关资料

    X社区推广