5G时代流数据该如何处理?有哪些好用的大数据平台?

科技行者


5G时代,大数据流存储平台“Pravega”诞生记


随着5G网络、容器云、高性能存储硬件水平的不断提高,数据增长进入了空前的发展阶段。无处不在的物联网、自动驾驶汽车等边缘计算所产生的数据源源不断,就像开着的水管,数据源一直在流出。这就给当前大数据处理系统(无论何种架构)提出了一个问题,计算是原生的流计算,而存储却不是原生的流存储。因此目前大数据存储面临的三大缺陷。


目前大数据处理平台最常见的是Lambda架构,它的优势在于满足了实时处理与批处理需求,但是,从存储的角度看Lambda有三个缺点:


第一、实时处理、批处理不统一,不同的处理路径采用了不同的存储组件,增加了系统的复杂度,导致了开发人员的额外学习成本和工作量。


第二、数据存储多组件化、多份化,如下图,同样的数据会被存储在Elastic Search 、S3对象存储系统、Kafka等多种异构的系统中,而且考虑到数据的可靠性,数据还都是多份冗余的,这就极大的增加了用户的存储成本。而往往对于企业用户来说,0.1%的存储冗余都意味着损失。


第三、系统里存储的组件太多太复杂,也增加了使用的运维成本。并且大部分现有的开源项目还处于“强运维”的产品阶段,对于企业用户来说又是很大的开销。

每种类型的数据都有其原生的属性和常用访问模式,对应有最佳的适用场景以及最合适的存储系统。


这三大缺点带了存储过程中的三个问题,即开发成本、存储成本以及运维成本。那么如何降低开发成本、减少存储成本与减少运维成本?在这里,从最新的数据类型出发,探讨5G时代下数据存储新思路。


从存储的视角来说,存储架构的设计需要首先明确所存储的数据的特点。目前企业数据的存储模式为块存储、文件存储和对象存储。而今天移动互联、物联网的发展,在物联网、自动驾驶汽车、金融等实时应用场景中,需要存储的数据目前被称之为“流数据”,流数据一般被定义为:

流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,数据流可被视为一个随时间延续而无限增长的动态数据集合。

四大存储类型

上图将流数据定义为第四种数据类型,从左到右分布着四种最常见的存储类型。传统数据库这类基于事务的程序适合采用块存储系统。文件共享场景下需要在用户间共享文件进行读写操作,因此适合采用分布式文件 (NAS) 存储系统。而需要无限扩展并支持REST接口读写的非结构化的图像/音视频文件则非常适合采用对象存储系统。


而针对流数据的应用场景,就需要流数据存储满足以下需求:


低延时:在高并发条件下 <10ms 的读写延时。


仅处理一次:即使客户端、服务器或网络出现故障,也确保每个事件都被处理且只被处理一次。


顺序保证:可以提供严格有序的数据访问模式


检查点:确保每个读客户端 / 上层应用能保存和恢复原来的使用状态


在物联网的世界,数据是实时的,分析也是实时的。获得业务洞察以赢得价值还是错失关键机会,对企业来说也许只有几毫秒的差距,而真正的流式数据处理可以减少传统的小批量分析方法的宝贵时间。

为此,戴尔科技集团IoT部门的团队重新思考了流式数据处理和存储规则,重新设计了新的存储类型,即原生的流存储,就这样“Pravega”诞生了。


Pravega是以前的成熟技术与新技术的组合。Pravega 团队拥有着基于日志存储的设计经验,也拥有 Apache ZooKeeper/BookKeeper 的项目历史,加之大量实时系统同样也采用日志存储的方式来完成实时应用的消息队列,想要满足这三种数据访问模式,非Pravega莫属。


分享到:


相關文章: