第11章 大数据技术与实践

11.1 大数据概述

大数据一词由英文“ big data”翻译而来,是最近几年兴起的概念,目前还没有一个统的定义。相比于过去的“信息爆炸”的概念,它更强调数据量的“大”。大数据的“大”是相对而言的,是指所处理的数据规模巨大到无法通过目前主流数据库软件工具处理,在可以接受的时间内完成抓取、存储、管理和分析,并从中提取出人类可以理解的信息。“大”是与时俱进的,不能以具体的数据量来界定大数据与普通数据。随着人类大数据处理技术的不断进步,大数据的标准也不断提高。

11.2 大数据存储平台

11.2.1 HDFS

HDFS(全称Hadoop Distributed File System)原是Apache开源项目Nutch的组件,现在成为是Hadoop的重要组件,它是一款具有高容错性特点的分布式文件系统,它被设计为可以部署在造价低廉的主机集群上。它将一个大文件拆分成固定大小的小数据块,分别存储在集群的各个节点上。因此HDFS可以存储超大的数据集和单个巨大的文件。这样的分布式结构能够进行不同节点的并行读取,提高了系统的吞吐率。同一个数据块存储在不同的数据节点上,保证了HDFS在节点失败时还能继续提供服务,使其具有了容错性。

11.2.2 HBase

Apache HBase是运行于Hadoop平台上的数据库,它是可扩展的、分布式的大数据储存系统。HBase可以对大数据进行随机而实时的读取和写入操作。它的目标是在普通的机器集群中处理巨大的数据表,数据表的行数和列数都可以达到百万级别。受到Google Bigtable 思想启发,Apache开发出HBase, HBase是一个开源的、分布式的、数据多版本储存的、面向列的大数据储存平台。Google的Bigtable是运行于GFS(Google File System)上的,而HBase是运行与Apache开发的Hadoop平台上。

11.2.3 Cassandra

Cassandra是一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被Digg、Twitter等知名Web 2.0网站所采纳,成为了一种流行的分布式结构化数据存储方案。

11.2.4 Redis

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

11.2.5 MongoDB

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

11.3 大数据计算模式

11.3.1 PRAM

PRAM(Parallel Random Access Machine)模型是多指令流多数据流(MIMD)并行机中的一种具有共享存储的模型。它假设有一个无限大容量的共享存储器,并且有多个功能相同的处理器,在任意时刻处理器可以访问共享存储单元。根据是否可以同时读写,它又分为以下三类:PRAM-EREW,PRAM-CREW,PRAM-CRCW(其中C代表Concurrent,意为允许并发操作,E-代表Exclusive,意味排斥并发操作)。在PRAM中有一个同步时钟,所有的操作都是同步进行的。

11.3.2 BSP

板级支持包(BSP)(Board Support Package)是介于主板硬件和操作系统中驱动层程序之间的一层,一般认为它属于操作系统一部分,主要是实现对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好的运行于硬件主板。在嵌入式系统软件的组成中,就有BSP。BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例如VxWorks的BSP和Linux的BSP相对于某一CPU来说尽管实现的功能一样,可是写法和接口定义是完全不同的,所以写BSP一定要按照该系统BSP的定义形式来写(BSP的编程过程大多数是在某一个成型的BSP模板上进行修改)。这样才能与上层OS保持正确的接口,良好的支持上层OS。

11.3.3 LogP

作为大规模并行机上的并行计算模型,LogP模型算法为我们提供了独立于具体系统的算法设计依据。它可以精确地调度通信与计算。

11.3.4 MapReduce

MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)“和"Reduce(归约)”,是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。

11.3.5 Spark

Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。

11.4 大数据分析处理平台

11.4.1 Impala平台

Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。已有的Hive系统虽然也提供了SQL语义,但由于Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以满足查询的交互性。相比之下,Impala的最大特点也是最大卖点就是它的快速。

11.4.2 HadoopDB平台

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算

11.7 大数据研究与发展方向

全球范围内,研究发展大数据技术、运用大数据推动经济发展、完善社会治理、提升政府服务和监管能力正成为趋势。下面将从应用、治理和技术三个方面对当前大数据的现状与趋势进行梳理。
已有众多成功的大数据应用,但就其效果和深度而言,当前大数据应用尚处于初级阶段,根据大数据分析预测未来、指导实践的深层次应用将成为发展重点。
按照数据开发应用深入程度的不同,可将众多的大数据应用分为三个层次。第一层,描述性分析应用,是指从大数据中总结、抽取相关的信息和知识,帮助人们分析发生了什么,并呈现事物的发展历程。如美国的DOMO公司从其企业客户的各个信息系统中抽取、整合数据,再以统计图表等可视化形式,将数据蕴含的信息推送给不同岗位的业务人员和管理者,帮助其更好地了解企业现状,进而做出判断和决策。第二层,预测性分析应用,是指从大数据中分析事物之间的关联关系、发展模式等,并据此对事物发展的趋势进行预测。如微软公司纽约研究院研究员DavidRothschild通过收集和分析赌博市场、好莱坞证券交易所、社交媒体用户发布的帖子等大量公开数据,建立预测模型,对多届奥斯卡奖项的归属进行预测。2014和2015年,均准确预测了奥斯卡共24个奖项中的21个,准确率达87.5%。第三层,指导性分析应用,是指在前两个层次的基础上,分析不同决策将导致的后果,并对决策进行指导和优化。如无人驾驶汽车分析高精度地图数据和海量的激光雷达、摄像头等传感器的实时感知数据,对车辆不同驾驶行为的后果进行预判,并据此指导车辆的自动驾驶。

