大数据基础及应用/大数据技术与应用专业规划教材

大数据基础及应用/大数据技术与应用专业规划教材 下载 mobi epub pdf 电子书 2024


简体网页||繁体网页
吕云翔,钟巧灵,衣志昊 著



点击这里下载
    


想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

发表于2024-12-23

类似图书 点击查看全场最低价

图书介绍

出版社: 清华大学出版社
ISBN:9787302466918
版次:1
商品编码:12168544
包装:平装
丛书名: 大数据技术与应用专业规划教材
开本:16开
出版时间:2017-03-01
用纸:胶版纸
页数:213
字数:311000


相关图书





图书描述

编辑推荐

  本书详细介绍了大数据的基本概念、原理与方法,以及通过大数据实践来讲述大数据技术的应用,包括如何运用阿里云大数据计算平台解决和分析实际的问题。本书*后还提供了大数据实践案例,完整地体现了理论与实践的有机结合。

内容简介

  本书从大数据的基本概念开始,由浅入深地领会大数据的精髓。本书除了讲述必要的大数据理论之外,还通过大数据实践来讲述大数据技术的应用,包括如何运用阿里云大数据计算平台分析和解决实际问题,很好地体现了大数据理论与实践的有机结合。
  本书分为三大部分,分别是大数据概述及基础、大数据处理和大数据分析与应用。其中,大数据概述及基础部分重点介绍数据组织、重要数据结构、大数据协同技术以及大数据存储技术等内容; 大数据处理部分重点介绍大数据处理框架,包括大数据批处理和流处理框架等内容; 大数据分析与应用部分重点介绍数据分析技术和机器学习的相关内容,以及如何利用阿里云的数加平台进行基本的大数据开发工作。
  本书既可以作为高等院校计算机科学、软件工程及相关专业“大数据”课程的教材,也可以供系统分析师、系统架构师、软件开发工程师和项目经理,以及其他准备或正在学习大数据技术的读者(包括参加计算机等级考试或相关专业自学考试的人员)阅读和参考。

内页插图

目录

第一部分大数据概述及基础
第1章大数据概念和发展背景
1.1什么是大数据
1.2大数据的特点
1.3大数据的发展
1.4大数据的应用
1.5习题
第2章大数据系统架构概述
2.1总体架构概述
2.1.1总体架构设计原则
2.1.2总体架构参考模型
2.2运行架构概述
2.2.1物理架构
2.2.2集成架构
2.2.3安全架构
2.3阿里云飞天系统体系架构
2.3.1阿里云飞天整体架构
2.3.2阿里云飞天平台内核
2.3.3阿里云飞天开放服务
2.3.4阿里云飞天的特色
2.4主流大数据系统厂商
2.4.1阿里云数加平台
2.4.2Cloudera
2.4.3Hortonworks
2.4.4Amazon
2.4.5Google
2.4.6微软
2.5习题
第3章分布式通信与协同
3.1数据编码传输
3.1.1数据编码概述
3.1.2LZSS算法
3.1.3Snappy压缩库
3.2分布式通信系统
3.2.1远程过程调用
3.2.2消息队列
3.2.3应用层多播通信
3.2.4阿里云夸父RPC系统
3.2.5Hadoop IPC的应用
3.3分布式协同系统
3.3.1Chubby锁服务
3.3.2ZooKeeper
3.3.3阿里云女娲协同系统
3.3.4ZooKeeper在HDFS高可用方案中的使用
3.4习题
第4章大数据存储
4.1大数据存储技术的发展
4.2海量数据存储的关键技术
4.2.1数据分片与路由
4.2.2数据复制与一致性
4.3重要数据结构和算法
4.3.1Bloom Filter
4.3.2LSM Tree
4.3.3Merkle Tree
4.3.4Cuckoo Hash
4.4分布式文件系统
4.4.1文件存储格式
4.4.2GFS
4.4.3HDFS
4.4.4阿里云盘古
4.5分布式数据库NoSQL
4.5.1NoSQL数据库概述
4.5.2KV数据库
4.5.3列式数据库
4.5.4图数据库
4.5.5文档数据库
4.6阿里云数据库
4.6.1云数据库Redis
4.6.2云数据库RDS
4.6.3云数据库Memcache
4.7大数据存储技术的趋势
4.8习题
第二部分大数据处理
第5章分布式处理
5.1CPU多核和POSIX Thread
5.2MPI并行计算框架
5.3Hadoop MapReduce
5.4Spark
5.5数据处理技术的发展
5.6习题
第6章Hadoop MapReduce解析
6.1Hadoop MapReduce架构
6.2Hadoop MapReduce与高效能计算、网格计算的区别
6.3MapReduce工作机制
6.3.1Map
6.3.2Reduce
6.3.3Combine
6.3.4Shuffle
6.3.5Speculative Task
6.3.6任务容错
6.4应用案例
6.4.1WordCount
6.4.2WordMean
6.4.3Grep
6.5MapReduce的缺陷与不足
6.6习题

