自己动手做大数据系统

自己动手做大数据系统 pdf epub mobi txt 电子书 下载 2026

☆☆☆☆☆
出版者:电子工业出版社 作者:张魁 出品人: 页数:248 译者: 出版时间:2016-10-1 价格:49 装帧:平装 isbn号码:9787121295867 丛书系列:
图书标签
  • 大数据
  • 计算机
  • Hadoop
  • 计算机科学
  • 云计算
  • 自己动手
  • hadoop
  • DM
  • 大数据
  • 系统设计
  • 编程实践
  • 分布式
  • 数据处理
  • 云计算
  • 架构设计
  • 实战教程
  • 开源工具
  • 自我学习
想要找书就要到 小哈图书下载中心
立刻按 ctrl+D 收藏本页
你会得到大惊喜!!

具体描述

如果你是一位在校大学生,对大数据感兴趣,也知道使用的企业越来越多,市场需求更是日新月异,但苦于自己基础不够,心有余而力不足;也看过不少大数据方面的书籍、博客、视频等,但感觉进步不大;如果你是一位在职人员,但目前主要使用传统技术,虽然对大数据很有兴趣,也深知其对未来的影响,但因时间不够,虽有一定的基础,常常也是打两天鱼、晒三天网,进展不是很理想。

如果你有上述疑惑或遇到相似问题,《自己动手做大数据系统》正好比较适合你。《自己动手做大数据系统》从OpenStack云平台搭建、软件部署、需求开发实现到结果展示,以纵向角度讲解了生产性大数据项目上线的整个流程;以完成一个实际项目需求贯穿各章节,讲述了Hadoop生态圈中互联网爬虫技术、Sqoop、Hive、HBase组件协同工作流程,并展示了Spark计算框架、R制图软件和SparkRHive组件的使用方法。《自己动手做大数据系统》的一大特色是提供了实际操作环境,用户可以在线登录云平台来动手操作书中的数据和代码,登录网址请参考http://www.feiguyun.com/support。

