科技>计算机>网络与互联网
剑指大数据——企业级数据仓库项目实战(电商版)  

剑指大数据——企业级数据仓库项目实战(电商版)  "

作者:尚硅谷教育
ISBN:9787121440403
定价:¥168.0
字数:1117千字
页数:564
出版时间:2022-08
开本:16开
版次:01-01
装帧:
出版社:电子工业出版社
简介

本书按照需求规划、需求实现、可视化的流程进行编排,通过项目开发的主要流程,介绍数据仓库的搭建过程。在整个数据仓库的搭建过程中,本书介绍了主要组件的安装部署、需求实现的具体思路,以及各种问题的解决方案等,并在其中穿插了许多与大数据和数据仓库相关的理论知识,包括数据仓库的概念、电商业务概述、数据仓库理论和数据仓库建模等。 本书共14章,其中,第1~3章是项目的前期准备阶段,主要介绍了数据仓库的概念和搭建需求,并初步搭建了本数据仓库项目所需的基本环境;第4~7章是项目的核心部分,详细介绍了数据仓库的建模理论,并完成了数据从采集到分层搭建的全过程,是本书的重点部分;第8~14章是对数据治理各功能模块的实现,针对数据治理的不同功能需求分模块进行实现。 本书适合具有一定编程基础并对大数据感兴趣的读者阅读。通过学习本书,读者可以快速了解数据仓库,全面掌握数据仓库相关技术。

前言

前言 数据仓库一直是大数据领域不可逾越的概念。每分每秒,全世界的各个地方都在生成不计其数的数据。这些数据生成出来,不被处理的时候就像一堆砖瓦沙石,占用空间且没有任何价值。想要从数据中提取出价值,就必须对数据进行抽取、组织、分析、展示,将无序的砖瓦沙石组织构建成高楼大厦。 数据仓库就是对无序海量数据进行组织构建后的产物。 尚硅谷教育出版的《大数据分析——数据仓库项目实战》一书带领读者搭建了一个小有规模的数据仓库。通过搭建数据仓库,我们掌握了服务器的搭建和配置、众多大数据组件工具的使用、海量数据的采集分析和展示等知识。更重要的是,我们知道了若想启动一个项目,要经过需求分析、架构设计、需求实现、结果展示等流程。但是读者也深知,技术的发展是何其迅速,一本讲数据仓库的书并不能道尽所有相关知识和技术。所以在深入了解数据仓库相关技术的发展现状、多方调研数据仓库的理论知识之后,我们的教研团队将《大数据分析——数据仓库项目实战》全面升级,编写了这本《剑指大数据——企业级数据仓库项目实战(电商版)》。 本书全面升级了数据仓库的指标体系,根据现有更新、更流行的技术栈升级了数据仓库的总体架构,深入讲解了现有的数据仓库理论体系,增加了数据治理环节。以上的种种升级,我们都进行了反复调研和测试,力求用理论指导实践,技术框架不落人后,需求实现经得起推敲。 永远追求更适合、关注度更高的技术是我们教研团队的准则。在本书中,我们重新调整了数据仓库的整体架构,应用了更新版本的数据采集工具和数据治理工具等。大数据发展至今,各种技术框架层出不穷,当读者需要使用某一个新框架时,常常会面临如何选择版本、功能都有哪些、与现有框架是否兼容、如何安装调试等问题。本书选用的所有技术框架,均经过了教研团队的充分调研,为数据仓库项目配备了一整套数据治理解决方案。这些框架的兼容性已经得到验证,并且本书给出了详尽的安装配置过程,读者可以放心使用。技术的发展是永无止境的,我们也永远不会停下研究新技术、新知识的脚步。 相信每位读者在想深入了解数据仓库的理论体系时,都会感觉到,各家理论各擅胜场,可谓百家争鸣,那么读者该如何选择合适的理论知识指导自己的数据仓库项目的建设呢?理论没有最好的,只有最合适的。在正式开始数据仓库架构的搭建之前,本书完整讲解了一套适用本电商数据仓库项目的理论体系。在理论体系中,有重点概念的讲解,辅以恰当的案例图片,并最终给出根据该理论体系搭建数据仓库的完整步骤。 本书共14章,其中,第1~3章是项目的前期准备阶段,主要介绍了数据仓库的概念和演进过程、本数据仓库项目将要实现的搭建需求,并初步搭建了本数据仓库项目所需的基本环境;第4~7章是项目的核心部分,重点讲解了数据仓库的建模理论,并完成了数据从采集到分层搭建的全过程;第8~14章是对数据治理各功能模块的实现,包括即席查询、集群监控、安全认证、权限管理等,并对众多的大数据框架进行了讲解,读者可以通过本部分内容查阅实现数据治理的不同功能的经典框架。 阅读本书要求读者具备一定的编程基础,至少掌握一门编程语言(如Java)和SQL查询语言。如果读者对大数据的基本框架(如Hadoop、Hive等)有一定了解,那么学习本书将事半功倍。读者如果不具备以上条件,则可以关注“尚硅谷教育”公众号,免费获取相关学习资料。 本书涉及的所有安装包、源码及视频课程资料,均可以通过关注“尚硅谷教育”公众号,回复“电商数仓”关键字免费获取。 感谢电子工业出版社的李冰编辑在本书编写过程中给予的指导,也感谢所有为本书的编写提供技术支持的老师。 关于我们 尚硅谷是一家专业的IT教育培训机构,现拥有北京、深圳、上海、武汉、西安5处分校,开设JavaEE、大数据、HTML5前端、UI/UE设计等多门课程,累计发布的视频教程超3000小时,广受赞誉。通过面授课程、视频分享、在线学习、直播课堂、图书出版等多种方式,满足了编程爱好者对多样化学习场景的需求。 尚硅谷一直坚持“技术为王”的发展理念,设有独立的研究院,与多家互联网大型企业的研发团队保持技术交流,保障教学内容始终基于研发一线,坚持聘用名校名企的技术专家进行技术讲解。 希望通过我们的努力,帮助更多需要帮助的人,让天下没有难学的技术,为中国的软件人才培养尽一点绵薄之力。 尚硅谷教育