精彩书摘

  第5章分布式处理
  5.1CPU多核和POSIX Thread
  为了提高任务的计算处理能力,下面分别从硬件和软件层面研究新的计算处理能力。
  在硬件设备上,CPU技术不断发展,出现了SMP(对称多处理器)和NUMA(非一致性内存访问)两种高速处理的CPU结构。处理器性能的提升给大量的任务处理提供了很大的发展空间。图5.1是SMP和NUMA结构的CPU,CPU核数的增加带来了计算能力的提高,但是也随之带来了大量的问题需要解决,比如CPU缓存一致性问题、NUMA内存分配策略等,目前已经有比较不错的解决方案。
  图5.1SMP和NUMA架构CPU
  在软件层面出现了多进程和多线程编程。进程是内存资源管理单元,线程是任务调度单元。图5.2是进程和线程之间的区别。
  图5.2进程与线程
  总的来说,线程所占用的资源更少,运行一个线程所需要的资源包括寄存器、栈、程序计数器等。早期不同厂商提供了不同的多线程编写库,这些线程库差异巨大,为了统一多种不同的多线程库,共同制定了POSIX Thread多线程编程标准,以充分利用多个不同的线程库。组成POSIX Thread的API分成以下4个大类:
  (1) 线程管理。线程管理主要负责线程的create、detach、join等,也包括线程属性的查询和设置。
  (2) mutexes。处理同步的例程(routine)称为mutex,mutex提供了create、destroy、lock和unlock等函数。
  (3) 条件变量。条件变量主要用于多个线程之间的通信和协调。
  (4) 同步。同步用于管理读/写锁以及barriers。
  5.2MPI并行计算框架
  MPI(Message Passing Interface)是一个标准且可移植的消息传递系统,服务于大规模的并行计算。MPI标准定义了采用C、C++、Fortran语言编写程序的函数语法和语义。目前有很多经过良好测试和高效率的关于MPI的实现,广泛采用的实现有MPICH。下面以MPICH为例展开对MPI的讲解。
  MPICH是一个高性能且可以广泛移植的MPI实现。图5.3为MPICH的架构图。
  图5.3MPICH架构
  如图5.3所示,应用程序通过MPI结构连接到MPICH接口层,图中的ROMIO是MPI.IO的具体实现版本,对应MPI标准中的高性能实现。MPICH包括ADI3、CH3 Device、CH3 Interface、Nemesis、Nemesis NetMod Interface。
  (1) ADI3。ADI是抽象设备接口(abstract device interface),MPICH通过ADI3接口层隔离底层的具体设备。
  (2) CH3 Device。CH3 Device是ADI3的一个具体实现,使用了相对少数目的函数功能。在CH3 Device实现了多个通信channel,channel提供了两个MPI进程之间传递数据的途径以及进程通信。当前包括两个channel,即Nemesis和Sock,其中Sock是一个基于UNIX Socket的channel,而Nemesis支持多种方法,不仅仅局限于Socket通信。
  (3) CH3 Interface。CH3 Inferface用于定义访问Nemesis的接口规范。
  (4) Nemesis。Nemesis允许两个MPI进程之间的网络通信采取多种方法,包括TCP、InfiniBand等。
  5.3Hadoop MapReduce
  Hadoop是一个由Apache基金会开发的分布式系统基础架构。Hadoop框架*核心的设计就是HDFS和MapReduce,HDFS为海量的数据提供了存储,而MapReduce为海量的数据提供了计算。
  HDFS(Hadoop Distributed File System)有高容错性的特点,并且设计用来部署在低廉的硬件上; 而且它提供高吞吐量来访问应用程序的数据,适合有着超大数据集的应用程序。HDFS放宽了POSIX的要求,可以用流的形式访问文件系统中的数据。
  MapReduce是Google公司提出的一个软件框架,用于大规模数据集(大于1TB)的并行运算。“Map”和“Reduce”概念以及它们的主要思想都是从函数式编程语言借来的,还有从矢量编程语言借来的特性。
  当前的软件实现是指定一个Map函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce函数,用来保证所有映射的键值对中的每一个共享相同的键组。
  处理流程如下:
  (1) MapReduce框架将应用的输入数据切分成M个模块,典型的数据块大小为64MB。
  (2) 具有全局*的主控Master以及若干个Worker,Master负责为Worker分配具体的Map或Reduce任务并做全局管理。
  (3) Map任务的Worker读取对应的数据块内容,从数据块中解析Key/Value记录数据并将其传给用户自定义的Map函数,Map函数输出的中间结果Key/Value数据在内存中缓存。
  (4) 缓存的Map函数产生的中间结果周期性地写入磁盘,每个Map函数中间结果在写入磁盘前被分割函数切割成R份,R是Reduce的个数。一般用Key对R进行哈希取模。Map函数完成对应数据块处理后将R个临时文件位置通知Master,Master再转交给Reduce任务的Worker。
  (5) Reduce任务Worker接到通知时将Map产生的M份数据文件pull到本地(当且仅当所有Map函数完成时Reduce函数才能执行)。Reduce任务根据中间数据的Key对记录进行排序,相同Key的记录聚合在一起。
  (6) 所有Map、Reduce任务完成,Master唤醒用户应用程序。
  5.4Spark
  Spark是UC Berkeley AMP Lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于Map.Reduce算法实现的分布式计算,拥有Hadoop MapReduce所具有的优点; 不同于MapReduce的是中间输出和结果可以保存在内存中,从而不再需要读/写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的Map.Reduce的算法。
  Spark*主要的结构是RDD(Resilient Distributed Datasets),它表示已被分区、不可变的并能够被并行操作的数据集合,不同的数据集格式对应不同的RDD实现。RDD必须是可序列化的。RDD可以缓存到内存中,每次对RDD数据集操作之后的结果都可以存放到内存中,下一个操作可以直接从内存中输入,省去了MapReduce大量的磁盘I/O操作。这很适合迭代运算比较常见的机器学习算法、交互式数据挖掘。
  与Hadoop类似,Spark支持单节点集群或多节点集群。对于多节点操作,Spark可以采用自己的资源管理器,也可以采用Mesos集群管理器来管理资源。Mesos为分布式应用程序的资源共享和隔离提供了一个有效平台(参见图5.4)。该设置允许Spark与Hadoop共存于节点的一个共享池中。
  图5.4Mesos集群管理器
  5.5数据处理技术的发展
  数据处理从早期的共享分时单CPU操作系统处理到多核并发处理,每台计算机设备的处理能力在不断增强,处理的任务复杂度在不断增加,任务的处理时间在不断减少。
  然而,随着大数据技术的不断发展,一台计算设备无法胜任目前大数据计算的庞大的计算工作。为了解决单台计算机无法处理大规模数据计算的问题,连接多台计算机设备整合成一个统一的计算系统,对外提供计算服务。早期Google公司的分布式计算框架MapReduce采用的思想就是连接多台廉价的计算设备,以此来提供进行大规模计算任务的能力。但是MapReduce是建立在磁盘之上的并行计算框架,由于机械磁盘本身的局限性,MapReduce仍然有很大的计算延迟。Spark提出了把计算结果存放在内存中,利用内存作为存储介质的方法极大地缩短了系统的响应时间,降低了计算任务返回结果的延迟。为了满足大规模机器学习计算任务的需求,也设计了大量的分布式机器学习框架来训练机器模型参数,比如Parameter Server;针对图计算场合,Google公司设计实现了Pregel图计算框架,用于处理*短路径、Dijstra等经典图计算任务; 为了满足实时计算任务需求,设计实现了流计算框架,比如Spark Streaming、Storm、Flink等实时计算框架。
  总之,目前处理技术在往大规模、低延迟方向发展,内存空间的扩大以及内存存储成本的降低给大规模数据处理提供了极好的发展契机。
  5.6习题
  1. 简述CPU技术的发展趋势。
  2. 简述MPICH并行计算框架。
  3. 简述MapReduce的原理。
  ……