《掌控数据洪流:构建你的专属智能信息引擎》 在信息爆炸的时代,数据已成为继石油之后最重要的战略资源。然而,如何有效地收集、处理、分析和利用这些海量数据,构建一个强大且智能的信息引擎,却常常让许多个人和团队陷入困境。本书《掌控数据洪流:构建你的专属智能信息引擎》正是为此而生。它并非提供一套现成的、固定的“大”系统蓝图,而是为你铺设一条理解、学习和实践数据处理技术的基本路径,让你能够根据自身的需求和资源,一步步构建出属于自己的、能够解决实际问题的智能信息系统。 本书的核心理念是“赋能”,而非“灌输”。我们不直接告诉你“如何搭建一个Facebook级别的大数据平台”,因为那不切实际,也非你所能独立完成。相反,我们将带领你深入理解构成大数据系统的核心要素,掌握其背后的原理和演进逻辑。通过本书的学习,你将能够: 一、 洞悉数据处理的底层逻辑:从零开始搭建你的数据仓库 理解数据的本质与演进: 任何数据系统都始于数据。我们将从最基础的数据类型、数据结构讲起,探讨结构化、半结构化和非结构化数据的特点及其处理挑战。你会了解到数据采集的多种途径,包括API接口、爬虫技术、日志分析、数据库同步等,并学习如何设计高效的数据采集策略,确保数据的完整性和准确性。 数据存储的哲学: 告别“万能”的解决方案。本书将详细剖析各种数据存储技术的优缺点,从传统的关系型数据库(SQL)的ACID特性、索引优化,到NoSQL数据库(如键值存储、文档数据库、列族数据库、图数据库)在应对不同场景下的灵活性和可扩展性。我们将重点讲解数据仓库的设计理念,包括维度建模(星型模型、雪花模型)、事实表与维度表的构建,以及如何通过ETL(Extract, Transform, Load)过程将分散的数据整合到一个统一、可查询的存储中。 构建你的第一套数据管道: 数据从产生到被利用,需要经过一系列的加工和传输。我们将介绍数据管道(Data Pipeline)的概念,并教授如何使用开源工具(例如,Apache NiFi的图形化流程设计,Apache Airflow的调度与编排能力)来构建自动化的数据流动。你会学习如何处理数据清洗、数据转换、数据聚合等关键步骤,确保数据在传输过程中保持一致性和可用性。 二、 驾驭计算的艺术:释放数据的分析潜能 分布式计算的基石: 当数据量增长到单机无法处理时,分布式计算便成为必然。我们将深入讲解MapReduce模型的核心思想,理解其如何将大规模计算任务分解到多个节点并行执行。在此基础上,你将学习Apache Spark,这个比MapReduce更强大、更灵活的分布式计算引擎,掌握其RDD、DataFrame、Dataset的API,以及Spark SQL、Spark Streaming、MLlib等模块的应用,实现内存计算的极致效率。 流式数据处理的实时响应: 在瞬息万变的数字世界里,实时的数据洞察至关重要。本书将介绍流式计算的概念,并重点探讨Apache Kafka作为分布式流处理平台的角色——如何构建高吞吐量、低延迟的消息队列,为实时分析提供坚实的基础。你将学习如何结合Apache Flink或Spark Streaming等流处理框架,实现对实时数据流的窗口计算、状态管理和事件驱动处理,从而构建实时监控、实时推荐等应用。 数据仓库与数据湖的融合: 传统的企业数据仓库虽然结构化,但可能无法应对日益增长的半结构化和非结构化数据。数据湖的出现,为存储和处理海量、多样化数据提供了新的解决方案。本书将探讨数据湖的构建原则,以及如何通过数据湖仓一体(Lakehouse)的架构,结合数据仓库的治理能力和数据湖的灵活性,实现数据的统一管理和高效分析。你将了解Apache Hive、Presto/Trino等查询引擎在数据湖上的应用。 三、 智能化的催化剂:让数据驱动决策 数据挖掘与机器学习入门: 数据系统不仅仅是存储和处理,更在于从中发现有价值的洞察。我们将从基础的数据挖掘技术讲起,介绍分类、聚类、关联规则等经典算法,并引导你理解机器学习的基本概念,包括监督学习、无监督学习、强化学习。 构建你的预测模型: 你将学习如何使用Scikit-learn等Python库,实现常见的机器学习算法,例如线性回归、逻辑回归、决策树、随机森林、支持向量机(SVM)等。本书将侧重于讲解模型训练、评估、调优的整个流程,帮助你构建出能够进行预测和分类的简单模型。 数据可视化与报告: 即使是最精密的分析,如果不能有效地传达给决策者,也毫无价值。我们将介绍数据可视化的重要性,并引导你学习使用Matplotlib、Seaborn等Python库,以及Tableau、Power BI等商业智能工具,将复杂的数据转化为直观、易懂的图表和仪表板。你将学会如何设计有效的报告,让数据说话,支持更明智的决策。 本书的特色与优势: 强调原理而非特定工具: 我们不会被任何一家技术供应商的解决方案所束缚。本书更侧重于讲解大数据系统背后的核心原理、技术演进和设计思路,让你拥有触类旁通的能力,能够根据实际需求灵活选择和组合技术栈。 循序渐进的学习路径: 从基础的数据处理概念,到复杂的分布式计算和流式处理,再到数据驱动的智能化应用,本书提供了清晰的学习脉络。即使你是初学者,也能在书中找到切入点,逐步深入。 实战导向的实践建议: 书中将穿插大量的概念讲解、伪代码示例和架构图示,引导你思考如何将学到的知识应用于实际场景。虽然本书不是一本具体的代码教程,但它将为你提供构建属于自己系统的“思维框架”和“技术地图”。 培养解决问题的能力: 大数据领域的技术更新迭代迅速,死记硬背是行不通的。本书旨在培养你独立分析问题、理解需求、设计解决方案的能力,让你能够自信地应对未来工作中遇到的各种数据挑战。 谁适合阅读本书? 渴望理解大数据系统运作机制的技术爱好者: 无论你是软件工程师、数据分析师、还是对数据充满好奇的学生,本书都能为你打开一扇全新的大门。 面临数据处理瓶颈的团队或个人: 如果你的数据量已经开始增长,传统的Excel或单机数据库已无法满足需求,本书将为你指明改进的方向。 希望提升数据分析和决策能力的管理者: 理解数据背后的逻辑,能够帮助你更好地指导团队,做出更明智的商业决策。 对构建个性化数据解决方案感兴趣的开发者: 你将学会如何根据自身业务特点,设计和构建出最适合自己的数据处理和分析流程。 《掌控数据洪流:构建你的专属智能信息引擎》不是一本“填鸭式”的技术手册,而是一次关于数据力量的探索之旅。我们相信,掌握了构建智能信息引擎的核心原理和方法,你就能在数据洪流中找到属于自己的方向,将数据转化为驱动进步和创新的强大引擎。

