5G时代:大数据存储面临哪三大挑战
扫描二维码
随时随地手机看文章
时代与时俱进,工业物联网,车联网和实时欺诈风控的需求也在飞速发展,越来越多的企业新应用需要的是快速响应客户需求,并同时学习和适应不断变化的行为模式。因此,随着5G网络、容器云、高性能存储硬件水平的不断提高,数据增长进入了空前的发展阶段。
和以往不同的是,无处不在的物联网、自动驾驶汽车等边缘计算所产生的数据源源不断,就像开着的水管,数据源一直在流出。
当前大数据存储主要存在三大问题
下图是目前大数据处理平台最常见的Lambda架构,它的优势在于满足了实时处理与批处理需求,但是,从存储的角度看其缺点也很明显,可以总结为如下三点:
①实时处理、批处理不统一,不同的处理路径采用了不同的存储组件,增加了系统的复杂度,导致了开发人员的额外学习成本和工作量。
②数据存储多组件化、多份化,如下图,同样的数据会被存储在Elastic Search 、S3对象存储系统、Kafka等多种异构的系统中,而且考虑到数据的可靠性,数据还都是多份冗余的,这就极大的增加了用户的存储成本。而往往对于企业用户来说,0.1%的存储冗余都意味着损失。
③系统里存储的组件太多太复杂,也增加了使用的运维成本。并且大部分现有的开源项目还处于“强运维”的产品阶段,对于企业用户来说又是很大的开销。
Lambda架构
每种类型的数据都有其原生的属性和常用访问模式,对应有最佳的适用场景以及最合适的存储系统。为了解决如上提出的三个问题:降低开发成本、减少存储成本与减少运维成本,自然也就需要新的存储类型。在这里,我们将从最新的数据类型出发,探讨5G时代下数据存储新思路。
流存储应运而生
计算是原生的流计算,而存储却不是原生的流存储。从存储的视角来说,存储架构的设计需要首先明确所存储的数据的特点。在物联网、自动驾驶汽车、金融等实时应用场景中,所需要存储的数据一般被称之为“流数据”,流数据一般被定义为:
流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,数据流可被视为一个随时间延续而无限增长的动态数据集合。
四大存储类型
上图所示,我们将流数据定义为第四种数据类型,从左到右分布着四种最常见的的存储类型。传统数据库这类基于事务的程序适合采用块存储系统。文件共享场景下需要在用户间共享文件进行读写操作,因此适合采用分布式文件 (NAS) 存储系统。而需要无限扩展并支持REST接口读写的非结构化的的图像/音视频文件则非常适合采用对象存储系统。
而针对流数据的应用场景,就需要流数据存储满足以下需求:
低延时:在高并发条件下 <10ms 的读写延时。
仅处理一次:即使客户端、服务器或网络出现故障,也确保每个事件都被处理且只被处理一次。
顺序保证:可以提供严格有序的数据访问模式
检查点:确保每个读客户端 / 上层应用能保存和恢复原来的使用状态
在物联网的世界,数据是实时的,分析也是实时的。获得业务洞察以赢得价值还是错失关键机会,对企业来说也许只有几毫秒的差距,而真正的流式数据处理可以减少传统的小批量分析方法的宝贵时间。
为此,戴尔科技集团IoT部门的团队重新思考了流式数据处理和存储规则,为这一场景重新设计了新的存储类型,即原生的流存储,就这样“Pravega”诞生了。
Pravega项目LOGO
▐ 关于Pravega
Pravega属于戴尔科技集团IoT战略下的一个子项目。用于存储和分析来自各种物联网终端的大量数据,旨在实现实时决策。其结合了创新的开源流软件(Pravega)、戴尔易安信PowerEdge服务器,并无缝集成到非结构化数据产品组合,且拥抱Flink生态,以此为用户提供IoT所需的关键平台。