专栏首页Apache IoTDB大数据与大数据计算

大数据与大数据计算

今天听了一场报告会,是清华计算机系60周年系列讲座之一,主讲人是哈工大软院院长李建中教授,主题《计算和数据资源受限的大数据计算的复杂性理论与高效算法研究》,李老师介绍的大数据计算理论体系很完善,由于只有一个小时,很多只能稍微提及,但是还是有很多观点让我受益匪浅,分享一下。

本文预计阅读时间 5 分钟。

什么是大数据?

wiki定义:Big data is data sets that are so big and complex that traditional data-processing application software are inadequate to deal with them.

首先大数据指的是数据集,是纯粹的数据。其次,由于复杂与庞大,传统的数据处理软件无法处理。这样的数据集就可以叫大数据。

这个定义其实很模糊,什么叫传统的数据处理软件无法处理的?也没规定硬件。那超级计算机能处理的算不算?普通的CPU、内存,后面接一个存储柜装个几百 T 数据算不算大数据呢?

因此,个人感觉,应该是普通PC机的配置,256内存,12T硬盘,用传统的数据库Oracle,MySQL不好用了,感觉单机撑不下了,或者单表数据量几百万以上性能急剧下降无法满足要求了。这时候就叫传统的搞不定了,需要考虑大数据解决方案了。

大数据计算问题

输入:大数据 D,问题 P 的参数 输出:问题 P 的解 P(D)

这里重点是输入一个大数据。有一个很容易混淆的场景是拥有的数据量很大,TB、PB级,但是每次用来计算的只有几十或几百MB,这个输入就不能称为大数据,因此这种问题就不是大数据计算问题。

你面临的问题不是大数据计算问题有什么问题吗?没什么问题,如果真碰到了大数据计算问题就麻烦了。

由此也给出大数据计算的定义:

大数据计算:求解大数据计算问题的过程。

大数据计算的挑战

报告的前提是“计算和数据资源受限”,为什么这个很重要呢?因为一般情况下这是搞大数据的都会面临的实际问题,如果一个人说他的大数据场景没这种问题,很有可能他的数据不够大。下面看看受限的两个方面:

1、计算资源的强受限性

先不说最简单的计算,只说遍历一遍数据。

大数据一般指 TB、PB、EB、ZB、YB 级别的数据。以机械硬盘和 SSD 的 IO 速率来考虑。1TB的数据遍历一遍(顺序读取),机械硬盘1G/s,需要17分钟,SSD算5G/s,需要3分钟。

一个精确的算法至少需要将所有数据遍历一遍。因此这个时间可以认为是处理大数据的最少时间,那么 1PB 数据用 SSD 遍历就需要 2 天多,而且 1PB 的SSD 成本相当大,估计没有人这么搞。数据量再大还得继续乘 1024。

多项式时间不再是大数据计算问题易解性的判别标准。对于PB、EB需要至少亚多项式,对于ZB、YB至少需要polylog多项式时间才算易解。

2、数据资源弱可用性

这个特性主要说的是数据质量差。理想中数据应该是整整齐齐的,但是实际上数据很多都会有错误,大概有10%左右的错误数据。人工记录的数据就可能由于脑子进水记错了。数据错误会造成很大经济损失。

既然数据有错的,那么能不能修正呢?修复的复杂度是n^3数量级的,很难修复。因此,修复后的数据也不会100%正确。这个叫弱可用性数据,如何在弱可用性数据上进行计算,使结果的误差满足要求,是另一个重要的研究方向。

一些计算方法

1、小数据近似大数据

所谓大事化小,小事化了。需要发现大数据的内在规律,才能将问题简化,这个就跟具体问题十分相关了,没啥通用方法。类似把123*234*345*0化简为1*0。

2、增量计算方法

将需要计算的数据分成很多小份,一份一份算。不过这个需要计算具有可加性。比如给 1 万个数求和,先分 10 份,每份 1 千个数求和,再给 10 个和求和。

3、直接处理压缩数据

将 100T 数据压缩为1G,在1G数据上直接设计算法就会容易很多。但是如果要达到在 100T 上数据计算的效果,需要压缩方法具有映射完整性,也就是100T数据能完全对应到 1G 上,1G 数据也能完全恢复为 100T 数据。举个例子:1,1,1,1,1,压缩为5,1。

大数据系统

这部分回到我们经常听到的 Hadoop,MapReduce,Spark了。这些是大数据计算框架,但是只有这个是不够的,在面对一个问题时主要需要解决的还是算法问题。

举个例子:大数据计算框架就像高级包工队,他们有盖1万层高楼的能力,这是传统包工队干不了的。但没有图纸是没法盖出楼来的。而图纸就是算法。

总结

大数据是指传统方法处理不了的数据集。大数据计算问题处理的是大数据。计算受限和数据受限是大数据计算中普遍存在的客观现象。这时对于一个大数据计算问题的复杂度分析就很重要,到底能不能计算,多长时间能计算出来,算出来的结果准不准,都需要理论支持。

本文分享自微信公众号 - IoTDB漫游指南(Apache-IoTDB),作者:铁头乔

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-08-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Druid :高性能、列式的分布式数据存储

    GIthub上有两个Druid。其中一个是阿里的数据库连接池,另一个是列式存储的分布式数据存储系统。我曾经一度认为是一个东西,本文介绍后一种Druid。

    Apache IoTDB
  • Apache IoTDB 系列教程-1:数据模型

    大家周末快乐!随着最近项目落地,0.10.0 即将发布,准备写一系列教程,今天第一篇,介绍 IoTDB 的数据模型和建模方式。

    Apache IoTDB
  • 列式存储的起源:DSM

    列式存储模型并不是最近十几年才有的,早在1985年就有人提出了类似的思想,即 Decomposition Storage Model(DSM)。 那么他把谁 d...

    Apache IoTDB
  • 数据科学中的“数据智慧”

    大数据文摘
  • ☞【观点】徐尽欢:我也说说大数据

    一:在Oracle做了六年数据库销售的我从5月份开始内部转到新成立的大数据部门,虽然还没有转完但是已经到新部门上了一个月的班了,如果我说我是Oracle 数据...

    小莹莹
  • 数据开放促进国家治理转型与变革

    大数据文摘
  • 译见:从无处看世界:大数据的文化意识形态

    “无论什么历史年代里,科学的走向取决于我们如何理解科学”—SandraHarding,《谁的科学?谁的知识?》(1991)

    华章科技
  • 国家、数据、治理:排列组合文字游戏下的思考(附PPT下载)

    韩亦舜:讲到国家数据治理,难点、痛点、特点,有几个方面:一是不想用数据;二是不会用数据;三是不愿用数据;四是不敢用数据;五是不善用数据。 1月26日,清华大学数...

    数据派THU
  • 张涵诚:你如何成为优秀的数据经纪人

    数据猿导读 一个数据经纪人没有很深的行业知识和数据价值的理解能力,注定不会成为一个优秀的数据经纪人。今天我们就来来交流一下:“你如何成为优秀的数据经纪人”,如何...

    数据猿
  • 大数据基本概念

    大数据概念想必大家都不陌生,毕竟是近年来最热门的话题之一。在计算机以及互联网如此普及的今天,我们所有人每天都会在互联网上产生大量的数据,例如在淘宝浏览商品时会产...

    端碗吹水

扫码关注云+社区

领取腾讯云代金券