第11章 大数据技术与实践相关推荐

  1. 第十一章·大数据技术与实践

    11.1大数据概述 11.1.1大数据产生的背景 家阿尔文,托夫勒便在<第三次浪潮>一书中, 将大数据比作 第三次浪潮的华彩乐章". 在传统数据处理过程中,单个计算机的性能往往很 ...

  2. 第二章大数据技术概述

    大数据技术的产生 海量数据的产生: 来自大人群互联网 来自大量传感器机械 科学研究及行业多结构专业数据 大数据的基本概念 大数据的定义:无法在一定时间内用常规软件工具对其内容进行抓捕.管理和处理的数据 ...

  3. 第二章 大数据技术概述

    大数据基本概念 数据是各种符号如字符.数字等.声音.图片动画.视频多媒体,数据也是原始事实.要保证其原始性和真实性,后期加工才有意义.信息是人们为了某种需求而对原始数据加工重组后形成的有意义.有用途的 ...

  4. AI和大数据技术应用实践峰会:再谈数据破圈,智能化指引能否少走弯路?(11-25,北京)...

    文末有福利!! 常言道,人生自古谁无死,提取数据炼真金.但是,炼金过程却并不容易,从采集.提取.清洗.分析.安全和管理,一路荆棘:问天下产品研发.市场运营,谁人不曾舍身为数据,谁又不曾被数据折磨到白头 ...

  5. 云计算与大数据技术应用前四章知识点整理

    第一章云计算概论 1.1什么是云计算 1.1.1云计算的定义: 定义:指按需使用IT资源和应用程序,通过互联网.按使用量付费. 像水电煤(资源性产品)一样利用你的IT资源,计算存储网络资源. 有三个关 ...

  6. 大数据领域必读经典:大数据技术与应用实践指南终于更新第二版了

    前言 大数据是互联网.移动应用,社交网络和物联网等技术发展的必然趋势,大数据应用成为当前最为热门的信息技术应用领域. 随着新一代信息技术的发展和应用,尤其是互联网.物联网.移动互联网.社交网络等技术的 ...

  7. 大数据技术与实践学习笔记(1 of 3,from hitwh)

    大数据技术与实践 注意!由于文章图片是通过typora一键上传图片实现,该功能还存在bug,容易导致图片顺序混乱,文章开头提供了原版文章的 pdf 资源下载,推荐下载 pdf 后观看 文章目录 大数据 ...

  8. 大数据技术与实践学习笔记(3 of 3,from hitwh)

    大数据技术与实践 注意!由于文章图片是通过typora一键上传图片实现,该功能还存在bug,容易导致图片顺序混乱,文章(1 of 3)开头提供了原版文章的 pdf 资源下载,推荐下载 pdf 后观看, ...

  9. 大数据技术应用有哪些特点

    大数据时代,数据的应用已经渗透到各行各业,但是传统的数据挖掘和分析已经不能满足行业发展的需求,大数据技术为企业业务分析和行业发展带来了新的思维角度,将会充分激发数据对社会发展的影响和推动. 大数据技术 ...

最新文章

  1. Python 开发者节省时间的 10 个小技巧
  2. (笔记)Mysql命令select from:查询表中的数据(记录)
  3. python怎么检查错误-错误处理
  4. 深入理解Java虚拟机(一):Java内存模型
  5. python帮助生活-想把python运用在实际生活中?那么python查询价格方法可以帮助你...
  6. VS配置本地IIS以域名访问
  7. imagePreview接口调用微信自带图片播放器
  8. 选择排序 冒泡排序 二分查找
  9. LeetCode:面试题40. 最小的k个数
  10. jvm相关參数,调优
  11. 学php应该怎么学习数学,数学是怎样学好的 零基础怎么自学数学
  12. 【英语学习】【Level 08】U05 Better option L2 Online shopping
  13. Python 偏函数
  14. 20145339顿珠 MS08_067漏洞测试
  15. Latex安装教程 —— textlive+textstudio+基础环境配置
  16. java过滤器Filter
  17. 高德地图 html5,高德地图API发布HTML5矢量地图渲染引擎[图]
  18. 基于SSM医院预约管理系统
  19. 微信邮箱是什么?微信邮箱怎么注册申请,微信邮箱怎么登陆?
  20. python如何计算字典平均值_算出字典中数值的平均值

热门文章

  1. 学校计算机室教师寄语,计算机与信息学院师生寄语2019届毕业生
  2. 【妄言之言】西南游记
  3. Windows XP 搭建PPPoE服务器_计算机软件及应用_IT/计算机_专业资料
  4. Eclipse工作空间配置导出/复制
  5. 【微信电子画册制作】名编辑电子杂志大师教程 | 给电子杂志设置背景图片
  6. MYSQL选修课的心得体会_选修课学习心得体会范文7篇_大学选修课心得体会
  7. Windows 10 设置不用Microsoft账户登录,将Administrator与Microsoft账户解绑,注销Microsoft账户
  8. 使用URLRewriter进行URL重写失效
  9. 上海移动通信企业短信通平台接口协议
  10. php模板注入漏洞,74CMS前台模板引擎注入漏洞漏洞复现