不久前,InfoQ 发表了文章《独家揭秘陆金所去 Oracle 全过程:18 个月将 90% 数据库业务换到 MySQL》,引发了关于迁移到Oracle 的讨论。许多读者提到,虽然自从取代Oracle 以来许可成本似乎有所下降,但运营和维护成本实际上有所增加。开支不能减少。
那么实际情况是怎样的呢?经常谈到的运维成本是什么?在Oracle的实践中,运维成本占总成本的比例是多少?迁移到Oracle后,运维成本会发生怎样的变化?有没有办法减少它们?……为了阐明这些问题,InfoQ 采访了陆金所Oracle 负责人王英杰,并采访了PingCAP 联合创始人兼CTO 黄东旭。
我们常说的运维成本都有哪些?
我们经常听到“运维成本”这个词,但是很多人对于运维成本到底包含哪些内容感到困惑。在这篇文章中,我们首先来解释一下运维成本到底包含哪些内容。会解决的。
黄东旭表示,运维成本一般可以从两个方面考虑:固定资产成本和运营成本。
固定资产性成本
数据库迁移固定资产成本主要包括软硬件购置成本和硬件服务维护成本。应用运行环境硬件包括服务器、存储、数据备份环境,支撑软件包括操作系统、保证数据库运行的安全软件以及备份恢复、监控、告警等运维软件。
更具体地说,它包括以下几个方面:
数据库服务器:Oracle通常部署在Unix RISC小型机上。通常,至少有两个(主动和备份)或四个(Oracle RAC)数据库服务。如果主要业务场景使用Oracle数据库,单台服务器的硬件采购成本一般在2-3百万起。高性能磁盘存储:Oracle数据库通常采用独立的FC SAN光纤磁盘阵列柜来支持服务器上的数据库存储。同样,在主要业务场景使用时,此类存储设备的初始采购成本以及设备内配置的光纤硬盘(耗材)数量也从100万元左右起步。除了初始购买成本外,还必须考虑服务器硬件三到五年的维护成本,以及购买冗余备件的成本。通常,一年的维护成本占初始购买成本的10% 至20%。使用Oracle 数据库时,软件许可费用根据RISC Unix 处理器内核的数量计算。 Oracle DG(高可用性)或Oracle RAC(集群)需要额外的软件许可费用。对于大中型企业的主要数据库应用,上述软件许可证的初始购买成本也从100万元起。如果你的公司有容灾、容灾的需求,还应该购买专门的数据备份软件,比如时下流行的NBU企业级独立备份系统。如果你想进行异地灾难恢复,你需要构建一个类似的系统。对于灾难恢复集群,还要购买软件工具来安全地同步两个地点的主备集群,例如Oracle ADG灾难恢复复制系统,或者购买Oracle GoldenGate来做这件事。为了实施。为灾难恢复购买的硬件和支持软件的成本通常高达数百万美元。黄东旭表示,“如果只考虑Oracle数据库的整体建设工作,而不考虑公司硬件采购和合规完成的实际折扣,公司在关键业务场景的固定资产成本支出很容易就会在数千万。” ”
运营成本
运营成本通常包括数据库迁移的应用程序迁移适配成本、数据迁移成本、迁移测试成本、运维人员的招聘和培训成本以及日常运维的一般系统成本。劳动力成本。
“Oracle迁移前后,劳动力成本没有太大变化。陆金所将Oracle数据库迁移到MySQL。从招聘成本角度来看,Oracle工程师和MySQL工程师没有太大区别。”王英杰说。公司通常会迁移到Oracle。在实践开始之前,公司的Oracle工程师已经开始转变成其他数据库工程师,在一两年之内,他们就可以成长为其他合格的数据库工程师。 ”
通常,迁移到Oracle 后,以前由单个IOE 数据库支持的工作负载会由部署的多台X86 服务器来取代数据库,从而使数据库服务器和实例的总数增加数倍。对此,有实际迁移Oracle经验的王英杰表示,这部分成本其实是可以抵消的,“这种规模的增长是有全自动化的数据库运维系统支撑的。”不需要这样做,因为你会增加更多的人员并增加成本。 ”
隐形成本
除了固定资产成本和运营成本外,还有许多无法实际计量的隐性成本。
技术绑架的隐性成本。如果您严重依赖特定制造商的技术来支持您的核心数据库,则制造商可以在合同到期后根据客户系统的重要性及其依赖关系灵活地调整定价。价格也可能上涨。
另外,一旦数据库容量和并发量达到一定规模,硬件成本可能会因系统规模的增加而翻倍。
在整个去 Oracle 过程中,运维成本占总成本的多少?
Oracle迁移过程中的运维成本主要包括人工成本、迁移后支持软硬件成本以及一般运维成本。抛开购买配套软硬件的直接成本,运维成本通常来自三个方面:
投资于迁移技术的验证。迁移后的典型运营和维护成本。 “运维成本一般不占迁移到Oracle成本的很大一部分。粗略估计可能占总投资成本的10%到15%。”黄东旭表示。越来越多的企业正在验证部分业务系统迁移到Oracle,汇集经验,降低迁移过程中的运维成本比例,推动内部大规模迁移到Oracle。公司。 ”
以陆金所Oracle实际实践为例,迁移过程中的运维成本主要包括:
迁移到Oracle之后,购买X86服务器的成本不再那么高,比之前的IOE架构的成本低很多,也比开发全套工具平台迁移到Oracle的成本低很多。这部分主要是因为陆金所现有的数据库团队不会因为迁移到Oracle项目而增加人力成本。在迁移到Oracle的过程中,开发和测试部门投入了人力成本。然而,这些人工成本是一次性的,一旦项目完成就结束了。在王英杰看来,“如果从Oracle项目的一次性架构改造成本来看,运维成本大概占到了全套人力成本的30%到40%。
去 Oracle 完成之后,运维成本会发生什么变化?
当工作在Oracle 中完成时,软件和硬件的固定成本通常会显着降低。从Oracle迁移到开源数据库在短期内会增加运维人员的学习成本,但随着新数据库纳入企业管理系统以及运维人员变得更加熟练,这些成本将会持续增加。减少。也会减少。从Oracle 迁移到云数据库可能会降低后续运营、维护和管理成本。
一般来说,新数据库越大,节省的成本就越大。例如,如果花费1000 万购买的小型计算机和存储的计算和IO 功能相当于花费100 万购买的X86 服务,那么花费1 亿购买的小型计算机和存储的计算和IO 功能将花费1,000。将小于10000台X86服务器就可以满足同样的容量。
以陆金所为例,迁移到Oracle后,IOE设备的软硬件成本几乎全部消除,只需要购买一台廉价的X86服务器就可以支撑我做的全站核心数据库系统。
一旦运维成本上升,企业还会接着去 Oracle 吗?
在大多数情况下,迁移到Oracle 将降低运营维护成本,但凡事都有例外。如果运营维护成本上升,企业还会继续使用Oracle吗?黄东旭分析了多种情况。
超大型商业公司拥有大型IT基础设施和大型数据库应用程序,因此他们出于中期原因继续迁移,即使迁移后的运维成本增加。迁移带来的长期成本节约和效率提升。此外,中小型企业更愿意选择与Oracle合作,因为集成到公司的管控系统后,运营和维护成本也得到管理。如果数据库应用本身不够大,无法通过更换数据库来降低固定成本,或者迁移后运维成本会增加,那么可以考虑迁移到云端或者使用云数据库来降低成本。除了履行商业使命外,企业还充当国家运营基础设施的支柱。因此,在选择是否迁移到Oracle时,运营维护成本可能是一个需要考虑的指标,但不是主要指标。如果您对已建立的迁移路线的评估表明运营和维护成本可能会增加,那么您应该考虑使用其他方法,例如云部署、云原生数据库服务或运营和维护自动化可以降低成本。
写在最后
作为Oracle迁移实践者,王英杰说道: “归根结底,迁移到Oracle的成本主要是开发、测试和运维的人力成本。作为一个大型的系统改造项目,这部分人力成本在项目期间就消除了一次,项目完成后再转移。”不需要投资。”
“我们还发现,IOE 系统越大,从Oracle 迁移后节省的成本效益就越大,因为这些IOE 系统与您自己的技术团队的人力成本相比,您的数据库系统越大,您就越能节省成本。”对于拥有大型IOE系统的公司来说,投入一些人力成本,拥有完全的自主权和选择性是非常有价值的。”
嘉宾采访
王英杰,陆金所数据架构团队负责人,负责运营陆金所全站存储引擎和开发智能工具。
黄东旭,PingCAP联合创始人兼CTO,高级基础软件工程师、架构师,曾就职于微软亚洲研究院、网易有道、豌豆荚。专注于分布式系统和数据库开发,在分布式存储领域拥有丰富的经验和独特的见解。狂热的开源爱好者和开源软件作者,主要作品包括分布式Redis缓存解决方案Codis和分布式关系数据库TiDB。 2015年创业,创立PingCAP。他在PingCAP 的主要工作是从头开始设计和开发开源NewSQL 数据库TiDB。该项目目前在GitHub 上拥有超过22,000 颗星。
此外,黄东旭老师将于今年6月举办的QCon全球软件开发大会(北京)2020上分享演讲《分布式研发团队管理哲学》。有兴趣的同学要注意了。
版权声明:本文由今日头条转载,如有侵犯您的版权,请联系本站编辑删除。