为什么大数据需要数据湖?

2018-06-08 15:49:05 高端存储知识  点击量: 评论 (0)
今天西瓜哥作为嘉宾参加了2018中国国际大数据产业博览会铜仁分论坛,感觉铜仁在大数据的落地这块做得非常好,应用很多,丰富多彩。但是,这些应用各种独立,底层的数据共享不够。如果引入数据湖的概念,打造一个高效的数据底座,将会大大提高数据的共享,提高数据的利用价值

前言:

2014626日,西瓜哥在高端存储知识公众号发表了一篇文章”你知道数据湖泊(DATA LAKE)吗?”一文,首次把数据湖这个概念引入中国。由于那时还没有标准的翻译,为了和数据仓库术语字数对齐,翻译成数据湖泊。现在,数据湖已经得到快速发展,很多厂商都推出了自己的解决方案。

今天西瓜哥作为嘉宾参加了2018中国国际大数据产业博览会铜仁分论坛,感觉铜仁在大数据的落地这块做得非常好,应用很多,丰富多彩。但是,这些应用各种独立,底层的数据共享不够。如果引入数据湖的概念,打造一个高效的数据底座,将会大大提高数据的共享,提高数据的利用价值和效率。

因此,我今天选登一篇文章,帮助大家认识到数据湖的价值,希望以后搞大数据前,要提前规划好数据湖。

汇聚成湖,乘云筑数

——云上大数据的最佳拍档:数据湖

作者:张帅,许钟生

2011年“数据湖”概念被提出,业界便对数据湖一直有着广泛而不同的理解和定义。

“数据湖是一个集中化存储海量的、多个来源,多种类型数据,并可以对数据进行快速加工,分析的平台,本质上是一套先进的企业数据架构。”——这是对数据湖比较清晰且完整的定义。然而,从定义上看不出数据湖对企业的重要性,本文从数据湖架构的发展,数据平台对企业的重要性,华为数据湖方案等角度阐明数据湖的对企业的价值。

一、数据湖架构的发展

数据湖架构一直在不断变革和发展,很多场景下,大家很容易将数据湖与数据仓库进行混淆,数据湖方案最初确实是为解决数据仓库笨重,高成本,冗长的分析周期等问题而生,但是二者又有着明显的不同,同时伴随着云计算、大数据、人工智能技术的发展,数据湖与之不断融合,数据湖的架构也在不断完善。

数据湖与数据仓库的区别

数据湖与数据仓库之间的异同点有很多,很容易混淆,但是最重要的区别有两个:

  1. 存储数据类型:数据仓库是存储数据,进行建模,存储的是结构化数据;数据湖以其本源格式保存大量原始数据,包括结构化的、半结构化的和非结构化的数据。在需要数据之前,没有定义数据结构和需求。
  2. 数据处理模式:在我们可以加载到数据仓库中的数据,我们首先需要定义好它,这叫做写时模式(Schema-On-Write)。而对于数据湖,您只需加载原始数据,然后,当您准备使用数据时,就给它一个定义,这叫做读时模式(Schema-On-Read)。这是两种截然不同的数据处理方法。因为数据湖是在数据到使用时再定义模型结构,因此提高了数据模型定义的灵活性,可满足更多不同上层业务的高效率分析诉求。

数据湖与新技术的融合与发展

1、数据湖与大数据技术的融合

Hadoop技术已经经历了十几年的发展,而数据湖作为第二数据平面最重要的数据平台,与Hadoop技术的融合越来越紧密,相辅相成,相得益彰。例如:HBase可以让数据湖保存海量数据;Spark 使得数据湖可以更快的批量分析海量数据;StormFlinkNiFi等使数据湖能够实时接入和处理IOT数据。Hadoop本身更多的聚焦于数据的处理与应用,但是对于底层的数据存储工作则并未过多的关注。例如:传统的Hadoop使用三副本技术保存数据,数据利用率只有33%,数据保存成本较高;同时客户对于Hadoop承载的数据可靠性要求也越来越高,数据保护(备份、容灾等)需求越来越明显,Hadoop3.x 开启了存储和计算分离的趋势,但这些还不能完全满足用户需求,数据湖需要从数据存储、数据治理等方面继续发展。

