数据分析

数据湖就是坑人的新概念?那些挖坑的企业,后来都怎么样了

2020-11-06  本文已影响0人  数据分析不是个事儿

|0x00 什么是数据湖

数据湖的概念最初是由大数据厂商提出的,可以简单理解为一个集中存储数据的数据库,不论是结构化数据or非结构化数据,海量数据or少量数据,都能够支持存储和计算就像在湖中有多个支流进入一样,结构化数据、非结构化数据、日志数据、实时数据,都流入了同一种数据存储结构之中,并进行不同类型的分析处理,以指导做出更好的决策。

数据湖通常采用Hadoop作为数据的承载对象,随着企业规模的扩大,不同类型的数据越来越多,最终所有企业或个人相关的数据,都被认为是“大数据”,虽然廉价的HDFS是存储数据的最佳选择,但面对更多种类更多时效性要求的数据,使得Hadoop体系无法成为所有场景的最佳答案。

|0x01 数据湖的核心能力与架构

数据湖的核心能力包括:

集成能力:支持结构化,半结构化和非结构化类型的数据,提供统一多元的接入方式,并自动生成元数据信息;

存储能力:支持异构和多样的存储,供经济高效的存储并允许快速访问数据浏览;

治理能力:通过数据的血缘关系,建立完整的上下游脉络关系,支持问题数据的追踪治理;

安全能力:每一层数据都能够实现安全管控能力,包括数据的敏感达标与安全监管;

发现能力:能够快速搜索和使用目标数据,明确知悉其在数据湖中的位置;

分析能力:针对已经接入的数据,提供报表、自助取数、交互式、数据分析、机器学习等分析使用能力

质量治理:针对已经接入的数据,提供字段校验、完整性分析、产出监控等功能,确保数据的质量是可用的

明确了核心能力,就可以设计对应的体系结构,大体包括:

数据接入层:提供适配的多源异构数据资源接入方式,包括数据源的配置、数据任务的同步、数据的分发与调度、数据的ETL加工等;

数据存储层:通常采用HDFS,但针对不同的场景可以提供其他的解决方案

数据计算层:采用多种数据分析引擎,来满足批量、实时等特定计算场景;

数据应用层:不仅需要批量报表、即席查询、交互式分析、数据仓库、机器学习等上层应用,还需要提供自助式数据探索能力

|0x02 数据仓库与数据湖的差异

一图解释:

额外提一下,数据仓库非常倾向于事前定义,也就是从事务系统中提取,经过维度或其他方式建模后,固化下来。这么做虽然能够更加清晰地展示基础数据结构,降低数据计算量,提升开发速度,但同时也带来了基础模型改动成本高、数据迁移周期长、数据质量管控难等问题,可以说高度结构化的数据仓库,更适合于月度报告等操作用途

而数据湖倾向于所有数据都保持原始形式,在使用的时候直接用工具来统计分析,对于数据科学家而言,使用起来更加灵活,但同时也非常考验数据引擎的性能,以及科学家对于数据的掌握程度。

|0xFF 数据湖的风险与收益

使用数据湖的风险点在于:

数据湖的设计要求更高,因为面向的数据类型更加的不稳定,非结构化数据可能导致无法掌控的混乱;

数据湖的维护成本更高,随着时间的推移,容易产生严重的数据孤岛问题

数据的存储与计算成本更高,因为很多特定的场景无法使用廉价的Hadoop体系

数据的相互验证成本更高,因为缺少了结构化的数据处理,不同的分析师容易产出完全相反的结论

安全性与数据质量更难掌控,因为架构之间存在比较大的割裂性,每种架构需要不同的实现方案。

使用数据湖的收益点在于:

提供更加高级的分析能力,完全摆脱数据仓库对于数据使用的种种限制

提供更加灵活的适应场景,比如实时

允许开发更加快速的适应业务变化,降低数据仓库架构变动带来的迁移成本

适应更多的数据源类型,一些线下Excel数据也具备了联动的能力

数据的访问与使用更加灵活,对于一些业务快速发展的单元,时间成本尤其重要

上一篇下一篇

猜你喜欢

热点阅读