标签分类 热门分类
当前位置:首页 > > 大数据技术电子书网盘下载
Hadoop+Spark生态系统操作与实战指南 Hadoop+Spark生态系统操作与实战指南
码小辫

码小辫 提供上传

资源
30
粉丝
18
喜欢
150
评论
9

    Hadoop+Spark生态系统操作与实战指南 PDF 原书影印版

    大数据技术电子书
    • 发布时间:

    给大家带来的一篇关于大数据技术相关的电子书资源,介绍了关于Hadoop、Spark、生态系统、实战指南方面的内容,本书是由清华大学出版社出版,格式为PDF,资源大小114.9 MB,余辉编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.4

  • Hadoop+Spark生态系统操作与实战指南 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1PvE88DcN2VXxOG9u9HvD9
  • 分享码:m2w1
  • Hadoop+Spark生态系统操作与实战指南

    Hadoop+Spark生态系统操作与实战指南电子书封面

    读者评价

    这本书用了大量篇幅写了如何配置 hadoop 等环境,让读者对于架构整体没有一个完整的认识。如果有耐心按照书上的顺序一步一步完成,最后应该能得到正确的实验结果。但是作为一本自称为“指南”的书或许还不够资格。作为大学课堂实验课的伴手书还是可以的。

    这本书真的知识和入门的小白,大部分都是概念的讲解,但是还没讲清楚,图片也不清晰,只是对spark 的生态做了一个简单介绍,其实就是概念的介绍,实用性不高,69块钱说实话不是很值!假如你是已经接触了spark 一段时间了的话还是别买这本书,帮助不大!

    内容介绍

    本书用于Hadoop Spark快速上手,全面解析Hadoop和Spark生态系统,通过原理解说和实例操作每一个组件,让读者能够轻松跨入大数据分析与开发的大门。 全书共12章,大致分为3个部分,第1部分(第1~7章)讲解Hadoop的原生态组件,包括Hadoop、ZooKeeper、HBase、Hive环境搭建与安装,以及介绍MapReduce、HDFS、ZooKeeper、HBase、Hive原理和Apache版本环境下实战操作。第2部分(第8~11章)讲解Spark的原生态组件,包括Spark Core、Spark SQL、Spark Streaming、DataFrame,以及介绍Scala、Spark API、Spark SQL、Spark Streaming、DataFrame原理和CDH版本环境下实战操作,其中Flume和Kafka属于Apache*开源项目也放在本篇讲解。第3部分(第12章)讲解两个大数据项目,包络网页日志离线项目和实时项目,在CDH版本环境下通过这两个项目将Hadoop和Spark原生态组件进行整合,一步步带领读者学习和实战操作。 本书适合想要快速掌握大数据技术的初学者,也适合作为高等院校和培训机构相关专业师生的教学参考书和实验用书。

    内容节选

    浅谈七种常见的Hadoop和Spark项目案例

     

    有一句古老的格言是这样说的,如果你向某人提供你的全部支持和金融支持去做一些不同的和创新的事情,他们最终却会做别人正在做的事情。如比较火爆的Hadoop、Spark和Storm,每个人都认为他们正在做一些与这些新的大数据技术相关的事情,但它不需要很长的时间遇到相同的模式。具体的实施可能有所不同,但根据我的经验,它们是最常见的七种项目。

    项目一:数据整合

    称之为“企业级数据中心”或“数据湖”,这个想法是你有不同的数据源,你想对它们进行数据分析。这类项目包括从所有来源获得数据源(实时或批处理)并且把它们存储在hadoop中。有时,这是成为一个“数据驱动的公司”的第一步;有时,或许你仅仅需要一份漂亮的报告。“企业级数据中心”通常由HDFS文件系统和HIVE或IMPALA中的表组成。未来,HBase和Phoenix在大数据整合方面将大展拳脚,打开一个新的局面,创建出全新的数据美丽新世界。

    销售人员喜欢说“读模式”,但事实上,要取得成功,你必须清楚的了解自己的用例将是什么(Hive模式不会看起来与你在企业数据仓库中所做的不一样)。真实的原因是一个数据湖比Teradata和Netezza公司有更强的水平扩展性和低得多的成本。许多人在做前端分析时使用Tabelu和Excel。许多复杂的公司以“数据科学家”用Zeppelin或IPython笔记本作为前端。

    项目二:专业分析

    许多数据整合项目实际上是从你特殊的需求和某一数据集系统的分析开始的。这些往往是令人难以置信的特定领域,如在银行领域的流动性风险/蒙特卡罗模拟分析。在过去,这种专业的分析依赖于过时的,专有的软件包,无法扩大数据的规模经常遭受一个有限的功能集(大部分是因为软件厂商不可能像专业机构那样了解的那么多)。

    在Hadoop和Spark的世界,看看这些系统大致相同的数据整合系统,但往往有更多的HBase,定制非SQL代码,和更少的数据来源(如果不是唯一的)。他们越来越多地以Spark为基础。

    项目三:Hadoop作为一种服务

    在“专业分析”项目的任何大型组织(讽刺的是,一个或两个“数据整理”项目)他们会不可避免地开始感觉“快乐”(即,疼痛)管理几个不同配置的Hadoop集群,有时从不同的供应商。接下来,他们会说,“也许我们应该整合这些资源池,”而不是大部分时间让大部分节点处于资源闲置状态。它们应该组成云计算,但许多公司经常会因为安全的原因(内部政治和工作保护)不能或不会。这通常意味着很多Docker容器包。

    我没有使用它,但最近Bluedata(蓝色数据国际中心)似乎有一个解决方案,这也会吸引小企业缺乏足够的资金来部署Hadoop作为一种服务。

    项目四:流分析

    很多人会把这个“流”,但流分析是不同的,从设备流。通常,流分析是一个组织在批处理中的实时版本。以反洗钱和欺诈检测:为什么不在交易的基础上,抓住它发生而不是在一个周期结束?同样的库存管理或其他任何。
    在某些情况下,这是一种新的类型的交易系统,分析数据位的位,因为你将它并联到一个分析系统中。这些系统证明自己如Spark或Storm与Hbase作为常用的数据存储。请注意,流分析并不能取代所有形式的分析,对某些你从未考虑过的事情而言,你仍然希望分析历史趋势或看过去的数据。

    项目五:复杂事件处理

    在这里,我们谈论的是亚秒级的实时事件处理。虽然还没有足够快的超低延迟(皮秒或纳秒)的应用,如高端的交易系统,你可以期待毫秒响应时间。例子包括对事物或事件的互联网电信运营商处理的呼叫数据记录的实时评价。有时,你会看到这样的系统使用Spark和HBase——但他们一般落在他们的脸上,必须转换成Storm,这是基于由LMAX交易所开发的干扰模式。
    在过去,这样的系统已经基于定制的消息或高性能,从货架上,客户端-服务器消息产品-但今天的数据量太多了。我还没有使用它,但Apex项目看起来很有前途,声称要比Storm快。

    项目六:ETL流

    有时你想捕捉流数据并把它们存储起来。这些项目通常与1号或2号重合,但增加了各自的范围和特点。(有些人认为他们是4号或5号,但他们实际上是在向磁盘倾倒和分析数据。),这些几乎都是Kafka和Storm项目。Spark也使用,但没有理由,因为你不需要在内存分析。

    项目七:更换或增加SAS

    SAS是精细,是好的但SAS也很贵,我们不需要为你的数据科学家和分析师买存储你就可以“玩”数据。此外,除SAS可以做或产生漂亮的图形分析外,你还可以做一些不同的事情。这是你的“数据湖”。这里是IPython笔记本(现在)和Zeppelin(以后)。我们用SAS存储结果。

    当我每天看到其他不同类型的Hadoop,Spark,或Storm项目,这些都是正常的。如果你使用Hadoop,你可能了解它们。几年前我已经实施了这些项目中的部分案例,使用的是其它技术。

    如果你是一个老前辈太害怕“大”或“做”大数据Hadoop,不要担心。事情越变越多,但本质保持不变。你会发现很多相似之处的东西你用来部署和时髦的技术都是围绕Hadooposphere旋转的。

    原文作者:Andrew C. Oliver,Andrew C. Oliver是一个专业的牧猫人兼职为一个软件顾问。他是MammothData的总裁和创始人(原开放软件集成商),一个坐落于达勒姆,北卡罗来纳州的大数据咨询公司。

    目录

    • 第1章  Hadoop概述 1
    • 1.1 Hadoop简介 1
    • 1.2 Hadoop版本和生态系统 3
    • 1.3 MapReduce简介 7
    • 1.4 HDFS简介 8
    • 1.5 Eclipse Java开发环境搭建 10
    • 1.5.1 Java安装 10
    • 1.5.2 Maven安装 11
    • 1.5.3 Eclipse安装和配置 12
    • 1.5.4 Eclipse创建Maven项目 16
    • 1.5.5 Eclipse其余配置 19
    • 1.6  小结 21
    • 第2章  Hadoop集群搭建 22
    • 2.1  虚拟机简介 22
    • 2.2  虚拟机配置 24
    • 2.3 Linux系统设置 31
    • 2.4 Apache版本Hadoop集群搭建 36
    • 2.5 CDH版本Hadoop集群搭建 44
    • 2.5.1 安装前期准备 44
    • 2.5.2 Cloudera Manager安装 45
    • 2.5.3 CDH安装 46
    • 2.6  小结 55
    • 第3章  Hadoop基础与原理 56
    • 3.1 MapReduce原理介绍 56
    • 3.1.1 MapReduce的框架介绍 56
    • 3.1.2 MapReduce的执行步骤 58
    • 3.2 HDFS原理介绍 59
    • 3.2.1 HDFS是什么 59
    • 3.2.2 HDFS架构介绍 59
    • 3.3 HDFS实战 62
    • 3.3.1 HDFS客户端的操作 62
    • 3.3.2 Java操作HDFS 65
    • 3.4 YARN原理介绍 69
    • 3.5  小结 71
    • 第4章  ZooKeeper实战 72
    • 4.1 ZooKeeper原理介绍 72
    • 4.1.1  ZooKeeper基本概念 72
    • 4.1.2 ZooKeeper工作原理 73
    • 4.1.3 ZooKeeper工作流程 76
    • 4.2 ZooKeeper安装 78
    • 4.3 ZooKeeper实战 80
    • 4.3.1 ZooKeeper客户端的操作 80
    • 4.3.2 Java操作ZooKeeper 81
    • 4.3.3 Scala操作ZooKeeper 85
    • 4.4  小结 87
    • 第5章  MapReduce实战 88
    • 5.1  前期准备 88
    • 5.2  查看YARN上的任务 95
    • 5.3  加载配置文件 95
    • 5.4 MapReduce实战 96
    • 5.5  小结 121
    • 第6章  HBase实战 122
    • 6.1 HBase简介及架构 122
    • 6.2 HBase安装 127
    • 6.3 HBase实战 129
    • 6.3.1 HBase客户端的操作 129
    • 6.3.2 Java操作HBase 132
    • 6.3.3 Scala操作HBase 136
    • 6.4  小结 140
    • 第7章  Hive实战 141
    • 7.1 Hive介绍和架构 141
    • 7.2 Hive数据类型和表结构 143
    • 7.3  Hive分区、桶与倾斜 144
    • 7.4 Hive安装 146
    • 7.5 Hive实战 148
    • 7.5.1 Hive客户端的操作 148
    • 7.5.2 Hive常用命令 154
    • 7.5.3 Java操作Hive 155
    • 7.6  小结 161
    • 第8章  Scala实战 162
    • 8.1 Scala简介与安装 162
    • 8.2 IntelliJ IDEA开发环境搭建 164
    • 8.2.1 IntelliJ IDEA简介 164
    • 8.2.2 IntelliJ IDEA安装 164
    • 8.2.3 软件配置 166
    • 8.3 IntelliJ IDEA建立Maven项目 171
    • 8.4  基础语法 176
    • 8.5  函数 179
    • 8.6  控制语句 181
    • 8.7  函数式编程 184
    • 8.8  模式匹配 189
    • 8.9  类和对象 191
    • 8.10 Scala 异常处理 194
    • 8.11 Trait(特征) 195
    • 8.12 Scala文件I/O 196
    • 8.13 作业 198
    • 8.13.1 九九乘法表 198
    • 8.13.2 冒泡排序 199
    • 8.13.3 设计模式Command 200
    • 8.13.4 集合对称判断 202
    • 8.13.5 综合题 204
    • 8.14 小结 206
    • 第9章  Flume实战 207
    • 9.1 Flume概述 207
    • 9.2 Flume的结构 208
    • 9.3 Flume安装 211
    • 9.4 Flume实战 212
    • 9.5  小结 214
    • 第10章  Kafka实战 215
    • 10.1 Kafka概述 215
    • 10.1.1 简介 215
    • 10.1.2 使用场景 217
    • 10.2 Kafka设计原理 218
    • 10.3 Kafka主要配置 222
    • 10.4 Kafka客户端操作 224
    • 10.5 Java操作Kafka 226
    • 10.5.1 生产者 226
    • 10.5.2 消费者 228
    • 10.6 Flume连接Kafka 229
    • 10.7 小结 233
    • 第11章  Spark实战 234
    • 11.1 Spark概述 234
    • 11.2 Spark基本概念 234
    • 11.3 Spark算子实战及功能描述 238
    • 11.3.1 Value型Transformation算子 238
    • 11.3.2 Key-Value型Transformation算子 242
    • 11.3.3 Actions算子 245
    • 11.4 Spark Streaming实战 248
    • 11.5 Spark SQL和DataFrame实战 253
    • 11.6 小结 266
    • 第12章  大数据网站日志分析项目267
    • 12.1 项目介绍 267
    • 12.2 网站离线项目 267
    • 12.2.1 业务框架图 267
    • 12.2.2 子服务“趋势分析”详解 268
    • 12.2.3 表格的设计 272
    • 12.2.4 提前准备 274
    • 12.2.5 项目步骤 287
    • 12.3 网站实时项目 297
    • 12.3.1 业务框架图 297
    • 12.3.2 子服务“当前在线”详解 297
    • 12.3.3 表格的设计 302
    • 12.3.4 提前准备 304
    • 12.3.5 项目步骤 327
    • 12.4 小结 337

    上一篇:Docker实践  下一篇:数据挖掘与预测分析

    展开 +

    收起 -

     
    大数据技术 相关电子书
    关于大数据技术的学习笔记
    网友NO.35607
    网友NO.35607

    至于容错,MapReduce和Spark从两个不同的方向来解决问题。MapReduce使用TaskTracker节点,它为 JobTracker节点提供了心跳(heartbeat)。如果没有心跳,那么JobTracker节点重新调度所有将执行的操作和正在进行的操作,交 给另一个TaskTracker节点。这种方法在提供容错性方面很有效,可是会大大延长某些操作(即便只有一个故障)的完成时间。

    Spark使用弹性分布式数据集(RDD),它们是容错集合,里面的数据元素可执行并行操作。RDD可以引用外部存储系统中的数据集,比如共享式文件系统、HDFS、HBase,或者提供Hadoop InputFormat的任何数据源。Spark可以用Hadoop支持的任何存储源创建RDD,包括本地文件系统,或前面所列的其中一种文件系统。

    RDD拥有五个主要属性:

    分区列表
    计算每个分片的函数
    依赖其他RDD的项目列表
    面向键值RDD的分区程序(比如说RDD是散列分区),这是可选属性
    计算每个分片的首选位置的列表(比如HDFS文件的数据块位置),这是可选属性
    RDD可能具有持久性,以便将数据集缓存在内存中。这样一来,以后的操作大大加快,最多达10倍。Spark的缓存具有容错性,原因在于如果RDD的任何分区丢失,就会使用原始转换,自动重新计算。

    网友NO.25670
    网友NO.25670

    什么是HadoopTM?实际上这个答案Hadoop官网已经给的很明确:

    Hadoop是Apache软件基金会支持可靠的、可扩展的一个开源的分布式计算框架的工程。(PS:Apache软件基金会真是扛下了开源世界的半壁江山,旗下支持的开源的大数据项目大家有兴趣可以去官网访问一下。)
    具体而言,Apache Hadoop软件库是一个允许使用简单编程模型跨计算机集群处理大型数据集合的框架,其设计的初衷是将单个服务器扩展成上千个机器组成的一个集群为大数据提供计算服务,其中每个机器都提供本地计算和存储服务。
    Hadoop工程包括以下模块:
    Hadoop Common:支持其他Hadoop模块的通用工具。
    Hadoop Distributed File System(HDFSTM):提供高吞吐量的访问应用数据的一个分布式文件系统。
    Hadoop YARN:一种作业调度和集群资源管理的框架。
    Hadoop MapReduce:一种基于Yarn来处理大数据集合的系统。
    Apache中其他Hadoop相关的项目包括:
    AmbariTM:一种用于提供、管理和监督Apache Hadoop集群的基于Web UI的且易于使用的Hadoop管理工具。
    AvroTM:一种数据序列化系统。
    CassandraTM:一种无单点故障的可扩展的分布式数据库。
    ChukwaTM:一种用于管理大型分布式系统的数据收集系统。
    HBaseTM:一种支持存储大型表的结构化存储的可扩展的分布式数据库。
    HiveTM:一种提供数据汇总和特定查询的数据仓库。
    MahoutTM:一种可扩展的机器学习和数据挖掘库(Scala语言实现,可结合Spark后端)。
    PigTM:一种高级的数据流语言且支持并行计算的执行框架(2017年发布的最新版本0.17.0是添加了Spark上的Pig应用)。
    SparkTM:一种用于Hadoop数据的快速通用计算引擎。Spark提供一种支持广泛应用的简单而易懂的编程模型,包括ETL( Extract-Transform-Load)、机器学习、流处理以及图计算。
    TezTM:一种建立在Hadoop YARN上数据流编程框架,它提供了一个强大而灵活的引擎来任意构建DAG(Directed-acyclic-graph)任务去处理用于批处理和交互用例的数据。
    ZooKeeperTM:一种给分布式应用提供高性能的协同服务系统。

    Copyright 2018-2020 xz577.com 码农之家

    电子书资源由网友、会员提供上传,本站记录提供者的基本信息及资源来路

    鸣谢: “ 码小辫 ” 公众号提供回调API服务、“ 脚本CDN ”提供网站加速(本站寻求更多赞助支持)

    版权投诉 / 书籍推广 / 赞助:520161757@qq.com

    上传资源(网友、会员均可提供)

    查看最新会员资料及资源信息