如果您检查数据湖和大数据之间是否存在真正的区别,我试图理解所有这些信息,就像您检查两个概念都像一个大存储库一样,它会保存信息直到有必要,所以,何时可以说我们正在使用大数据还是数据湖?
提前致谢
最佳答案
我不能说我曾经遇到过“大存储库”一词,但是要回答最初的问题,不,数据湖和大数据并不相同,尽管公平地说,它们都被大量引用并且定义了视您的要求而定,但我会尝试一下:
大数据
用于描述围绕某种程度上太大或太复杂而无法通过传统方式方便地存储和/或处理的数据的技术生态系统,以及在某种程度上涉及处理该行业的技术。
有时,这可能是纯粹的数据量问题:一旦进入100 TB或PB级,老式的RDBMS数据库就容易被丢弃,我们被迫将数据分布在许多磁盘上,而不仅仅是一个磁盘大一个。在这些情况下,我们将希望并行化工作负载,从而实现诸如MPP数据库,Hadoop生态系统和基于DAG的处理等功能。
但是,仅凭数量并不能说明全部。大数据的流行定义是所谓的“ 4 Vs”:体积,种类,速度和准确性。简而言之:
卷-如上所述,是指由数据大小引起的困难
多样性-指处理不同类型数据的内在复杂性;您的某些数据将是结构化的(例如SQL数据表),而其他数据可能是半结构化的(XML文档)或非结构化的(原始图像文件),并且处理这种多样性的技术是不平凡的
速度-指可以生成新数据的速度;当收集诸如IoT数据,Web流量,财务交易,数据库更改或实时发生的任何其他事情的实时事件时,数据的“速度”流入(在许多情况下是)系统中,可以轻松超越传统数据库技术的功能,从而需要某种可伸缩的消息总线(Kafka)以及可能的复杂事件处理框架(例如Spark Streaming或Apache Flink)
准确性-最后的“ V”是指处理数据的复杂性,这些数据通常来自您控制之外的来源,并且可能包含无效,错误,恶意,格式错误或以上所有内容的数据。这增加了对数据验证,数据质量检查,数据规范化等的需求。
在此定义中,“大数据”是由于4 V相关的特殊挑战而不适用于传统数据库技术的数据。而“大数据工具”是专门为应对这些挑战而设计的工具。
数据湖
相反,Data Lake通常用作描述某种类型的文件或Blob存储层的术语,该层允许按大数据体系结构的需要存储几乎无限量的结构化和非结构化数据。
一些公司将使用“数据湖”一词来指不仅是存储层,还包括所有相关工具,从获取,ETL,争用,机器学习,分析,一直到数据仓库堆栈,甚至可能还有BI和可视化工具。 。但是,作为一个大数据架构师,我发现使用术语混淆,宁愿将数据湖及其周围的工具作为具有独立功能和职责的独立组件来讨论。因此,Data Lake的职责是成为您可能希望静态存储的任何类型数据的中央,高耐用性存储。
大多数人认为,“数据湖”一词是Pentaho的创始人兼首席技术官James Dixon提出的,他对此进行了描述:
“如果您将数据集市视为瓶装水的存储(经过清洗,包装和构造以便于使用),则数据湖是处于更自然状态的大量水体。数据湖的内容从源头流入整个湖,湖的各种用户可以来检查,潜水或取样。”
Amazon Web Services在其页面'What Is A Data Lake'上对其进行了定义:
数据湖是一个集中式存储库,可让您以任何规模存储所有结构化和非结构化数据。您可以按原样存储数据,而无需先构建数据结构并运行不同类型的分析-从仪表板和可视化到大数据处理,实时分析和机器学习,以指导更好的决策。
从Wikipedia:
数据湖是以自然格式存储的系统或数据存储库,通常是对象blob或文件。数据湖通常是所有企业数据的单个存储,包括源系统数据的原始副本和用于报告,可视化,分析和机器学习等任务的转换数据。
最后是Gartner:
数据湖是除原始数据源之外的各种数据资产的存储实例的集合。这些资产存储在源格式的近似精确甚至精确的副本中。数据湖的目的是仅向最熟练的分析师提供未精炼的数据视图,以帮助他们探索其数据提炼和分析技术,而不受传统分析中可能存在的任何记录系统的损害数据存储(例如数据集市或数据仓库)。
在本地群集上,尽管存在其他文件系统,例如Google所使用的GFS或MapR群集上的MapR File System,但数据湖通常是指群集中分布式文件系统(通常为HDFS)中群集上的主存储。
在云中,数据湖通常不存储在群集中,因为保持群集始终运行并不划算,而是在持久性云存储(例如Amazon S3,Azure ADLS或Google Cloud Storage)上保持成本效益。然后可以按需启动计算集群,并将其无缝连接到云存储以运行转换,机器学习,分析作业等。
希望对您有所帮助,并祝您一切顺利,