分享

大数据计算:基本概念、研究问题和部分解”

 湘楚狂士 2015-02-23

大数据学院式研究和工业界会有不同。以下将主要从三方面来分享我们对大数据的研究:

第一,大数据的基本概念;

第二,大数据计算机其挑战;

第三,研究问题与部分解。


“新旧”大数据的区别

对于大数据,前面有很多的报告在说。但在描述方面,大是相对的,是相对目前系统计算能力来说的,今天的大数据明天也许就不是大数据,从这个层面看,大数据存在已久。有一个会议叫SSDB,1983年创建的一个会议,这里面的论文就是在研究大数据,这个会议到现在已经有29年的历史了,但是那个时候大数据显然还没有那么普遍,涉及的领域很少,参加这方面研究的人也很有限,跟现在不同。现在的大数据和当时研究的不同主要有两点。

第一,大数据达到了无处不在的程度。互联网有很多的大数据,在科学研究领域、医疗领域、商业领域、制造业、智慧城市都有大量的数据。全世界的感知数据增长率是每年58%,全世界拥有的存储能力或者是存储总量的增长率是每年40%。2007年是一个里程碑,到2007年全世界的感知数据已经超过了全世界所拥有的存储器的容量。2010年,全世界的感知数据是1.25千万PB,2011年产生的感知数据已经二倍于我们人类所拥有的存储器的容量。所以,我们可以得到这样的结论,大数据几乎无处不在,数据量远远超出了现有的存储能力。

第二,大数据计算及其挑战。大数据通常讲的时候总是讲查询、挖掘、分析,实际上已经远远地超出了这个范围。大数据是一个多学科大范围的研究领域,涉及到很多的学科。比如说在生物学、宇航学等各种领域里面都有它非常复杂的大数据的计算问题,但大家没有考虑到。大数据计算问题的空间有多大?可以把在大数据方面的活动区分成五个方面,大数据的获取、传输、存储、质量管理、支持求解等方面。所有的五个阶段里面的问题集中起来,称之为大数据计算问题的空间。

研究大数据空间的四大挑战

我们把求解这个空间里面的每一个问题的过程叫做大数据计算。对每个问题要研究什么呢?要研究它的可计算性、计算复杂性和求解算法。现在我们面临的挑战是四个方面。

  • 如何把现有的计算理论、现有的算法、设计方法和现有的计算系统扩展开来。

  • usability的问题。如果大数据里面充满了错误,我们计算在好也不会得出正确的结论。

  • privacy的问题,如何在最大化确保privacy。

  • 交叉学科的问题,如何实现多学科交叉,面临和解决大数据的领域问题,各个学科里面的大数据由于专业不同又没有能力处理这样大的数据,如何把多个学科交叉起来,然后来解决问题。

这四个挑战实际上大对计算的影响力是非常大的。我们在中型计算机上和64个节点的集群上做了两组实验,用了1T到10T的数据,就在数据库里面的算法和数据库里面的算法进行了计算,而结果极具代表性。大数据提出了很多的挑战,但是显然现有的方法和技术已经不能有效的支持大数据计算了。

大数据的研究问题

现在考虑两个基础方面的、共性的研究问题。

第一个问题是大数据的计算复杂性问题。大数据的计算复杂性测度,除了时间复杂性以外还要考虑能量复杂性。云计算出来之后或者是集群技术出来之后,能量测度复杂性非常高,我们学校集群的电费就是1000多万,所以能量的问题我们不得不考虑。这样,就要在这两个测度下来考虑。时间复杂性的问题上要充分考虑问题的复杂性分类。传统的复杂性理论是把问题分成P类和NP类。现在在P类问题里,数据量输入非常大的时候,N方算法就已经不合适了。甚至N算法都不合适了。在传统的理论里,我们认为多项式算法是可以接受的。

第二是数据难解问题的判断性问题,这通常是用了一个归结的方法。假定线性和亚线性是我们能容忍的算法,现在考虑用这样的办法来判定一个问题是不是难解的,如果做起来很困难,那么这条路走不通就需要探索新的路。

很多难解的问题怎么办?需要做算法,每个问题的复杂性我们需要有预估,并进行判定是不是有线性或者是亚线性的算法,是不是可近似性的。

对能量复杂性来说,我们首先要研究能量复杂性的模型,看看能量是怎么消耗的,然后研究和时间复杂性相似的问题,这是最基本的基础理论问题,现在我们正在做这方面的工作。另外一个问题是大数据的计算的算法设计的新方法,则需要有新的思维,不然的话是很难取得突破性的进展的。现在各个企业和厂家都在宣布在做工具。但试想一下如果一个大数据问题算法非常复杂难以实现,那只能从算法上改进。