作者简介

张魁

虚拟化工程师,Openstack架构师,苏州某高校云平台架构师,十余年Linux系统运维实践及虚拟化开发经验,4年Linux系统补丁开发经验。先后在美企担任虚拟化应用运维、服务器集群开发运维工程师或系统开发架构师,高校信息中心云平台架构师,主要关注Openstack、Docker及分布式存储等。

张粤磊

DBA、大数据架构师,十余年一线数据处理数据分析实战经验。先后在咨询、金融、互联网行业担任数据平台技术负责人或架构师。主要关注大数据基础平台、大数据模型构建和大数据分析。

刘未昕

从事IT研发和项目管理工作十余年以上。使用多种程序设计语言,目前研究方向主要是大数据生态系统,从事金融、数据仓库等领域研发。五年以上IT行业授课、培训经验,并在多所高校担任外聘讲师。

吴茂贵

运筹学与控制论专业研究生学历。毕业后主要参与数据仓库、商务智能等方面的项目,期间做过数据处理、数据分析、数据挖掘等工作,行业涉及金融、物流、制造业等。近期主要做复杂数据存储、清理、转换等工作,同时在大数据方面也很有兴趣并投入大量时间和精力,且将持续为之。

目录信息

第1章 为什么要自己动手做大数据系统 1
1.1 大数据时代 1
1.2 实战大数据项目 2
1.3 大数据演练平台 2
第2章 项目背景及准备 4
2.1 项目背景 4
2.2 项目简介 4
2.3 项目架构 4
2.4 操作系统 5
2.5 数据存储 7
2.6 数据处理 8
2.7 开发工具 9
2.8 调试工具 10
2.9 版本管理 10
第3章 大数据环境搭建和配置 11
3.1 各组件功能说明 11
3.1.1 各种数据源的采集工具 12
3.1.2 企业大数据存储工具 12
3.1.3 企业大数据系统的数据仓库工具 12
3.1.4 企业大数据系统的分析计算工具 13
3.1.5 企业大数据系统的数据库工具 13
3.2 大数据系统各组件安装部署配置 13
3.2.1 安装的前期准备工作 13
3.2.2 Hadoop基础环境安装及配置 15
3.2.3 Hive安装及配置 21
3.2.4 Sqoop安装及配置 24
3.2.5 Spark安装及配置 30
3.2.6 Zookeeper安装及配置 31
3.2.7 HBase安装及配置 33
3.3 自动化安装及部署说明 35
3.3.1 自动化安装及部署整体架构设计 35
3.3.2 大数据系统自动化部署逻辑调用关系 36
3.4 本章小结 43
第4章 大数据的获取 44
4.1 使用爬虫获取互联网数据 45
4.2 Python和Scrapy 框架的安装 45
4.3 抓取和解析招聘职位信息 47
4.4 职位信息的落地 51
4.5 两个爬虫配合工作 53
4.6 让爬虫的架构设计更加合理 55
4.7 获取数据的其他方式 57
4.8 使用Sqoop同步论坛中帖子数据 57
4.9 本章小结 59
第5章 大数据的处理 60
5.1 Hive是什么 60
5.2 为什么使用Hive做数据仓库建模 60
5.3 飞谷项目中Hive建模步骤 61
5.3.1 逻辑模型的创建 62
5.3.2 物理模型的创建 67
5.3.3 将爬虫数据导入stg_job表 74
5.4 使用Hive进行数据清洗转换 77
5.5 数据清洗转换的必要性 78
5.6 使用HiveQL清洗数据、提取维度信息 79
5.6.1 使用HQL清洗数据 79
5.6.2 提取维度信息 82
5.7 定义Hive UDF封装处理逻辑 85
5.7.1 Hive UDF的开发、部署和调用 86
5.7.2 Python版本的UDF 89
5.8 使用左外连接构造聚合表rpt_job 92
5.9 让数据处理自动调度 96
5.9.1 HQL的几种执行方式 96
5.9.2 Hive Thrift服务 99
5.9.3 使用JDBC连接Hive 100
5.9.4 Python调用HiveServer服务 103
5.9.5 用crontab实现的任务调度 105
5.10 本章小结 107
第6章 大数据的存储 108
6.1 NoSQL及HBase简介 108
6.2 HBase中的主要概念 110
6.3 HBase客户端及JavaAPI 111
6.4 Hive数据导入HBase的两种方案 114
6.4.1 利用既有的JAR包实现整合 114
6.4.2 手动编写MapReduce程序 116
6.5 使用Java API查询HBase中的职位信息 122
6.5.1 为什么是HBase而非Hive 122
6.5.2 多条件组合查询HBase中的职位信息 123
6.6 如何显示职位表中的某条具体信息 132
6.7 本章小结 133
第7章 大数据的展示 134
7.1 概述 134
7.2 数据分析的一般步骤 135
7.3 用R来做数据分析展示 135
7.3.1 在Ubuntu上安装R 135
7.3.2 R的基本使用方式 137
7.4 用Hive充当R的数据来源 139
7.4.1 RHive组件 139
7.4.2 把R图表整合到Web页面中 145
7.5 本章小结 151
第8章 大数据的分析挖掘 152
8.1 基于Spark的数据挖掘技术 152
8.2 Spark和Hadoop的关系 153
8.3 在Ubuntu上安装Spark集群 154
8.3.1 JDK和Hadoop的安装 154
8.3.2 安装Scala 154
8.3.3 安装Spark 155
8.4 Spark的运行方式 157
8.5 使用Spark替代Hadoop Yarn引擎 160
8.5.1 使用spark-sql查看Hive表 160
8.5.2 在beeline客户端使用Spark引擎 161
8.5.3 在Java代码中引用Spark的ThriftServer 163
8.6 对招聘公司名称做全文检索 168
8.6.1 从HDFS数据源构造JavaRDD 169
8.6.2 使用Spark SQL操作RDD 173
8.6.3 把RDD运行结果展现在前端 174
8.7 如何把Spark用得更好 175
8.8 SparkR组件的使用 177
8.8.1 SparkR的安装及启动 177
8.8.2 运行自带的Sample例子 179
8.8.3 利用SparkR生成职位统计饼图 179
8.9 本章小结 181
第9章 自己动手搭建支撑大数据系统的云平台 182
9.1 云平台架构 182
9.1.1 一期云基础平台架构 182
9.1.2 二期云基础平台架构 184
9.2 云平台搭建及部署 185
9.2.1 安装组件前准备 185
9.2.2 Identity(Keystone)组件 190
9.2.3 Image(Glance)组件 198
9.2.4 Compute(Nova)组件 201
9.2.5 Storage(Cinder)组件 206
9.2.6 Networking(Neutron)组件 210
9.2.7 Ceph分布式存储系统 221
9.2.8 Dashboard(Horizon)组件 230
9.3 Identity(Keystone)与LDAP的整合 232
9.4 配置Image组件大镜像部署 235
9.5 配置业务系统无缝迁移 236
9.6 本章小结 237
参考文献 238
· · · · · · (收起)