2、数据湖与云计算技术的融合

云计算采用虚拟化、多租户等技术满足业务对服务器、网络、存储等基础资源的最大化利用,降低企业对IT基础设施的成本,为企业带来了巨大的经济性;同时云计算技术实现了主机、存储等资源快速申请、使用,则同样为企业带来了更多的管理便捷性。在传统建设模式下,大数据采用的都是物理机部署模式,在应对多业务类型弹性计算资源需求以及计算性能和存储容量增幅差异化较大的情况下,计算和存储一体化的部署模式,既不够灵活,同时也不能提供最优性价比。这时利用云化技术,将大数据计算部署在云上,把存储资源与计算资源独立开来,实现计算和数据各自独立扩展,弹性伸缩。当前数据湖架构已经在公有云上得到了教完美的实现和应用,例如:Microsoft Azure 2016年就推出了Data Lake云服务,Amazon AWS 可以基于S3Glue等多个基本云服务快速构建出一套数据湖服务,Google内部对海量数据集的管理和搜索系统也为数据湖的数据管理指明了道路(详情参见《Managing Google’s data lake: an overview of the GOODS system》,一篇关于Google内部的海量数据集搜索与管理的论文)。

3、数据湖与人工智能技术的融合

近些年,人工智能技术再一次飞速发展,训练和推理等需要同时处理超大的,甚至是多个数据集,这些数据集通常是视频、图片、文本等非结构化数据,来源于多个行业、组织、项目,对这些数据的采集、存储、清洗、转换、特征提取等工作是一个系列复杂、漫长的工程。数据湖需要为人工智能程序提供数据快速收集、治理、分析的平台,同时提供极高的带宽、海量小文件存取、多协议互通、数据共享的能力,可以极大加速数据挖掘、深度学习等过程。

二、数据湖对企业的重要性

很多人都说:“数据湖是新瓶装旧酒”,只不过是一个概念的拼凑罢了,本质上并没有什么技术创新。其实数据湖这一名词并不重要,重要的是它能不能在数字化浪潮下,真正帮助企业实现技术转型,应对快速发展的商业环境下层出不穷的新问题。

数据湖的核心价值是为企业带来了数据平台化运营机制。当前很多企业尚未意识到数据平台化为企业带来的好处。当今的商业环境,在日新月异的技术变革驱动下,正发生着剧烈的变化,传统行业不停的被互联网公司颠覆,给很多公司造成了极大的生存压力。互联网公司之所以能不断颠覆传统行业,本身除了商业模式的变革,同时也是因为这些公司很多都是采用平台化战略,将最新的技术与竞争力整合在平台中,去赋能公司的运营,使公司的业务发生跳跃式发展,跨界挤压其他企业的发展空间。传统企业急需变革,需要像互联网公司一样,利用信息化、数字化、新技术的利器形成平台化系统,赋能公司的人员和业务,快速应对挑战。

三、华为数据湖解决方案

华为数据湖解决方案紧扣时代脉搏,帮助企业利用数据平台化利器——数据湖,助力业务飞速发展。华为数据湖解决方案基于先进的云上系统架构,着力解决线下企业数字化转型中,数据无法驱动业务发展、成本高昂、计算存储等基础设施资源浪费等复杂问题。

华为数据湖解决方案基本架构

下文从数据集中存储与共享、数据治理、计算侧Cache,快速数据分析这四个维度详细介绍华为数据湖解决方案。

  • 数据集中存储与共享

许多企业通常忽略数据积累的价值,数据需要从企业的各个方面持续的收集、存储,才有可能基于这些数据挖掘出价值信息,指导业务决策,驱动公司发展。华为数据湖解决方案实现数据集中存储与共享是基于华为大数据解决方案FunsionInsight和华为海量对象存储架构,实现万亿级数据可靠存储与高效分析。

