分布式系统、微服务架构、边缘计算体系……企业IT领域好像从不缺少概念,其实各种技术之间,虽然说法不同,但理念是相通的。在边缘计算体系中,和微服务、分布式一样,只有选对方向,才可以提高效率、有效挖掘数据价值,一旦选错了,就只能以人海战术解决,通常是“后人的工作就是给前人排雷”。
▲朗致集团数字化效能总经理 屠文珂
在2023年DTCC数据库技术大会上,朗致集团数字化效能总经理屠文珂,以《边缘计算题中数据库离散与聚合群落设计》为主题,分享了朗致集团的设计理念和相关实践经验。至于,朗致集团为何青睐边缘计算体系?绝不是为了赶时髦,追求标新立异,而是企业在业务实战中,切实遇到的问题,并且进行了推理、反思,总结出一套创新的解决方案!
问题与挑战
所谓边缘计算,是指让计算更加靠近数据生产的源头,在边缘端提供计算、存储以及各种网络服务。屠文珂分析道,边缘计算大概在2000左右起步,主要解决传统云计算模式处理海量数据存在性能瓶颈和延迟问题。后来,随着5G、人工智能、大数据等技术的推动,越来越多的企业开始关注边缘计算,将其应用到实际场景中。
朗致集团是一家医药类服务商,也是最早为广袤的农村提供技术支持的企业。十几年前,受限于IPV4以及NAT地址转换协议带来的基础性应用缺陷,中国基层网络不稳定,很难适应数据中心或者计算中心式的运营模式,所以边缘计算成为最终选择。
具体到数据问题,医药行业比较规范,行业壁垒高,有各种各样的合规和隐私性要求,更多是企业级数据管理。与普通2C业务相比,2B用户数据量并不少,大概每1万个用户每年要有1T左右数据,而且单个用户操作时长非常长,几乎所有工作时间都会使用业务系统,产生数据。
而针对更核心的数据库来说,则要求较低,即便是二十年前的数据库也能支持边缘计算场景下的数据承载压力。在传统数据中心架构下,对数据库要求较高,需要低延时、快速响应能力;但是,在边缘计算场景中,最大的挑战不是数据库,而是基础的通讯网络。在IPV4网络转换条件下,数据包转发超过255次就会被直接丢弃,而且没有任何异常发生提示,导致边缘网络特别不稳定。
网都不通,何谈稳定性?边缘网络的关键点是,如何在边缘端以断网的形式完成业务闭环。此种背景下,朗致集团通过边缘计算体系实现了统一管理,让农村的每个诊所都拥有自己的数据库,在局域网内部就可以完成绝大多数的操作,缓解了中心数据库的压力。
数据离散与聚合基本策略
一旦数据量上来,就像流动的水,会遇到各种错综复杂的问题。那么,诸多数据该如何有效管理?
朗致集团经过多年实践,总结出三个关键点:
首先,数据要有寻根的能力。一个系统沉淀下来的所有数据都必须回答同一个问题:我是谁的数据?凡是不能回答这个问题的数据,都被称为“脱根”。脱根的数据就不再是数据,而是系统中冗余的无价值信息。有人可能会说,所有信息数据直接堆砌就可以了,随着人工智能技术的发展,所有的数据都可以被分析。这只是理论上的理解,实际应用中,我们要反思人工智能不能做什么?让AI去分析脱根的数据,进行数据挖掘,这是AI做不到的事情,所以数据绝对不能“脱根”。
其次,一个系统的根,通常由其统一用户系统(Unified Access)维护。让所有应用具备一致性体验,包括统一访问和管理,具备自动化的维护能力。
其三,通过边缘计算降低资源消耗、高技术要求。针对巨型系统,数据的产生、存储、运算,都会带来巨大的资源消耗。当前,很多大厂普遍采用计算中心式,而朗致集团选择用边缘计算承载高资源消耗问题。
需要重点强调的是,走边缘计算道路,不只是技术路线选择问题,而是整个时代的特色,那就是算力下沉、向边缘场景迁移。过去,在计算中心模式下,绝大多数算力都由计算中心支付,虽然每个用户的算力不多,但汇总到计算中心的时候,会是一个海量规模,计算中心对资源的需求就会急剧上升。而当我们把算力需求分散到边缘,每个用户自己的终端设备都可以进行算力支付,极大地避免了资源的过度消耗。
那么,边缘计算体系到底如何去设计?朗致集团的做法是,以环状从中心向边缘分布!边缘计算并非没有中心,而是中心所承载的职能由一个比较庞大的数据仓库来支撑;同时,中心还有一个管控中心,从信息中心对外的扩展的第一圈层是边缘计算化。另外,每一个边缘计算中心要有自己的服务中心,每个用户的终端,无论是手机还是电脑,都有自己的数据库去支撑运行,这些终端也是大量热数据产生的地方。
在边缘计算体系落地过程中,最核心的技术问题就是数据的离散与聚合。在很多工程实践当中,经常用分库、分表来进行描述。朗致集团经过一系列推理和思辨过后,总结出自己的一套体系。在离散策略设计中,统一用户中心的根分为 “组织、自然人”两类,因此数据库离散的颗粒也对应分解为“组织”和“人”两种。这样做的好处是,在数据库分库的时候,不会因为某个库中的表多了而分库,因为这样没有逻辑依据。而在聚合策略上,归属组织的数据,持久化至组织库;归属自然人的数据,持久化至自然人库。
5D系统应对百亿级数据库群落
大数据发展到今天,几乎所有的人都有一种惯性思维,认为数据的第一手生成地点是在中心库。事实上,在边缘计算场景中,数据不可能把请求发回到中心,再由中心生成,然后回传到边缘。所以,我们需要明确一个概念,那就是数据ID是在边缘生成,而非在中心生成。
那么,既然有计算中心和边缘存在,肯定少不了云、边、端协同。从大的技术体系来看,如何解决百亿级别数据库的互联互通问题?
假如每一个用户的每一个APP的每种终端的每个设备都存在一个数据库,数据库会迅速膨胀,随着时间的推移,数据库增长的量级无法想象。如何支撑数据库的高并发问题?朗致集团推出了5D(Dispersed Distributed Data Dynamic Delegation)分散分布式数据动态代理技术,该技术的最大特色是,可以对大规模数据群落进行统一管理。
其核心思想是:
1、网络波动为常态,保证交互的可靠性。百亿级别的数据库在网络上即是基于公网,同时要分散到每一个终端,假如有的手机放了一个月再用,数据库的延迟达到月级甚至年级,也要确保数据的一致性。
2、支持数据库结构变动。因为,所有应用都不会是一潭死水,随着应用的增长,数据库表级别的膨胀非常剧烈。比如:有的中台已经有5000张表,必须设计一个规则,那就是绝不冗余。当数据变更成为一种常态,系统要能够支持数据库结构的变更。不管是基于公网,还是在全国分散的海量数据库,经过一段时间震荡以后,数据库结构可以保持它的最终状态,数据中心要有仲裁的能力,能够发现过往历史负载的痕迹。
3、中心可发起数据修正。 当数据发生差异不可避免,整个数据中心可以发起数据修正,包括数据结构的修正和数据本身的修正。
4、超低人工介入。对百亿级数据库进行管理,不是靠人海战术,而是靠自动化技术,实现超低人工介入。
说白了,5D技术之所以更具引领性,是因为把中心库和离散的边缘库遇到的问题全部列出来,主要解决各种数据库之间的通信问题。系统选择的是全权代理,单库负责一切行为,但同时不需要负什么责任,整个数据基于统一的公网实现数据一致性保障,真正做到数据改聚的时候聚,该分的时候分。
回首过往,百亿级数据库管理是怎样一番场景?朗致集团想了,设计了,并且已经投入生产了。目前,5D系统已经应用于1000家客户落地案例!