打字猴:1.700432045e+09
1700432045 驾驭大数据 [:1700430561]
1700432046 第4章分析可扩展性的演进
1700432047
1700432048 不言而喻,大数据的世界需要更高层次的可扩展性。随着公司处理的数据量持续增长,原有的数据处理方法已经无法应对现有的数据量。那些没有更新技术以提供更高层次的可扩展性的企业,将无法应对大数据带来的数据处理压力。幸运的是,在大数据处理、分析与应用的不同层面中,有很多技术可供使用。其中有些技术还非常新,而大数据领域的公司也需要与时俱进。
1700432049
1700432050 这一章会讨论能够帮助我们驾驭大数据的几种重要技术:分析与数据环境的关联性、海量并行处理架构(Massively Parallel Processing,MPP)、云计算、网格计算以及MapReduce。
1700432051
1700432052 开始讲述具体内容以前,请记住本书的定位并不是一本技术书籍。这一章,以及随后的第5章与第6章,将会是技术性内容最多的章节,但是所有的技术内容都将局限在概念层面,以确保技术背景不深的读者也可以轻松地理解。为了达到这个目标,本书对某些技术细节进行了一定程度的简化处理。如果读者想了解更多的技术细节,可以阅读专注于技术本身的其他书籍。
1700432053
1700432054 驾驭大数据 [:1700430562]
1700432055 4.1 分析可扩展性的历史
1700432056
1700432057 在20世纪初期,进行数据分析是一件非常非常困难的事情。如果要进行某些深入分析,例如,建立预测模型,则需要完全依靠人们手工进行各种统计运算。举个例子,为了构建一个线性回归模型,人们不得不手工计算矩阵并进行矩阵的转置运算,连矩阵参数估计的计算也需要手工进行。当时人们已经拥有了一些基础的计算辅助工具,但绝大部分计算过程还是需要依靠手工来完成。在那个时代,获得分析所需的数据是很困难的事情,但是使用这些数据更加困难。那个时代人们几乎没有任何形式的可扩展分析能力。
1700432058
1700432059 计算尺的出现让情况稍有好转,20世纪70年代出现的计算器使更大数据量的计算变得更容易了一些,但是那个时候的计算器可以处理的数据规模仍然十分有限。20世纪80年代进入主流市场的计算机,真正地把人们从繁琐的手工计算中彻底解脱了出来。然而,20世纪80年代之前出现的计算机只有极少数人可以接触到,而且这些计算机都极为昂贵,操作也相当困难。
1700432060
1700432061 几十年过去了,现在人们处理的数据已经远远超过了手工处理时代的数据规模。随着数据规模的快速增长,计算机处理数据的能力也在不断增强,人们已经不再需要进行手工计算了,但海量数据仍然给计算机与数据存储带来了巨大的挑战。
1700432062
1700432063 随着数据处理与分析技术的飞速发展,人们可以处理的数据规模也变得越来越大得“可怕”。十几年前,只有超大型企业或某些预算充足的政府部门才可以处理TB量级的数据。在2000年,只有那些最领先的公司才拥有TB量级的数据库,而今天只需要100美元就可以为你的个人计算机买一个1TB的硬盘。到了2012年,很多小型企业内部数据库的数据规模都超过了1TB,某些领先公司的数据库已经达到了PB量级的规模。仅仅过了十来年,数据规模就至少扩大了1000倍!
1700432064
1700432065 此外,随着新的大数据源的出现,数据规模将达到一个新的量级。有些大数据的数据源在仅仅几天或几周,甚至是几个小时内,就可以生成TB或PB量级的数据,数据处理的极限又将面临一次新的挑战。历史上人们驾驭了那些当时看起来很“可怕”的数据,随着时间的推移,这次大数据带来的海量数据也终将被再次驾驭。
1700432066
1700432067 在这个时代,一个刚走进大学的一年级新生,他的计算机可能就拥有好几个PB的数据,他会在一些存储了Exabyte甚至是Zettabyte数据的系统上工作,他们希望这个系统能在几秒或者几分钟内给出计算结果,而不是几小时或几天。表4-1列出了目前人们使用的数据规模计量单位,以及随着数据规模扩大而新出现的计量单位。在历史上,第一个探索并成功突破数据极限的人获得了丰厚的回报,未来也一定会这样。
1700432068
1700432069 表4-1 数据规模的衡量单位
1700432070
1700432071
1700432072
1700432073
1700432074 1 评论基于这个网站的信息:http://whatsabyte.com。
1700432075
1700432076 驾驭大数据 [:1700430563]
1700432077 4.2 分析与数据环境的关联性
1700432078
1700432079 在过去,分析专家在进行分析时把所需的所有数据导入一个独立的分析环境中,这常常是不可避免的。分析专家需要的数据大都不在一个地方,而分析专家使用的分析工具通常也无法直接对这些数据集进行分析,唯一可行的选择就是把数据汇集到一个独立的分析环境中,然后再进行各种分析。分析专家最常做的工作是各种高级分析,包括数据挖掘、预测模型和其他的一些复杂技术,我们会在第7章讨论这些内容。
1700432080
1700432081 数据分析师早期做的事情与数据仓库有着有趣的相似性。当人们仔细思考数据分析与数据仓库,常常会惊讶于这两者竟然如此相似。分析师一直在处理各种不同的数据集,这些分析师定义的数据集与数据库里的表并没有本质区别。与数据库里的表一样,分析数据集也有行和列,每一行数据通常代表了某一实体,如一个客户,而不同列则是这个实体的各种信息,如客户名称、消费水平、当前状态等。
1700432082
1700432083 分析师一直在把不同数据集“整合”在一起进行分析。猜猜看?数据库里也有一个完全一样的操作,即库内数据表的“连接”。“整合”与“连接”都需要把两个或者更多的数据集或库内数据表进行关联,即把某个数据集或表的某些行数据与另一个数据集或表的某些行数据连接在一起。例如,某一个数据集或表里有客户的人口统计类信息,另外一个数据集或表里有客户的消费支出,把这两个数据集或表关联起来,我们将同时获得每个客户的人口统计与消费支出信息。
1700432084
1700432085 另外,分析师还经常做一项叫做“数据准备”的工作。在这项工作中,分析师抽取不同数据源的数据,把这些数据汇集在一起,然后建立分析所需的各种变量。在数据仓库中,我们把这个过程叫做“提取(Extract),转换(Transform)和加载(Load)”,简称为ETL过程。从本质上讲,在数据集市和数据仓库还没有被发明前,分析师们就一直在开发个性化的数据集市或数据仓库了!区别在于,分析师是根据自己的使用需要为不同项目进行开发,而数据集市和数据仓库通常遵循一个标准化的开发过程,并开放给很多人使用。
1700432086
1700432087 20年以前,大多数分析师都在主机系统上进行分析。主机系统里的数据都存储在类似大圆盘的磁带库上。为了让自己的工作能在截止日期前顺利完成,我还记得曾经给主机系统的管理员打电话,请求他们早点加载我的磁带库数据。随着时代的变迁,一个重大的变革出现了,那就是关系型数据库。
1700432088
1700432089 关系型数据库管理系统(Relational Database Management System,RDBMS)很快就流行了起来,并且显著增强了数据扩展性和适应性。关系型数据库已经成为了管理数据的事实标准,使用大型主机进行分析在今天已经极为罕见。因此,现在绝大部分用于分析的数据都存储于关系型数据库内。关系型数据库无处不在,但也存在例外情况,如基于MapReduce技术的非结构化数据处理平台。我们将在随后“MapReduce”这一节进行详细阐述。
1700432090
1700432091 集中化的力量
1700432092
1700432093 集中化的企业级数据仓库已经成为了一种趋势,而这种趋势给数据分析,特别是复杂的高级分析带来了巨大的影响。数据仓库把企业内的数据集中到一个地方,分析师们再也不用为了某一项分析把数据挪来挪去进行整合了,数据仓库里的数据已经被整合好了,分析师可以直接进行分析。这些技术开辟了一个新的分析世界,让分析具有了更大的可扩展性与更多的可能性。
1700432094
[ 上一页 ]  [ :1.700432045e+09 ]  [ 下一页 ]