进行数据分析工作的时候会用到很多的工具,比如说数据湖和数据仓库,不过这两者之间的差异和区别,可能会让人困惑。那么大家知道不知道数据湖和数据仓库的区别是什么呢?下面我们就给大家介绍一下数据湖和数据库的相关知识。
2010年,James Dixon提出数据湖(Data Lake)的概念。
2011年Dan Woods在福布斯发表“大数据需要更大的新架构”(Big Data Requires a Big New Architecture),数据湖开始广为传播。
数据湖是与数据仓库相对的概念。数据仓库有两个局限:一是只可以回答预先设定的问题,二是数据已经被筛选包装好,无法看见其最初状态。
为了说明数据湖与数据仓库的不同,James Dixon说:“如果数据集市是一个商店的瓶装水,经过过滤包装和结构化以供使用——数据湖则是在更自然状态下的大量的水。数据湖中的数据来源于不同地方,用户可以进入数据湖中提取所需要的数据”。
数据湖的核心原则是集中存储原始的、未经改变的全量数据,在提取数据时才进行转换。数据湖存储各种类型数据,重点是非结构化和半结构化数据,通过统一视图提供开放访问。数据湖具有强大的元数据管理能力,保证所存储数据资源的语义一致性,这是进行大数据分析的基本前提。
城市数据湖与谷歌数据中心的类比
将城市数据湖与谷歌数据中心做个类比,不难发现:数据湖的定位和搜索引擎类似,核心的技术实现是多源异构数据的自动化标注,才能像在搜索引擎上查找信息一样实现按需检索、即取即用。
Google、Facebook、Infomatica、亚马逊AWS、微软Azure等IT巨头积极采纳数据湖概念,并推进实际落地。很多数据仓库迁移到以Hadoop为核心的技术栈,将半结构化、非结构数据存储到数据湖中,以弥补数据仓库的技术局限性。
1、数据湖的基本定位
数据湖是城市的“数据工厂”,是城市大数据应用的“中央厨房”。
数据湖定位于数据采集、汇聚和存储环节,是公用数据集和分析型应用的源头。狭义数据湖仅是对应“存储”这个环节,广义数据湖则对应“入湖、存储、出湖”三个环节。
(1)数据汇聚
接入多源异构数据源,扩展新型大数据和流式数据采集能力,统一监控运行状态。
(2)数据标注
引入人工智能技术,实现元数据的自动化标注,提升到数据资产管理。
(3)数据分发
提供一站式数据服务,从数据发现、准备到提取,实现按需提供、即取即用。
2、数据湖的服务对象
数据湖定位于提供原料数据而不是成品数据,重点解决数据供给侧的问题。
按照办业务和做决策两类业务场景对获取原料数据的共性需求,数据湖的服务对象不外乎两类:一类是生产数据内容产品的公用数据集建设者,比如建立人口库、法人库等基准数据,用于自然人和组织机构的统一身份认证;另一类是生产数据分析产品的分析型应用开发者,比如开发城市大脑等决策系统,用于城市中长期规划和重大风险预警。
3、数据湖的体系结构
数据湖由元数据平台、数据湖仓库和数据湖服务三个部分组成。
元数据平台用于数据资产登记、盘点、评估和处置,数据湖仓库用于原生数据可管理、可扩展的统一存储,数据湖服务用于对外提供数据发现、准备和提取服务。
4、数据湖的核心特性
按照数据湖的基本定位,应该具有以下核心特性:
(1)数据总收总发
(2)以原生格式存储,在提取时再转换
(3)元数据自动化标注
(4)元数据标注质量的机器学习改进机制
(5)供需对接的数据资源市场机制
(6)数据按需提取、即取即用
(7)数据资产的全生命周期价值管理
5、数据湖的技术难点
数据湖的技术门槛很高,元数据自动化标注是最大难题。
数据湖有点像图书馆管理员。不编制书目,你就找不到你想要的书;不编制数据目录,你就找不到你想要的数据。
可以把数据湖想象成一个元数据标注的机器人,它每时每刻要对进入数据湖的数据进行认读——这篇文章、这张图片、这段视频、这段语音、这些传感器数据等等,到底说了什么;然后进行编目——数据从哪里来,作者是谁,标题是什么,主题词、关键字是什么,从而建立数据目录,以支撑数据资源管理和服务活动。
这就牵涉到人工智能技术在元数据管理领域的综合运用。比如,文书型数据要用到自然语言处理,媒体型数据要用到图像识别和语音识别;为了提高元数据标注的速度和准确性,还要引入机器学习。恕我孤陋寡闻,单领域有很牛的公司,但是将多领域的人工智能技术用于元数据管理,有这样技术预研和储备的公司几乎没有。
其实,并非是技术上做不到,而是商业上是否可以期许。城市数据湖在技术复杂度高于谷歌数据中心的情况下,如果可以预判在不久的将来,城市数据的大规模集中和深层次利用是大势所趋,但是又缺少堪用的城市数据基础设施,那么投资于城市数据湖研发就是理所当然。