工业物联网,车联网和实时欺诈风控的需求正在飞速发展,越来越多的企业新应用需要的是快速响应客户需求,并同时学习和适应不断变化的行为模式。同时,随着5G网络、容器云、高性能存储硬件水平的不断提高,数据增长进入了空前的发展阶段。
和以往不同的是,无处不在的物联网、自动驾驶汽车等边缘计算所产生的数据源源不断,就像开着的水管,数据源一直在流出。
目前大数据处理平台最常见的Lambda架构,它的优势在于满足了实时处理与批处理需求,但是,从存储的角度看其缺点也很明显,可以总结为如下三点:①实时处理、批处理不统一,不同的处理路径采用了不同的存储组件,增加了系统的复杂度,导致了开发人员的额外学习成本和工作量。
数据存储多组件化、多份化,同样的数据会被存储在Elastic Search 、S3对象存储系统、Kafka等多种异构的系统中,而且考虑到数据的可靠性,数据还都是多份冗余的,这就极大的增加了用户的存储成本。而往往对于企业用户来说,0.1%的存储冗余都意味着损失。
系统里存储的组件太多太复杂,也增加了使用的运维成本。并且大部分现有的开源项目还处于“强运维”的产品阶段,对于企业用户来说又是很大的开销。
每种类型的数据都有其原生的属性和常用访问模式,对应有最佳的适用场景以及最合适的存储系统。为了解决如上提出的三个问题:降低开发成本、减少存储成本与减少运维成本,自然也就需要新的存储类型。在这里,我们将从最新的数据类型出发,探讨5G时代下数据存储新思路。
计算是原生的流计算,而存储却不是原生的流存储。从存储的视角来说,存储架构的设计需要首先明确所存储的数据的特点。在物联网、自动驾驶汽车、金融等实时应用场景中,所需要存储的数据一般被称之为“流数据”,流数据一般被定义为:流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,数据流可被视为一个随时间延续而无限增长的动态数据集合。
我们将流数据定义为第四种数据类型,传统数据库这类基于事务的程序适合采用块存储系统。文件共享场景下需要在用户间共享文件进行读写操作,因此适合采用分布式文件 (NAS) 存储系统。而需要无限扩展并支持REST接口读写的非结构化的的图像/音视频文件则非常适合采用对象存储系统。
(本文转载电子发烧友网,如有侵权,请联系删除)