长期以来,国内数据技术都由海外厂商主导。然而随着国际竞争环境日益激烈,争端所引发的技术卡脖子事件频发, 2022年3月Cloudera宣布停止对CDH技术支持以及Apache Log4j引发严重安全漏洞的问题,企业对核心技术自主可控的意愿急迫,国产化替换需求不断增强。本文将探讨国产化趋势下,大数据平台该何去何从。主要包括以下几大方面:
- 为什么要做软件国产化?
- 软件国产化⾯临的挑战
- 数帆⾃主⼤数据平台介绍
01 为什么要做软件国产化?
1. 软件国产化的必要性-外部形势
从2020年至今,随着中美贸易战的不断升级,美国商务部限制美企对华为、中兴、大疆等企业的各种零部件出口。此外,俄乌战争导致Oracle、Apple、Google等被限制向俄罗斯出口。面对特殊的大环境,全球化带来的科技创新共同体背后,国家IT产业实现自主可控的重要性不言而喻。
2. 软件国产化的必要性-安全因素
2021年底爆出的log4J漏洞,因使用率较高且没有修复方案,尤其对于一些信息安全要求较高的金融或政府类单位来说,影响范围极大。对于一个产品来说,如果不能掌握源代码,那只能通过等待发版或者一些治标不治本的封禁手段来修复漏洞,然而大多时候产品的发版速度跟不上实际应用节奏,因此急需一个可以掌控的技术环境,能满足我们对安全的要求。
3. 软件国产化的必要性-安全政策导向
我国在软件国产化方面正在向自主可控方向发展。芯片领域如飞腾、鲲鹏、龙芯、海光等;服务器PC产品有华为、浪潮、新华三等。数据库也正在往国产化方向发展,如OceanBase、PostgreSQL、TiDB、达梦、人大金仓等。
为确保国家信息安全,政府部门出台了一系列的相关政策以支持IT系统的国产化。政策导向也在鼓励国内的各行业向自主可控方向发展。
02 软件国产化的挑战
1. 什么是国产化?
《数据库导论》的作者Andy Pavlo称国内大部分自主可控的数据库系统都是从MySQL或者Postgres的分支上发展起来的,这些数据库算不算国产化?
2. 国产化的核心
国产化的核心并不是从0到1的建设,而是能够掌握源代码,深入理解其原理和实现,对不合理的内容进行改造,并在此基础上进行更多的优化和功能增强。这就是软件国产化自主可控的表现。
软件国产化自主可控另一个方面是整个软件生态的建设,通过做一些工具让生态闭环更加完整,在兼容老的生态的基础上构建自身生态。
3. 国产化的现状
操作系统领域:作为软硬件的纽带,国内如中标麒麟、统信UOS、OpenEuler等都有了不错的发展。
数据库领域:大批数据库厂商不断涌现,如OceanBase、TiDB、GaussDB及达梦数据库等。
软件领域:如金山WPS、用友、金蝶等。
经过一段时间的发展后,我国在软件方面产品的成熟度以及认知度日渐提升。从图表中可以看到,2021年OpenEuler在金融行业的装机量占比23.3%,金融机构的操作系统正在慢慢的向国产化方向转变。数据库方面虽然也有部分机构做了一些替换,但是案例较少,原因在于金融核心交易系统的稳定性是第一要义,新研发数据库产品对于上层系统的兼容性难以完全覆盖,一旦出现问题,可能会影响整个交易链路,这对于金融机构是不能接受的。
4. 大数据平台的现状
中国信息通讯研究院在2019做了一个关于国内大数据平台发行版本的统计,其中超过70%是在CDH 或者HDP的基础上包装成产品对外提供的,24%是在Apache开源产品上做一些加工,6%的版本是自研产品。从2021年1月31日开始,所有Cloudera软件都需要有效的订阅,并且只能通过付费墙进行访问。这说明大数据平台免费的时代将要终结。
5. 大数据平台的选择
大数据平台正在慢慢向付费方向切换,如果继续保持版本不变 ,由于官方不再提供服务,则可能会存在严重漏洞及性能上的不足,对于安全要求较高的金融或政府行业来说,在生产上存在较大的风险。
如果做升级改造,也会存在升级风险,对于一些服务不可中断的行业,需要一个更平滑更稳定的迁移方式,同时上层产品的兼容性也是一个重要的考量标准。
6. 大数据平台升级的几种方式
- 原地升级,不需要额外的机器资源,但需要停机升级,错误回滚是一个很大的问题。
- 迁移升级,重建一套系统,然后将数据拷贝过去。这种迁移可以做到不停服务,对线上系统无感知,但是需要额外的机器资源,成本及时间支出较高。
- 滚动升级,滚动升级需要对业务做一些拆分,然后基于业务部分迁移。这种方式相对迁移升级来说,对资源的需求相对更少,是一个对成本控制和业务影响相对稳妥的方案。
03 数帆大数据平台介绍
1. 网易数帆的发展历程
网易数帆从2009年就开始研发大规模分布式系统,2015年大数据平台、数据可视化平台上线,经过十多年的发展,已经形成从数据存储、数据治理、数据研发、数据展示的完整的解决方案和产品架构。
2. 网易有数基础团队
网易有数基础团队主要负责集团内部大数据平台内核底层技术的研发,如Hadoop 、OLAP 、Impala 、Spark 等,还贡献了Apache的 Kyuubi 项目,是支撑网易数帆产品的底层基座。
3. 网易有数平台支持
在持续保持良好的核心技术支撑的同时 ,有数平台同时还在积极做国内信创安全适配,通过一系列的技术改造,有数整体平台能够兼容包括华为鲲鹏芯片、麒麟操作系统等符合信创要求的基础设施。有数平台后续的发展会致力于搭建更兼容的平台架构。
4. 数帆有数平台
数帆有数平台融合了网易10多年的平台建设经验,依托社区优势,致力于打造自主可控的数据底座,并实现易用性、稳定性、安全性等的升级。
5. 网易有数平台增强
有数平台还会在开源大数据框架的基础上做一些增强,如Hadoop的回收站功能、Impala的虚拟数仓隔离和负载均衡、Spark的权限管控和 Ranger 兼容、Hive的负载问题等。
Impala 的增强体现在把所有的节点通过 group分组,对不同业务进行隔离,从而避免业务之间的资源冲突。同时也通过自研管理服务器进行SQL审计,通过收集查询习惯进行预计算,从而减少部分查询对整体的影响。
此外在HDFS上也做了增强回收站的功能,通过修改 HDFS源码,确保删除数据首先保存到回收站,防止数据异常删除。
6. 网易有数服务策略
有数平台还提供三位一体的服务支持。技术人员帮助客户快速熟悉产品,使得用户遇到问题可以有效解决,用户遇到故障时,运维人员能够快速主动提供运维增值服务。此外还提供研发兜底机制,一旦出现内核层面的问题,研发团队会快速响应进行修复。
7. 平台迁移支持
平台支持Apache Hadoop、CDP、HDP等的迁移。在Hive元数据迁移过程中需要考虑元数据兼容性问题,业务数据的迁移主要通过镜像后定时增量拷贝的形式同步数据,同时提供迁移工具进行权限的一键式迁移,我们还构建了调度平台,并提供Oozie调度任务的迁移工具。
04 Q&A环节
Q1:CDH 底层技术该怎么做?在金融行业迁移需要重点关注哪些问题?
A1:CDH迁移涉及到平台的构建、兼容性的迁移等等,由于迁移过程的复杂性,我们会针对每个用户设计迁移方案,根据用户的使用习惯进行迁移。
Q2:金融技术的自主可控需要关注哪些问题?
A2:第一个关注点是目标供应商对大数据平台的自主可控能力,是否有对底层源码的一个掌控能力。第二个关注点是供应商能否完全兼容平台的平滑迁移。
Q3:金融行业做数据中台有哪些价值?
A3:数据中台主要做数据研发、数据质量、数据服务的事情,各个业务单元所提供的数据口径是不一致的,数据中台可以将数据口径进行统一,这样可以在权限管控、质量管控、资源管控等方面做更好的控制。
Q4:很多公司基于HDP+Ambari 管控平台做大数据平台的封装?
A4:CDH+ cloud manager是商业化的产品,HDP+Ambari是开源的,这也是大家选择的原因。CDH更改了扩展后,如果使用Ambari属于盗版行为,会被追究法律责任。数帆也是因为Ambari 的问题,基于hadoop官方社区,建立一套自己的管控平台。
Q5:关于大数据组件的升级换代有什么建议?
A5:从大的方向来说,升级是有必要的,版本升级换代有助于性能和安全层面的提升,如果老版本的安全风险和性能是可接受的,可以暂不升级,如果需要更高的性能或安全需求,则可以考虑升级。
Q6:网易大数据平台的数据安全性如何保障?
A6:网易大数据平台依托于现有开源的社区的组件能力,基于Kerberos加 Ranger 的权限控制体系,同时做一些增强,对于组和用户对资源的访问权限进行细粒度的控制。此外在产品层面也做了安全中心,来保证底层数据访问的安全性。
Q7:有 K8S组件的规划吗?
A7:这是我们未来的发展方向,去年在K8S 上做了Spark调度,以解决在线业务的错峰调度,今年会慢慢地会考虑整个底层基础平台往 K8S 方向上做,如OLAP、Flink 等的业务。
Q8:网易用什么工具做平台维护?
A8:网易做了一套EasyOps来管控整个大数据的底座,提供自动化运维方案。
Q9:网易的大数据平台有和HDP或 CDH做对比吗?
A9:网易的基础组件是跟CDH等的大的社区一致的,同时根据实际应用情况对一些基础组件进行深度增强及性能上的改善。
今天的分享就到这里,谢谢大家。