读后感

☆☆☆☆☆

☆☆☆☆☆

☆☆☆☆☆

☆☆☆☆☆

☆☆☆☆☆

用户评价

☆☆☆☆☆

老实说,我是一个比较注重理论深度的读者,很多市面上的“速成”书籍往往只是停留在API调用的层面,让人知其然却不知其所以然。然而,这本著作的厉害之处在于,它在教授实践操作的同时,从未放松对底层原理的剖析。比如,在讲解分布式文件系统时,作者不仅展示了如何上传文件,更是深入剖析了数据块的划分、副本的冗余机制以及NameNode和DataNode之间的协作流程,甚至还涉及到了它们在处理高并发请求时的内部设计考量。这种深度讲解让我恍然大悟,原来我们日常使用的那些“黑科技”背后,竟然是如此精妙的工程学设计。我特别欣赏作者那种“刨根问底”的精神,他总是试图带领读者去探究每一个组件为什么要这样设计,而不是仅仅告诉你“它就是这样工作的”。对于我这种追求技术内核的工程师来说,这本书无疑是一本可以放在手边,时不时翻阅以加深理解的工具书,它提供的视角远超一般入门读物所能企及的高度。

☆☆☆☆☆

这本书真是让我受益匪浅!我一直对数据处理充满好奇,但总觉得大数据技术太高深莫测,像一个遥不可及的黑盒子。这本书的标题《自己动手做大数据系统》一下子就抓住了我的眼球,它承诺的“动手做”让我感到踏实和可行。从我翻开第一页开始,就被作者那种循序渐进的讲解方式深深吸引了。它没有上来就抛出复杂的理论模型,而是从最基础的架构搭建讲起,每一步都配有清晰的代码示例和详细的步骤说明。我记得有一次,我按照书里的指引配置了一个小型集群,虽然过程中遇到了一些小小的网络问题,但书中的故障排查建议真的帮了我大忙,让我感觉自己真的在亲手构建一个系统,而不是仅仅在阅读枯燥的文档。这种实践驱动的学习过程,极大地增强了我的信心,让我真正理解了数据是如何流动、存储和被处理的。这本书的价值在于它把一个庞大而复杂的领域,拆解成了可以被个体掌握和实现的小模块,是初学者迈入大数据世界的绝佳指南。

