现有数据架构难以支撑现代化应用的实现 。
随着云计算产业的快速崛起,带动着各行各业开始自己的基于云的业务创新和信息架构现代化,云计算的可靠性、灵活性、按需计费的高性价比等优势已经让很多企业把“云”业务列入到未来发展战略规划中 。现代化应用是现有应用程序的再升级,也是基于新技术新模式开发的新应用 。现代化应用可以帮助企业面对更加复杂的业务竞争,并在这样的竞争中凭借模型的先进、数据的洞察、应用的创新实现领先 。因此,许多企业希望通过采用现代应用程序开发的模式,转变应用程序的设计、构建和管理方式,从而提高敏捷性,并加快自身的创新进程 。以云原生、容器、微服务、Serverless 等为基础的现代化应用开发兴起之际,各行业都把关注的目光瞄准到了数据架构上 。毕竟微服务、Serverless 构建的应用就像是引擎,而数据才是真正的动力 。
1.现代化应用开发之难亦是数据架构创新之难现代化应用对规模、可用性和性能都提出了更高的要求 。
文章插图
对于现代化应用来说,不仅要应对剧增的用户数量,还要支撑不断增长的应用负载种类和数量 。这是现代化应用开发面对的第一个难题——更强的可扩展性 。
以游戏的场景为例,目前排名靠前的国民级游戏日活用户已经超过 1 亿多人,未来百万以上用户量将成为应用程序的常态,我们畅想一下最近大火的元宇宙场景,如果是一个全球级别的元宇宙应用,其用户数量会是这个数据的数倍,甚至数十倍,媲美亚马逊黑色星期五大促销的高并发情况将成为日常 。所有人都在一个元宇宙进行交互的场景,对应的后端系统响应并发的要求是极高的 。这不是在揣测,而是基于事实和现状,对未来的合理预测 。因此首先需要解决的,就是更大规模并发问题 。
现代化应用开发面对的第二个问题,是如何存储海量数据,以及存储海量数据之后,如何对这些数据进行实时化和智能化处理 。
当前数据已呈现出“二八定律”:结构化数据占 20%,非结构化数据占 80% 。《微软飞行模拟器》模拟真实的山脉、道路、云朵,产生了超过 2.5PB(2.5 x 10^6 GB)的结构化数据,终极元宇宙所需数据量至少比此高出多个数量级 。
根据 IDC 的最新报告,现有数据中非结构化数据占比已超过 90% 。随着新型软件的增多,非结构化数据占比将越来越高 。不同格式、不同标准的非结构化数据在技术上比结构化数据更难存储和分析 。传统数据架构应对这样的海量数据将会很吃力 。
另外,现代化应用还需要考虑性能和延迟的问题 。未来,新的现代化应用都会以遍布全球的用户为目标,这就对延迟有极高的要求 。在游戏中,10ms 的延迟都是不可接受的,有些游戏甚至需要内存级别的延迟 。超强的带宽、超快的传输速度等的实现,需要遍布全球的通信基础设施建设 。
需要注意的是,在考虑高并发和低延迟的同时,还需要兼顾考虑总体质量和成本 。建立、运行和维护这么大规模的应用需要耗费的人力和物力,一般企业可能难以承受 。所以除了质量,成本也是需要考虑的问题 。
总结来看,现代化应用至少要处理 TB 级、PB 级的结构化数据和数倍于此的非结构化数据,支持分布在全球的数百万用户,并以极低的延迟每秒处理数百万个请求 。
对于非结构化数据,如今很多企业开始基于 Amazon S3 这类具备 EB 级扩展能力的云存储构建云上数据湖,并通过云原生数据分析处理工具对这些数据进行处理分析 。而对于结构化数据,还需要弥补以下缺陷:
- 企业被传统商业数据库束缚,而难以开展创新 。传统商业数据库不仅价格昂贵,还有专有技术及许可条款,需要经常进行审计 。虽然越来越多的企业转向了 MySQL 和 PostgreSQL 等开源数据库,但他们仍需要商用数据库的性能;
- 无法满足特定场景需求 。随着应用场景的不断增加,不同应用程序有了自己特定的需求 。现在,开发人员越来越多地使用微服务架构来构建应用程序,并且选择新一代的关系型和非关系型数据库 。但关系型数据库的结构数据耦合性大,不利于扩展分布式部署 。非关系型数据库没有事务处理,复杂查询方面略微欠缺;
- 传统数据库运维模式仍旧需要耗费精力和成本 。运维耗时但价值输出较低,但企业又不得不在这方面耗费精力和成本 。
推荐阅读
- 怎么激活Windows系统
- 春季是胰腺炎的高发期 五类人群需要特别注意
- 求职|好多工厂搬去了东南亚,如果工厂都搬走了,那我们去哪里找工作呢
- 运维需要掌握的 17 个实用技巧
- 记一次 Netty 堆外内存泄露排查过程
- ROP和栈迁移的探究
- 做自媒体需要注意什么?自媒体中的三大忌讳
- 克拉霉素注射液是什么?
- 大承气汤功效有哪些
- 双氧水消毒伤口要注意什么?