使用一套数据存储资源池,可有效解决企业中的数据烟囱问题,提供统一的命名空间,多协议互通访问,实现数据资源的高效共享,减少数据移动。例如:很多的汽车制造企业都在进行无人驾驶/自动驾驶研究,车辆上的传感器、雷达等IOT设备产生的文件,通过离线批量导入或者高速访问网络进入到存储集群后通过Hadoop HDFS)进行分析处理,再进入HPC集群(NFS)进行仿真计算,也可以读取到GPU集群进行训练(S3)。整个过程中,数据无需拷贝和移动,实现高效数据共享。

数据集中存储与共享实际上是将存储资源池化,将计算和数据进行分离。当前仍然有不少人不能接受大数据的计算和数据分离架构,认为一旦采用分离架构,必然会导致性能的降低。但实际上,分离后可极大降低存储成本,有效提高计算资源利用率,增强计算和存储集群的灵活性。但不是所有情况下都要分离,根据我们在政府、运营商、金融、企业等多个行业多个项目的经验,如下情况适合分离:

1.随着数据量的增长,存储和计算资源的使用率严重不均衡,比如:用户行为分析中的用户留存分析,存储数据量不断增长,但计算资源基本不变;

2.业务部门向平台部门单独申请计算或存储资源,分离架构可以更灵活的分配资源。

另外从数据生命周期的维度也可以找到适合的阶段,绿色部分表示的数据的清洗、加工整合和归档备份场景适合存储和计算的分离。

注意:存储和计算分离往往伴随大数据的服务化,需要从云化、资源弹性调度的角度管理资源。

  • 数据治理

数据不仅要存下来,更要治理好,否则数据湖将变成数据沼泽,浪费大量的IT资源。平台化的数据湖架构能否驱动企业业务发展,数据治理至关重要。企业中收集的数据或从其他行业中采集数据种类多样,格式不一,多数以原始格式存储,企业需要不断对这些原始数据进行整合加工,根据各业务组织、场景、需求形成容易分析的干净数据,尽可能多的让更多的人访问分析数据。数据治理是个一系列复杂的工作,这里重点介绍下元数据的管理。

华为数据湖解决方案为企业中海量的数据集提供了一套集中的元数据管理系统,提供全局的数据资源目录、完整的数据元数据描述、数据血缘关系,方便员工快速查找了解数据,更好的支撑数据分析,元数据管理异步的从数据服务中抽取元数据,尽量不影响原系统的运行。

  • 计算侧Cache

计算和数据分离后必然会带来一定的网络I/O开销,计算侧Cache可有效减少频繁的网络I/O次数。同时万兆网络已经得以普及,甚至更高,网络对计算影响已经非常有限。计算侧Cache采用多种算法,将数据缓存在计算侧,可以使得很多场景下计算与数据分离方案的性能甚至高于一体化方式。

  • 数据快速分析

前述的大量工作实际上都是为了加速数据分析的过程。数据快速分析需要提供多种数据分析引擎,基于华为FusionInsight 大数据方案提供SparkHBaseESLibrA(一种融合数据的基于SQL的分布式数据关系型数据库)等多种分析方式,快速分析不仅是能在已经被整合后变干净的保存在LibrA中的数据,还能直接访问海量对象存储中的数据,无需数据抽取,减少数据的转换,支持高并发读取,提升实时分析效率。同时可支持自助式的数据探索式分析。

华为数据湖解决方案提供了完整的数据架构支持,为企业构建一站式数据处理体验,目前已在多个行业和客户中使用。例如:华为数据湖解决方案支撑平安城市“一云一湖一平台”系统架构,为公安客户构建了物理分散(分散在各地市、区县的数据)、逻辑统一的数据治理架构。

大云网官方微信售电那点事儿

责任编辑:售电衡衡

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