现在多项式算法如果指数太多的话,是平方级以上对P数量级或者是E数量级的数据就不可能计算了,所以现在要有新的理念,要追求线性和亚线性计算的算法,这里面是n、logn、loglogn的算法了。排序问题有没有这样的算法?对基于比较的排序来说,nlogn也是没有算法的,但像基数排序的不依赖于比较的是有线性算法的,让它具有更一般性适合大数据的处理有很多的问题,很多的问题如果不具有线性和亚线性算法的时候,就要考虑设计的新方法了。但有几个问题需要考虑,一个是数据压缩方法,一个是无解压的计算问题,还有增量式大数据计算方法。

很多的数据库是动态变化的,还有一些数据像传感器网络的数据、流数据都是在不断地增加和变化的。现在就考虑有两种增量方法,一个是有大数据D,先把数据D小部分算完了,之后再加上(e,β),我的计算和原始的没有关系,只和(e,β)有关。这个大数据的计算问题就变成了小数据的计算问题。还有一些流数据的增量式的算法就有意义了,总是要保证后面增量的计算和前面没有关系,我就把大数据的计算问题变成了小数据的计算问题,这里面有一些方法,这些文章很好找。

而我们现在正在试的方法是主数据分析的方法。大数据的一个特点是价值很大可是价值密度很低。现在把有价值的数据叫做主数据,现在有两种主数据,一般是绝对主数据,这个数据相对这个领域的有价值数据是什么?需要把它找到。另外一个是相对主数据,这对计算来说是有用的,现在正在做工作,明年年初会出来结果。

六方面关键技术研究

下面简单介绍六个方面的关键技术研究。

第一是大数据获取。首先是基于互联网的大数据获取的理论和方法,其次是基于传感网的大数据的获取的方法。因为大数据的数据已经达到了非常大的地步,所以涉及到新的数据获取的问题,传统的传感器的节点已经不灵了,还要研究信号处理的算法,还要研究物理世界信息准确的获取的方法。

第二是大数据的传输。第一是大数据的安全可靠传输的理论和算法;第二,大数据传输的调度和控制的问题;第三,在传输的过程中继续进行计算。现在我们希望数据中心既能存储数据又能支持大数据计算,算法也在那里。用户提交的是计算请求,计算完之后把结果传输给我,有一系列的研究会做说明。

第三是大数据可用性的研究理论和技术。目前的大数据的基础设施基本上都是考虑关注量的管理忽略了质的管理。所以造成了很大的问题,数据质量问题已经严重地危害到了国际信息社会,有很多这样的例子。所以,今年正在做的973项目就是在解决这个问题,把数据的可用性定义为数据一致性等五个指标在信息系统中被满足的程度。要研究的三个关键科学问题是量质融合管理、劣质容忍原理、深度演化机理。研究的是如何既管量又管质。之后要考虑知识,在弱可用信息上如何解决知识的获取、知识的推理问题,这个项目大概有这么五个课题还有一个应用课题。这样来解决一系列的问题。

第四是共性方面的问题。在结构化和半结构化大型数据的理论和算法中有一些不是大数据算法。这些算法怎么样能够把它提升到解决大数据问题上,涉及到需要新的算法,TB级以上的数据如何做等。此外,图数据安装,图数据是复杂的数据,现在Facebook也好归根到底都是图的问题。需要研究的是大型图数据的计算的理论和算法,包括确定图和不确定图。

第五是非结构化的大数据的计算的理论和算法。需要面向应用的大数据求解,在生物信息领域、天文学领域等计算,这些计算计算机科学家必须和那个领域的专家结合起来,才能把它解决出来。

第六是Privacy的问题,它有可能成为大数据计算的很大的障碍。因为矛盾非常大,所以需要解决。

关于云和大数据的三个困惑


目前,我有三个困惑的问题:第一是大数据的硬件平台,云计算是大数据计算的最好平台吗?它有两个极限,一个是通讯瓶颈问题,一个是能量消耗问题,这两个问题是非常严重的。云计算不是科学技术模式而是一个商业模式,本质上就是一个集群,它的两个局限性使我们真的做一些复杂问题处理的时候会发现做那样的并行算法几乎是不可能的。所以是不是需要考虑突破云计算束缚的、适合大数据计算的新型的计算系统。

第二个是否需要新的程序设备模型?因为很多的问题并不是能用MapReduce做迭代可以完成的,很多的问题需要更加适合的模型,所以是否要新的软件开发工具?比如说在集群上设计一个并行算法的时候,一个调试工具都没有,其他的工具呢?就更少了,我们是不是需要?

第三,我们是不是需要新的软件设计方法学,在云计算环境下,软件设计和迁移的方法一样吗?还会不会有其他的问题?


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多