| 作者 |
| 何震瀛 王鹏 李春静王宏志 |
| 丛书名 |
| 数据科学与工程技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9781912181640 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------大数据管理系统原理与技术--------------------------- 本书系统介绍了常用的面向大数据的数据库管理系统的原理和技术,包括关系数据库、非关系型数据库、HIVE、Hbase、Redies等,使读者在了解大数据的数据库管理系统基本原理的基础上,能根据实际的问题和应用场景选择、搭建适合的数据库管理系统。 ---------------------------大数据分析原理与实践--------------------------- 本书介绍大数据分析的多种模型、所涉及的算法和技术、实现大数据分析系统所需的工具以及大数据分析的具体应用。 本书共16章。第1章为绪论,阐释大数据、大数据分析等概念,并对本书内容进行概述;第2~7章介绍大数据分析模型的建立方法以及关联分析模型、分类分析模型、聚类分析模型、结构分析模型和文本分析模型;第8~11章介绍大数据分析所涉及的技术,包括数据预处理、降维、数据仓库、各种算法等;第12~14章介绍三种用于实现大数据分析算法的平台,即大数据计算平台、流式计算平台和大图计算平台;第15章和第16章介绍两类大数据分析的具体应用,分别讲述社交网络和推荐系统中的大数据分析。 本书可作为高等院校大数据分析相关课程的教材,也可以作为从事大数据相关工作的工程技术人员的参考用书。 |
| 目录 |
---------------------------大数据管理系统原理与技术--------------------------- 本书编委会 前言 第1章 绪论 1 1.1 大数据的基本概念 1 1.2 数据库管理系统 5 1.2.1 数据库管理系统的基本概念 5 1.2.2 数据库管理系统的发展历史 6 1.2.3 数据库管理系统的要素 10 1.3 大数据对数据库管理系统的需求和挑战 13 1.4 本书结构 14 第2章 关系型数据库管理系统 15 2.1 关系数据库概述 15 2.1.1 关系模型 15 2.1.2 关系数据的存储 17 2.1.3 关系数据库的索引 20 2.1.4 关系数据库中的查询处理算法 24 2.1.5 并发控制 25 2.1.6 数据库恢复 34 2.2 关系数据库MySQL概述 35 2.3 MySQL应用 36 2.3.1 SQL概述 36 2.3.2 数据定义语句 37 2.3.3 数据处理语句 38 2.3.4 事务和锁定声明 39 2.3.5 其他 45 2.4 存储过程 46 2.4.1 概述 46 2.4.2 建立存储过程 47 2.4.3 调用存储过程 49 2.4.4 查询存储过程 50 2.4.5 删除存储过程 50 2.5 视图 51 2.6 分区 53 2.7 复制 57 2.8 MySQL的Java客户端JDBC 62 2.8.1 JDBC概述 62 2.8.2 JDBC API 63 2.8.3 Java通过JDBC API操作MySQL 66 第3章 数据仓库Hive 72 3.1 数据仓库概述 72 3.1.1 数据仓库的概念和特征 72 3.1.2 数据仓库的体系结构 73 3.1.3 数据仓库的模型 74 3.1.4 数据仓库关键技术 77 3.1.5 数据仓库与大数据 79 3.2 Hive概述 80 3.2.1 Hive存储结构 80 3.2.2 Hive体系结构 82 3.2.3 Hive的任务执行流程 84 3.3 Hive的特征 85 3.3.1 一致性 86 3.3.2 可扩展性 86 3.3.3 事务 86 3.4 Hive的基本概念 87 3.4.1 基本数据类型 87 3.4.2 数据类型转换 89 3.4.3 复杂数据类型 90 3.4.4 文本文件数据编码 91 3.4.5 数据读取模式 92 3.4.6 文件格式与压缩 93 3.4.7 Hive压缩 93 3.4.8 Hive关键字 95 3.5 Hive的使用 97 3.5.1 Hive命令 97 3.5.2 Hive DDL 100 3.5.3 Hive DML 104 3.5.4 HiveQL基本查询 108 3.5.5 Hive函数 118 3.5.6 HiveQL高级查询 121 3.6 面向大数据的优化策略 133 3.6.1 分桶 134 3.6.2 视图和索引 136 3.6.3 模式设计 139 3.7 Hive的调优 144 3.7.1 使用EXPLAIN查看执行计划 145 3.7.2 Hive配置管理 147 3.7.3 限制调整 148 3.7.4 JOIN优化 149 3.7.5 本地模式 155 3.7.6 并行执行 157 3.7.7 严格模式 158 3.7.8 调整Mapper和Reducer个数 159 3.7.9 JVM重用 161 3.7.10 动态分区调整 162 3.7.11 推测执行 163 3.7.12 单个MapReduce中的多个GROUP BY 164 3.7.13 虚拟列 164 3.8 Java通过JDBC操作Hive 165 第4章 NoSQL概述 168 4.1 NoSQL与非关系型数据库 168 4.2 NoSQL数据模型 169 4.2.1 键值数据库 170 4.2.2 文档数据库 171 4.2.3 列族数据库 172 4.2.4 图数据库 173 4.2.5 四者对比 173 4.3 NoSQL数据库中的事务 174 4.3.1 CAP理论 174 4.3.2 BASE原则 175 4.3.3 一致性协议 176 4.4 NoSQL关键技术 177 4.4.1 NoSQL的技术原则 177 4.4.2 存储技术 178 4.4.3 数据划分技术 178 4.4.4 索引技术 179 第5章 键值数据库 182 5.1 模型结构 182 5.2 特征 183 5.2.1 一致性 183 5.2.2 可扩展性 183 5.2.3 事务 184 5.3 关键技术 184 5.3.1 索引技术 184 5.3.2 查询支持 186 5.4 Redis 186 5.4.1 Redis 数据类型 187 5.4.2 Redis的持久化 196 5.4.3 Redis事务 201 5.4.4 Redis的发布订阅 205 5.4.5 Redis的主从复制 208 5.5 Redis的Java客户端Jedis 213 5.5.1 Jedis所需要的jar包 214 5.5.2 Jedis常用操作 214 5.5.3 Jedis Pool 215 第6章 列族数据库 220 6.1 模型结构 220 6.2 特征 222 6.2.1 一致性 222 6.2.2 可用性 223 6.2.3 可扩展性 224 6.3 HBase应用 224 6.3.1 HBase数据模型 225 6.3.2 HBase体系结构 227 6.3.3 HBase基本Shell操作 232 6.3.4 HBase压缩 234 6.3.5 可用客户端Java 236 6.4 架构与设计 244 6.4.1 表设计规则 244 6.4.2 RowKey设计 245 6.4.3 列族的数量 248 6.4.4 版本的数量 248 6.5 HBase集成 248 6.5.1 HBase与Hive集成 249 6.5.2 MapReduce与HBase互操作 251 第7章 非关系型文档数据库 255 7.1 模型结构 255 7.2 特征 257 7.2.1 一致性 257 7.2.2 可扩展性 258 7.2.3 事务 260 7.2.4 可用性 261 7.3 MongoDB 261 7.3.1 概述 261 7.3.2 Mongo Shell 262 7.3.3 MongoDB基本操作 269 7.3.4 索引 276 7.3.5 副本集 279 7.3.6 分片 286 7.4 MongoDB的Java客户端 290 7.4.1 MongoDB驱动包的获得 290 7.4.2 Java操作举例 291 第8章 非关系型图数据库 296 8.1 图数据库 297 8.1.1 图模型的模型和定义 297 8.1.2 图数据库的应用 298 8.1.3 图管理的关键技术 299 8.2 Neo4j概述 302 8.2.1 Neo4j的特点 302 8.2.2 Neo4j的数据模型304 8.2.3 Neo4j关键技术 312 8.3 Neo4j的应用320 8.3.1 使用嵌入在Java应用程序中的Neo4j320 8.3.2 Neo4j的Java客户端环境配置 320 8.3.3 一个简单的小型图数据库例子 321 8.3.4 属性值 325 8.3.5 带索引的用户数据库 325 8.4 Neo4j的优化 331 8.4.1 索引 331 8.4.2 批量导入/导出 332 ---------------------------大数据分析原理与实践--------------------------- 序 前言 教学建议 第1章 绪论 1 1.1 什么是大数据 1 1.2 哪里有大数据 3 1.3 什么是大数据分析 4 1.4 大数据分析的过程、技术与难点 5 1.5 全书概览 8 小结 10 习题 10 第2章 大数据分析模型 11 2.1 大数据分析模型建立方法 11 2.2 基本统计量 13 2.2.1 全表统计量 14 2.2.2 皮尔森相关系数 15 2.3 推断统计 16 2.3.1 参数估计 16 2.3.2 假设检验 20 2.3.3 假设检验的阿里云实现 23 小结 28 习题 28 第3章 关联分析模型 30 3.1 回归分析 31 3.1.1 回归分析概述 31 3.1.2 回归模型的拓展 35 3.1.3 回归的阿里云实现 43 3.2 关联规则分析 52 3.3 相关分析 54 小结 57 习题 58 第4章 分类分析模型 60 4.1 分类分析的定义 60 4.2 判别分析的原理和方法 61 4.2.1 距离判别法 61 4.2.2 Fisher判别法 64 4.2.3 贝叶斯判别法 67 4.3 基于机器学习分类的模型 71 4.3.1 支持向量机 72 4.3.2 逻辑回归 74 4.3.3 决策树与回归树 75 4.3.4 k近邻 78 4.3.5 随机森林 78 4.3.6 朴素贝叶斯 81 4.4 分类分析实例 82 4.4.1 二分类实例 82 4.4.2 多分类实例 94 小结 101 习题 102 第5章 聚类分析模型 105 5.1 聚类分析的定义 105 5.1.1 基于距离的亲疏关系度量 105 5.1.2 基于相似系数的相似性度量 108 5.1.3 个体与类以及类间的亲疏关系度量 110 5.1.4 变量的选择与处理 111 5.2 聚类分析的分类 111 5.3 聚类有效性的评价 112 5.4 聚类分析方法概述 112 5.5 聚类分析的应用 113 5.6 聚类分析的阿里云实现 114 小结 119 习题 119 第6章 结构分析模型 122 6.1 最短路径 122 6.2 链接排名 123 6.3 结构计数 125 6.4 结构聚类 126 6.5 社团发现 128 6.5.1 社团的定义 128 6.5.2 社团的分类 128 6.5.3 社团的用途 128 6.5.4 社团的数学定义 128 6.5.5 基于阿里云的社团发现 130 小结 132 习题 133 第7章 文本分析模型 135 7.1 文本分析模型概述 135 7.2 文本分析方法概述 136 7.2.1 SplitWord 136 7.2.2 词频统计 137 7.2.3 TF-IDF 138 7.2.4 PLDA 140 7.2.5 Word2Vec 147 小结 148 习题 149 第8章 大数据分析的数据预处理 150 8.1 数据抽样和过滤 150 8.1.1 数据抽样 150 8.1.2 数据过滤 154 8.1.3 基于阿里云的抽样和过滤实现 154 8.2 数据标准化与归一化 157 8.3 数据清洗 159 8.3.1 数据质量概述 159 8.3.2 缺失值填充 160 8.3.3 实体识别与真值发现 162 8.3.4 错误发现与修复 169 小结 171 习题 171 第9章 降维 173 9.1 特征工程 173 9.1.1 特征工程概述 173 9.1.2 特征变换 175 9.1.3 特征选择 178 9.1.4 特征重要性评估 183 9.2 主成分分析 191 9.2.1 什么是主成分分析 191 9.2.2 主成分分析的计算过程 192 9.2.3 基于阿里云的主成分分析 194 9.2.4 主成分的表现度量 195 9.3 因子分析 196 9.3.1 因子分析概述 196 9.3.2 因子分析的主要分析指标 196 9.3.3 因子分析的计算方法 197 9.4 压缩感知 203 9.4.1 什么是压缩感知 203 9.4.2 压缩感知的具体模型 204 9.5 面向神经网络的降维 205 9.5.1 面向神经网络的降维方法概述 205 9.5.2 如何利用神经网络降维 206 9.6 基于特征散列的维度缩减 207 9.6.1 特征散列方法概述 207 9.6.2 特征散列算法 207 9.7 基于Lasso算法的降维 208 9.7.1 Lasso方法简介 208 9.7.2 Lasso方法 209 9.7.3 Lasso算法的适用情景 211 小结 211 习题 212 第10章 面向大数据的数据仓库系统 214 10.1 数据仓库概述 214 10.1.1 数据仓库的基本概念 214 10.1.2 数据仓库的内涵 215 10.1.3 数据仓库的基本组成 215 10.1.4 数据仓库系统的体系结构 216 10.1.5 数据仓库的建立 217 10.2 分布式数据仓库系统 221 10.2.1 基于Hadoop的数据仓库系统 221 10.2.2 Shark:基于Spark的数据仓库系统 227 10.2.3 Mesa 228 10.3 内存数据仓库系统 231 10.3.1 SAP HANA 231 10.3.2 HyPer 234 10.4 阿里云数据仓库简介 236 小结 238 习题 239 第11章 大数据分析算法 240 11.1 大数据分析算法概述 240 11.2 回归算法 242 11.3 关联规则挖掘算法 248 11.4 分类算法 255 11.4.1 二分类算法 256 11.4.2 多分类算法 273 11.5 聚类算法 283 11.5.1 k-means算法 283 11.5.2 CLARANS算法 291 小结 293 习题 293 第12章 大数据计算平台 295 12.1 Spark 295 12.1.1 Spark简介 295 12.1.2 基于Spark的大数据分析实例 296 12.2 Hyracks 299 12.2.1 Hyracks简介 299 12.2.2 基于Hyracks的大数据分析实例 299 12.3 DPark 305 12.3.1 DPark简介 305 12.3.2 基于DPark的大数据分析实例 306 12.4 HaLoop 308 12.4.1 HaLoop简介 308 12.4.2 基于HaLoop的大数据分析实例 308 12.5 MaxCompute 309 12.5.1 MaxCompute简介 309 12.5.2 MaxCompute实战案例介绍 310 12.5.3 基于MaxCompute的大数据分析实例 316 12.5.4 MaxCompute的现状及前景 320 小结 321 习题 321 第13章 流式计算平台 322 13.1 流式计算概述 322 13.1.1 流式计算的定义 322 13.1.2 流式计算的应用 322 13.1.3 流式计算平台的发展 324 13.2 Storm 324 13.2.1 Storm简介 324 13.2.2 Storm的结构 325 13.2.3 基于Storm的大数据分析实例 326 13.3 分布式流处理系统Samza 331 13.3.1 Samza简介 331 13.3.2 Samza的原理 332 13.3.3 基于Samza的大数据分析实例 334 13.4 Cloud Dataflow 339 13.4.1 Cloud Dataflow简介 339 13.4.2 Cloud Dataflow开发模型 340 13.4.3 Cloud Dataflow的应用实例 340 13.5 阿里云StreamCompute 341 13.5.1 阿里云StreamCompute的原理 341 13.5.2 基于StreamCompute的实时数据统计 342 13.5.3 订单统计实例 347 小结 348 习题 349 第14章 大图计算平台 350 14.1 大图计算框架概述 350 14.2 GraphLab 350 14.2.1 GraphLab的计算模型 350 14.2.2 基于GraphLab的大图分析实例 351 14.3 Giraph 353 14.3.1 Giraph简介 353 14.3.2 Giraph的原理 353 14.3.3 Giraph的应用 354 14.3.4 基于Giraph的大图分析实例 354 14.4 Neo4j 358 14.4.1 Neo4j简介 358 14.4.2 基于Noe4j的大图分析实例 359 14.5 Apache Hama 360 14.5.1 Apache Hama简介 360 14.5.2 Apache Hama的结构 361 14.5.3 Apache Hama的工作原理 362 14.6 MaxCompute Graph 363 14.6.1 MaxCompute Graph的原理 363 14.6.2 MaxCompute Graph的使用与配置方法 364 14.5.3 基于MaxCompute Graph的大图分析实例 371 小结 376 习题 377 第15章 社交网络 378 15.1 为社交网络建模 378 15.1.1 社交网络概述 378 15.1.2 社交图 378 15.2 社交网络的结构 379 15.2.1 社交网络的统计学构成 379 15.2.2 社交网络的群体形成 381 15.3 基于社交网络语义分析的利益冲突发现 382 15.4 社交网络中的社区发现 384 15.4.1 动态社交网络中的社区识别框架 384 15.4.2 基于经验比对算法的网络社区检测 387 15.5 社交网络中的关联分析 388 15.5.1 社交网络中的关系强度模型 388 15.5.2 社交网络中“正向链接”与“负向链接”的预测 391 15.6 社交网络中的影响力预测 393 15.7 基于阿里云的社团发现实例 396 小结 403 习题 403 第16章 推荐系统 405 16.1 推荐系统概述 405 16.2 协同过滤 408 16.2.1 协同过滤简介 408 16.2.2 面向物品的协同过滤算法 408 16.2.3 改进的最近邻法 410 16.2.4 集成协同过滤方法 412 16.3 基于用户评价的推荐 413 16.4 基于人的推荐 415 16.4.1 基于用户偏好学习的在线推荐 415 16.4.2 混合推荐系统 418 16.5 基于标记的推荐 422 16.6 社交网络中的推荐 423 16.6.1 基于信号的社交网络推荐 423 16.6.2 基于在线主题的社交网络推荐 425 16.7 基于阿里云的个性推荐系统搭建 427 小结 439 习题 439 参考文献 441 附录 |