大数据有多大?

数据挖掘 大数据 可扩展性 效率 表现
2021-10-11 19:41:55

很多人以一种相当商业化的方式使用大数据这个术语,作为一种表示计算涉及到大型数据集的手段,因此潜在的解决方案必须具有良好的性能。当然,大数据总是带有相关的术语,比如可扩展性和效率,但究竟什么是大数据问题?

计算是否必须与某些特定目的相关,例如数据挖掘/信息检索,或者如果数据集足够大,一般图形问题的算法是否可以标记为大数据另外,多大才足够大(如果可以定义的话)?

4个回答

对我来说(来自关系数据库背景),“大数据”主要不是关于数据大小(这是迄今为止其他答案的大部分内容)。

“大数据”和“坏数据”密切相关。关系数据库需要“原始数据”。如果数据在数据库中,则它是准确、干净且 100% 可靠的。关系数据库需要“大数据”,并且投入大量时间、金钱和责任,以确保在将数据加载到数据库之前做好充分准备。如果数据在数据库中,那就是“福音”,它定义了系统对现实的理解。

“大数据”从另一个方向解决了这个问题。数据定义不明确,其中大部分可能不准确,并且实际上可能丢失了许多数据。数据的结构和布局是线性的,而不是关系的。

大数据必须有足够的容量,以使不良数据或丢失数据的数量在统计上变得微不足道。当您的数据中的错误足够普遍以相互抵消时,当丢失的数据按比例小到可以忽略不计时,并且当您的数据访问要求和算法即使在数据不完整和不准确的情况下也能正常工作时,那么您就有了“大数据” .

“大数据”实际上不是关于数量,而是关于数据的特征。

正如您正确指出的那样,如今“大数据”是每个人都想说他们拥有的东西,这意味着人们对这个术语的定义有一定的松散性。不过,一般来说,如果规模如此之大,使用 RDBMS 等更传统的技术管理不再可行,我会说你肯定在处理大数据,至少在没有用 Hadoop 等大数据技术补充它们的情况下。

您的数据实际上必须有多大才能成为这种情况是有争议的。这是一篇(有点挑衅性的)博客文章,声称少于 5 TB 的数据并非如此。(需要明确的是,它并没有声称“小于 5 TB 不是大数据”,而只是“小于 5 TB 还不足以让您需要 Hadoop”。)

但即使在较小的数据集上,像 Hadoop 这样的大数据技术也有其他优势,包括非常适合批处理操作、很好地处理非结构化数据(以及结构事先不知道或可能改变的数据)、水平可扩展性(通过添加更多节点而不是增强现有服务器来扩展),以及(作为上述链接帖子注释的评论者之一)将数据处理与外部数据集集成的能力(想想映射器在哪里的 map-reduce呼叫另一台服务器)。其他与大数据相关的技术,如 NoSql 数据库,强调在处理大量数据时的快速性能和一致的可用性,以及处理半非结构化数据和水平扩展的能力。

当然,传统的 RDBMS 有其自身的优势,包括 ACID 保证(原子性、一致性、隔离性、持久性)和某些操作的更好性能,以及更标准化、更成熟和(对于许多用户而言)更熟悉。因此,即使对于无可争辩的“大”数据,将至少一部分数据加载到传统的 SQL 数据库中并将其与大数据技术结合使用也是有意义的。

所以,一个更宽泛的定义是你拥有大数据,只要它足够大,大数据技术可以为你提供一些附加值。但正如您所看到的,这不仅取决于数据的大小,还取决于您希望如何使用它以及您在灵活性、一致性和性能方面有什么样的要求。 你如何使用你的数据比你使用它目的更相关(例如数据挖掘)。也就是说,如果您有足够大的数据集可供使用,则数据挖掘和机器学习等用途更有可能产生有用的结果。

全球数据总量:2012 年 2.8 泽字节,预计到 2015 年达到 8 泽字节(来源),40 个月翻一番。不能比这更大:)

作为单个大型组织的示例,Facebook 每天将 500 TB 的数据放入 100 PB 的仓库中,截至 2012 年每天在其上运行 7 万次查询(来源)他们当前的仓库超过 300 PB。

大数据可能是 Facebook 数字的很大一部分(1/100 可能是,1/10000 可能不是:它是一个频谱而不是单个数字)。

除了尺寸之外,使其“大”的一些特征是:

  • 它被积极分析,而不仅仅是存储(引用“如果你没有利用大数据,那么你就没有大数据,你只有一堆数据”Jay Parikh @ Facebook)

  • 构建和运行数据仓库是一项重大的基础设施项目

  • 它正在以显着的速度增长

  • 它是非结构化的或结构不规则的

Gartner 定义:“大数据是需要新形式处理的大容量、高速和/或种类繁多的信息资产”(3Vs)因此他们也认为“大”并不完全与数据集的大小有关,而是还有关于速度和结构以及所需工具的种类。

对我来说,大数据主要是关于工具(毕竟,这就是它开始的地方);“大”数据集是太大而无法用传统工具处理的数据集——特别是大到需要在集群而不是单台机器上进行存储和处理。这排除了传统的 RDBMS,并需要新的处理技术;特别是,各种类似 Hadoop 的框架使得在集群上分布计算变得容易,但代价是限制了这种计算的形式。我将引用http://www.chrisstucchio.com/blog/2013/hadoop_hatred.html; 对于太大而无法以任何其他方式处理的数据集,大数据技术是最后的手段。我想说,任何用于任何目的的数据集只要足够大就可以符合条件——尽管如果问题的形式使得现有的“大数据”工具不合适,那么提出一个新的工具可能会更好名称。

当然有一些重叠;当我(短暂地)在 last.fm 工作时,我们使用 Hadoop 处理相同的 50TB 数据集,并且还在一个相当荒谬的服务器上的 SQL 数据库中工作(我记得它有 1TB RAM,这是几年前的事了)。这在某种意义上意味着它既是大数据又不是大数据,这取决于你从事的工作。但我认为这是一个准确的描述;从事 Hadoop 工作的人发现去大数据会议和网站很有用,而从事 SQL 工作的人却没有。