目录

目录 第1章 数据仓库概论 1 1.1 数据仓库的概念与特点 1 1.2 数据仓库的演进过程 2 1.3 数据仓库技术 3 1.4 数据仓库基本架构 5 1.5 数据库和数据仓库的区别 8 1.6 学前导读 9 1.6.1 学习的基础要求 9 1.6.2 你将学到什么 9 1.7 本章总结 10 第2章 项目需求描述 11 2.1 前期调研 11 2.2 项目架构分析 12 2.2.1 电商数据仓库产品描述 12 2.2.2 系统功能结构 13 2.2.3 系统流程图 14 2.3 项目业务概述 14 2.3.1 采集模块业务描述 14 2.3.2 数据仓库需求业务描述 15 2.3.3 数据可视化业务描述 17 2.3.4 即席查询业务描述 17 2.3.5 数据治理业务描述 18 2.4 系统运行环境 19 2.4.1 硬件环境 19 2.4.2 软件环境 20 2.5 本章总结 22 第3章 项目部署的环境准备 23 3.1 Linux环境准备 23 3.1.1 VMware安装 23 3.1.2 CentOS安装 23 3.1.3 远程终端安装 31 3.2 Linux环境配置 35 3.2.1 网络配置 35 3.2.2 网络IP地址配置 36 3.2.3 主机名配置 36 3.2.4 防火墙配置 37 3.2.5 一般用户设置 38 3.3 Hadoop环境搭建 38 3.3.1 虚拟机环境准备 38 3.3.2 JDK安装 43 3.3.3 Hadoop安装 44 3.3.4 Hadoop分布式集群部署 45 3.4 本章总结 51 第4章 用户行为数据采集模块 52 4.1 日志生成 52 4.1.1 数据埋点 52 4.1.2 用户行为日志内容 52 4.1.3 用户行为日志格式 54 4.1.4 数据模拟 58 4.2 消息队列Kafka 61 4.2.1 ZooKeeper安装 61 4.2.2 ZooKeeper集群启动、停止脚本 63 4.2.3 Kafka安装 64 4.2.4 Kafka Eagle安装 65 4.2.5 Kafka集群启动、停止脚本 67 4.2.6 Kafka topic相关操作 68 4.3 采集日志的Flume 68 4.3.1 Flume组件 69 4.3.2 Flume安装 69 4.3.3 采集日志的Flume配置 70 4.3.4 Flume的拦截器 71 4.3.5 采集日志的Flume启动、停止脚本 75 4.4 消费日志的Flume 76 4.4.1 消费日志的Flume配置 77 4.4.2 时间戳拦截器 78 4.4.3 消费日志的Flume启动、停止脚本 80 4.4.4 数据通道测试 81 4.5 采集通道启动、停止脚本 81 4.6 本章总结 83 第5章 业务数据采集模块 84 5.1 电商业务概述 84 5.1.1 电商业务流程 84 5.1.2 电商常识 85 5.1.3 电商业务表结构 85 5.1.4 数据同步策略 95 5.1.5 数据同步工具选择 97 5.2 业务数据采集 97 5.2.1 MySQL安装 97 5.2.2 业务数据生成 99 5.2.3 业务数据模型梳理 102 5.2.4 DataX安装 106 5.2.5 Maxwell安装 108 5.2.6 全量同步 112 5.2.7 增量同步 122 5.3 本章总结 130 第6章 数据仓库搭建模块 131 6.1 数据仓库理论准备 131 6.1.1 数据建模概述 131 6.1.2 关系模型与范式理论 132 6.1.3 维度模型 135 6.1.4 维度建模理论之事实表 136 6.1.5 维度建模理论之维度表 139 6.1.6 雪花模型、星形模型与星座模型 142 6.2 数据仓库建模实践 144 6.2.1 名词概念 144 6.2.2 为什么要分层 145 6.2.3 数据仓库搭建流程 146 6.2.4 数据仓库开发规范 153 6.3 数据仓库搭建环境准备 157 6.3.1 Hive安装 157 6.3.2 Hive on Spark配置 160 6.3.3 YARN容量调度器并发度问题 162 6.3.4 数据仓库开发环境配置 162 6.3.5 模拟数据准备 166 6.3.6 常用函数 168 6.3.7 复杂数据类型 169 6.4 数据仓库搭建——ODS层 170 6.4.1 用户行为数据 171 6.4.2 ODS层用户行为数据导入脚本 172 6.4.3 业务数据 173 6.4.4 ODS层业务数据导入脚本 183 6.5 数据仓库搭建——DIM层 186 6.5.1 商品维度表(全量) 186 6.5.2 优惠券维度表(全量) 189 6.5.3 活动维度表(全量) 191 6.5.4 地区维度表(全量) 193 6.5.5 时间维度表(特殊) 194 6.5.6 用户维度表(拉链表) 195 6.5.7 DIM层首日数据装载脚本 199 6.5.8 DIM层每日数据装载脚本 199 6.6 数据仓库搭建——DWD层 199 6.6.1 交易域加购物车事务事实表 200 6.6.2 交易域下单事务事实表 204 6.6.3 交易域取消订单事务事实表 209 6.6.4 交易域支付成功事务事实表 214 6.6.5 交易域退单事务事实表 220 6.6.6 交易域退款成功事务事实表 224 6.6.7 交易域购物车周期快照事实表 227 6.6.8 工具域优惠券领取事务事实表 228 6.6.9 工具域优惠券使用(下单)事务事实表 229 6.6.10 工具域优惠券使用(支付)事务事实表 230 6.6.11 互动域收藏事务事实表 232 6.6.12 互动域评价事务事实表 233 6.6.13 流量域页面浏览事务事实表 235 6.6.14 流量域启动事务事实表 238 6.6.15 流量域动作事务事实表 240 6.6.16 流量域曝光事务事实表 243 6.6.17 流量域错误事务事实表 245 6.6.18 用户域注册事务事实表 248 6.6.19 用户域登录事务事实表 251 6.6.20 DWD层首日业务数据装载脚本 254 6.6.21 DWD层每日业务数据装载脚本 254 6.7 数据仓库搭建——DWS层 255 6.7.1 最近1日汇总表 256 6.7.2 最近n日汇总表 269 6.7.3 历史至今汇总表 279 6.8 数据仓库搭建——ADS层 283 6.8.1 流量主题指标 283 6.8.2 用户主题指标 286 6.8.3 商品主题指标 294 6.8.4 交易主题指标 302 6.8.5 优惠券主题指标 306 6.8.6 活动主题指标 307 6.8.7 ADS层数据导入脚本 307 6.9 数据模型评估及优化 308 6.10 本章总结 308 第7章 DolphinScheduler全流程调度 309 7.1 DolphinScheduler概述与安装部署 309 7.1.1 DolphinScheduler概述 309 7.1.2 DolphinScheduler安装部署 310 7.2 创建MySQL数据库和表 317 7.3 DataX数据导出 322 7.4 全流程调度 329 7.4.1 数据准备 329 7.4.2 全流程调度配置 330 7.5 电子邮件报警 337 7.5.1 注册邮箱 337 7.5.2 配置电子邮件报警 339 7.6 本章总结 341 第8章 数据可视化模块 342 8.1 Superset部署 342 8.1.1 环境准备 342 8.1.2 Superset安装 344 8.2 Superset使用 347 8.2.1 对接MySQL数据源 347 8.2.2 制作仪表盘 350 8.3 Superset实战 354 8.3.1 制作柱状图 354 8.3.2 制作旭日图 355 8.3.3 制作桑基图 357 8.3.4 合成仪表盘页面 358 8.4 ECharts可视化 359 8.5 本章总结 361 第9章 即席查询模块 362 9.1 Presto 362 9.1.1 Presto简介 362 9.1.2 Presto安装 363 9.1.3 Presto优化之数据存储 367 9.1.4 Presto优化之SQL查询语句 367 9.1.5 Presto注意事项 368 9.2 Kylin 368 9.2.1 Kylin简介 368 9.2.2 HBase安装 370 9.2.3 Kylin安装 371 9.2.4 Kylin使用 373 9.2.5 Kylin Cube构建原理 384 9.2.6 Kylin Cube存储原理 387 9.2.7 Kylin Cube构建优化 388 9.2.8 Kylin BI工具集成 392 9.3 即席查询框架对比 398 9.4 本章总结 399 第10章 集群监控模块 400 10.1 Zabbix入门 400 10.2 Zabbix部署 401 10.2.1 集群规划 401 10.2.2 准备工作 401 10.2.3 配置Zabbix yum源 402 10.2.4 安装并配置Zabbix 404 10.2.5 启动、停止Zabbix 405 10.3 Zabbix使用 409 10.3.1 术语介绍 410 10.3.2 Zabbix实战 410 10.3.3 创建模板 422 10.4 Grafana 427 10.4.1 Grafana安装部署 427 10.4.2 快速入门 428 10.4.3 集成Zabbix 430 10.5 本章总结 439 第11章 安全认证模块 440 11.1 Kerberos入门 440 11.1.1 Kerberos概述 440 11.1.2 Kerberos认证原理 440 11.2 Kerberos安装 441 11.2.1 安装Kerberos相关服务 441 11.2.2 修改配置文件 441 11.2.3 初始化KDC数据库 442 11.2.4 修改管理员权限配置文件 442 11.2.5 启动Kerberos相关服务 443 11.2.6 创建Kerberos管理员用户 443 11.3 Kerberos操作 443 11.3.1 Kerberos数据库操作 443 11.3.2 Kerberos认证操作 444 11.4 Hadoop集成Kerberos 444 11.4.1 创建Hadoop系统用户 444 11.4.2 为Hadoop各服务创建Kerberos主体(Principal) 445 11.4.3 修改Hadoop配置文件 448 11.4.4 配置HDFS使用HTTPS协议 452 11.4.5 配置YARN使用LinuxContainerExecutor 453 11.5 在安全认证模式下启动Hadoop集群 455 11.5.1 修改本地特定路径访问权限 455 11.5.2 启动HDFS 456 11.5.3 修改HDFS特定路径访问权限 457 11.5.4 启动YARN 458 11.5.5 启动HistoryServer 458 11.6 在安全认证模式下操作Hadoop集群 459 11.6.1 用户要求 459 11.6.2 HDFS操作 459 11.6.3 MapReduce任务提交 463 11.7 Hive集成Kerberos 463 11.7.1 配置要求 463 11.7.2 配置认证 464 11.7.3 启动HiveServer2服务 465 11.8 在安全认证模式下操作Hive 465 11.8.1 Beeline客户端 465 11.8.2 DataGrip客户端 465 11.9 在安全认证模式下执行数据仓库全流程调度 469 11.9.1 用户准备 469 11.9.2 修改数据采集通道 470 11.9.3 修改数据仓库各层脚本 473 11.9.4 修改数据导出DataX配置文件 474 11.9.5 修改HDFS特定路径的所有者 477 11.9.6 全流程数据准备 477 11.9.7 DolphinScheduler集成Kerberos 478 11.9.8 全流程调度 479 11.10 Presto集成Kerberos 482 11.10.1 用户准备 482 11.10.2 创建HTTPS协议所需的密钥对 482 11.10.3 修改Presto Coordinator配置文件 483 11.10.4 修改Hive Connector配置文件 483 11.10.5 配置客户端Kerberos主体到用户名之间的映射规则 483 11.10.6 配置Presto代理用户 484 11.10.7 重启Presto集群 484 11.10.8 在安全认证模式下操作Presto 485 11.11 Kylin集成Kerberos 485 11.11.1 Kerberos集成HBase 485 11.11.2 Kerberos集成Kylin 487 11.12 本章总结 488 第12章 权限管理模块 489 12.1 Ranger入门 489 12.1.1 Ranger概述 489 12.1.2 Ranger架构原理 489 12.2 Ranger安装部署 490 12.2.1 RangerAdmin安装与配置 490 12.2.2 RangerUsersync安装与配置 493 12.2.3 Ranger Hive-plugin安装与配置 495 12.3 使用Ranger对Hive进行权限管理 501 12.3.1 权限控制初体验 501 12.3.2 Ranger的权限管理模型 503 12.4 本章总结 503 第13章 元数据管理模块 504 13.1 Atlas入门 504 13.1.1 元数据管理概述 504 13.1.2 Atlas概述 505 13.1.3 Atlas架构原理 505 13.2 Atlas安装及启动 506 13.2.1 安装前环境准备 507 13.2.2 集成外部框架 509 13.2.3 Atlas Server配置 509 13.2.4 Kerberos相关配置 510 13.2.5 Atlas集成Hive 510 13.2.6 Atlas启动 511 13.3 Atlas使用 512 13.3.1 Hive元数据初次全量导入 512 13.3.2 Hive元数据增量同步 513 13.3.3 编译Atlas源码包 516 13.4 本章总结 518 第14章 数据质量 519 14.1 数据质量管理概述 519 14.1.1 数据质量管理定义 519 14.1.2 数据质量评估 519 14.2 数据质量监控需求 520 14.3 开发环境准备 520 14.3.1 Python环境准备 520 14.3.2 初始化MySQL环境 526 14.4 编写及集成检查规则脚本 528 14.4.1 编写检查规则脚本 528 14.4.2 集成检查规则脚本 535 14.5 编写报警脚本 537 14.6 调度模块 541 14.6.1 在Worker节点上安装MySQL客户端 541 14.6.2 配置工作流 542 14.7 可视化模块 547 14.8 本章总结 552

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个