前言/序言

  互联网技术不断发展,各种技术不断涌现,其中大数据技术已成为一颗闪耀的新星。我们已经处于数据世界,互联网每天产生大量的数据,利用好这些数据可以给我们的生活带来巨大的变化以及提供极大的便利。目前大数据技术受到越来越多的机构的重视,因为大数据技术可以给其创造巨大的利润,其中的典型代表是个性化推荐以及大数据精准营销。
  本书在讲述大数据的基本概念、原理与方法的基础上,详细而全面地介绍了可以实际用于大数据实践的各种技能,旨在使学生通过有限课时的学习后,不仅能对大数据技术的基本原理有所认识,而且能够具备基本的大数据技术开发能力以及运用大数据技术解决基本的数据分析问题,理解大数据框架(尤其是阿里云大数据计算平台),在阿里云大数据平台上进行基本的大数据开发工作的能力。
  本书分为三大部分,分别是大数据概述及基础、大数据处理和大数据分析与应用。其中,大数据概述及基础部分重点介绍数据组织、重要数据结构、大数据协同技术以及大数据存储技术等内容; 大数据处理部分重点介绍大数据处理框架,包括大数据批处理和流处理框架等内容; 大数据分析与应用部分重点介绍数据分析技术和机器学习的相关内容,以及如何利用阿里云的数加平台进行基本的大数据开发工作。
  本书与其他类似著作的不同之处在于,除了讲述必要的大数据理论之外,还通过大数据实践来讲述大数据技术的应用,包括如何运用阿里云大数据计算平台解决和分析实际的问题,如阿里云MaxCompute和StreamCompute等。本书的*后一章“大数据实践: 基于数加平台的推荐系统”是学生在做课程设计时可供模仿的一个项目,它完整地体现了理论与实践的有机结合。
  本书的理论知识的教学安排建议如下。
  章节内容学时数
  第1章大数据概念和发展背景1
  第2章大数据系统架构概述1~2
  第3章分布式通信与协同2~4
  第4章大数据存储4~6
  第5章分布式处理2
  第6章Hadoop MapReduce解析2~4
  第7章Spark解析2~4
  第8章流计算2
  第9章图计算2
  第10章阿里云大数据计算服务平台2
  第11章集群资源管理与调度4~6
  第12章数据分析2~4
  第13章数据挖掘与机器学习技术2~4
  第14章大数据实践: 基于数加平台的推荐系统4~5
  建议理论教学时数: 32~48学时。
  建议实验(实践)教学时数: 16~32学时。
  教师可以按照自己对大数据的理解适当地删除一些章节,也可以根据教学目标,灵活地调整章节的顺序,增减各章的学时数。
  在本书成书的过程中,得到了万昭祎、李旭、苏俊洋以及阿里巴巴的李妹芳等人的大力支持,在此表示衷心的感谢。
  由于大数据是一门新兴学科,大数据的教学方法本身还在探索之中,加之我们的水平和能力有限,本书难免有疏漏之处。恳请各位同仁和广大读者给予批评指正,也希望各位能将实践过程中的经验和心得与我们交流。
  作者2017年1月

大数据基础及应用/大数据技术与应用专业规划教材 下载 mobi epub pdf txt 电子书 格式

大数据基础及应用/大数据技术与应用专业规划教材 mobi 下载 pdf 下载 pub 下载 txt 电子书 下载 2024

大数据基础及应用/大数据技术与应用专业规划教材 下载 mobi pdf epub txt 电子书 格式 2024

大数据基础及应用/大数据技术与应用专业规划教材 下载 mobi epub pdf 电子书
想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

用户评价

评分

评分

评分

评分

评分

评分

评分

评分

评分

类似图书 点击查看全场最低价

大数据基础及应用/大数据技术与应用专业规划教材 mobi epub pdf txt 电子书 格式下载 2024


分享链接








相关图书


本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

友情链接

© 2024 book.teaonline.club All Rights Reserved. 图书大百科 版权所有