☆☆☆☆☆

这本书的叙事风格非常贴近一个经验丰富的导师在耳边耐心指导的感觉,丝毫没有那种冰冷的教科书式的说教感。阅读体验极其流畅,仿佛作者就是我的“技术搭子”。我特别喜欢它在引入新概念时所采用的类比手法。比如,描述数据分区策略时,它没有直接使用复杂的哈希函数定义,而是用了一个生活化的场景来比喻数据如何在不同的“仓库”中均匀存放,这极大地降低了我的认知负荷。更妙的是,书中每一个实践案例都仿佛是真实工作场景的缩影,作者会提前预设一些常见的性能瓶颈或潜在的错误,并教你如何用书中学到的知识去预见和解决它们。这种前瞻性的指导,让我学会了在动手之前先进行架构思考,而不是盲目地敲代码。这本书不仅仅教你如何“运行”大数据服务,更重要的是,它教会了你如何“思考”一个健壮的分布式系统应该如何构建,这种思维模式的培养,价值无法估量。

☆☆☆☆☆

我手里收藏了不少关于分布式计算的书籍,但很多要么是某个特定框架的官方手册的堆砌,要么就是过于偏向理论推导,让人望而却步。这本《自己动手做大数据系统》找到了一种近乎完美的平衡点。它避免了陷入单一技术栈的泥潭,而是以构建一个“系统”的宏观视角出发,贯穿了从数据采集、存储到分析的全链路。我印象深刻的是,书中对不同阶段的工具链进行了横向对比,比如在流处理部分,它清晰地阐述了不同流处理引擎的适用场景和权衡取舍。这种“系统观”的培养至关重要,它让我明白,大数据并非由某一个神奇的工具构成,而是一个由多个精心挑选和配置的组件协同工作的复杂生态。这本书成功地将这个庞大的生态系统,用一种模块化、可插拔的方式呈现出来,使得读者可以根据自身需求,灵活地进行技术选型和组合创新,而不是被某一家厂商的技术路线所束缚。

☆☆☆☆☆

这本书的排版和图示设计绝对是加分项,这对于需要理解复杂数据流动的技术书籍来说至关重要。很多技术书的图表往往是黑白、密密麻麻的流程框,让人看一眼就头疼。但在这本书里,所有的架构图都清晰明了,色彩运用得当,关键的数据流向和控制路径被高亮显示,即便是第一次接触分布式系统概念的人,也能通过这些直观的视觉辅助,迅速建立起系统的空间认知。我个人尤其欣赏作者对“时间线”的把控。在介绍复杂算法或协议时,他会先用一个简化的时间轴图来展示事件的先后顺序和并发点,然后再深入代码细节,这种“先宏观后微观”的阅读路径,极大地优化了我的理解效率。读完一章后,我常常会发现自己能在大脑中重构出那一模块的完整架构图,这得益于书中高质量的视觉引导,真正做到了图文并茂,相得益彰。

☆☆☆☆☆

2019 B46 是的 pm看不懂

☆☆☆☆☆

简明扼要,逻辑清晰,强烈推荐

☆☆☆☆☆

2019 B46 是的 pm看不懂

☆☆☆☆☆

2019 B46 是的 pm看不懂

☆☆☆☆☆

简明扼要,逻辑清晰,强烈推荐