在数字化浪潮席卷各行各业的今天,数据已成为企业最核心的资产之一。然而,对于众多开发者而言,如何从零构建一个专业、稳定且可扩展的统计系统,始终是一道难以跨越的门槛。市面上成熟的第三方工具如友盟统计虽功能强大,但在隐私合规、定制化需求及成本控制方面往往存在局限。本课程《6天开发属于自己的友盟统计系统》正是为了解决这一痛点而生,旨在引导学员通过6天的系统训练,掌握从业务建模到日志采集、从数据存储到前端展示的全链路开发能力,最终搭建起一套完全自主可控的统计分析平台。

课程开篇即立足于“大数据应用案例”的实战视角,并未直接陷入代码细节,而是花大量篇幅梳理项目业务模型与核心术语。这种由宏观到微观的引入方式,帮助学员建立起清晰的领域知识体系,明白统计系统背后的业务逻辑远比技术实现更为重要。随后,课程深入底层,重点讲解日志实体类的设计,特别是“日志聚合体”的概念,这是解决高并发场景下数据碎片化问题的关键。为了让系统更具工程化规范,课程还详细剖析了DictUtil缓存设置与LogUtil日志工具的内省生成机制,包括设备号的唯一标识生成及时间戳的处理策略,这些细节决定了系统的健壮性与准确性。

值得注意的是,本系列课程强调“代码改造”而非“造轮子”。通过对简单日志和复杂日志的代码重构演示,学员将学习如何将分散的埋点数据标准化、结构化,并通过初始化收集日志Web模块实现数据的统一接入。这种基于现有框架进行二次开发的思路,既降低了学习曲线,又贴合企业实际开发场景。虽然提供的目录信息仅展示了第一天的部分章节,但从标题可见,课程将逐日推进,预期涵盖数据采集、清洗、存储、可视化等完整环节。

对于希望深入理解大数据底层原理、提升全栈开发能力的工程师而言,这门体系课提供了一个极佳的实践范本。它不仅教授技术栈的使用,更传授一种“造火箭”的工程思维——如何设计可扩展的数据管道,如何处理海量日志的并发压力,以及如何通过自研系统满足个性化的分析需求。完成本课程后,学员将不再满足于使用黑盒化的第三方服务,而是具备独立交付企业级统计系统的能力,这对于职业竞争力的提升具有显著价值。

课程目录

1-1 [大数据应用案例day01] 01.项目业务模型介绍 (46:38)
1-2 [大数据应用案例day01] 02.项目业务术语 (46:55)
1-3 [大数据应用案例day01] 03.案例日志实体类设计-日志聚合体 (48:26)
1-4 [大数据应用案例day01] 04.案例DictUtil工具-缓存设置 (20:57)
1-5 [大数据应用案例day01] 05.案例LogUtil-内省生成log对象 (13:07)
1-6 [大数据应用案例day01] 06.案例LogUtil-处理设备号-生成时间 (18:13)
1-7 [大数据应用案例day01] 07.案例LogUtil-简单日志和复杂日志代码改造 (09:38)
1-8 [大数据应用案例day01] 08.案例初始化收集日志web模块 (10:30)
1-9 [大数据应用案例day01] 09.案例安装到maven仓库-引入公共模块 (06:52)
1-10 [大数据应用案例day01] 10.案例配置web模块-运行 (06:21)
1-11 [大数据应用案例day01] 11.案例调试web模块-公共模块集成问题-注解问题 (24:18)
1-12 [大数据应用案例day01] 12.案例web模块的client地址信息处理 (40:00)
1-13 [大数据应用案例day01] 13.案例colllog-web模块更新地址 (02:16)
1-14 [大数据应用案例day01] 14.案例client与服务器时间对齐问题 (28:51)
2-1 [大数据应用案例day02] 01.Centos下tomcat安装 (20:23)
2-2 [大数据应用案例day02] 02.Centos下tomcat安装过程 (02:30)
2-3 [大数据应用案例day02] 03.导出Web模块为war包部署到Tomcat中 (13:10)
2-4 [大数据应用案例day02] 04.Nginx简介-win7下nginx的安装 (23:08)
2-5 [大数据应用案例day02] 05.Nginx在centos下的安装与验证 (04:14)
2-6 [大数据应用案例day02] 06.Nginx进程停止处理 (04:21)
2-7 [大数据应用案例day02] 07.Nginx配置win7反向代理服务器-验证 (30:29)
2-8 [大数据应用案例day02] 08.NginxPost提交方式支持配置 (27:10)
2-9 [大数据应用案例day02] 09.安装Nginx与lua插件集成版 (13:12)
2-10 [大数据应用案例day02] 10.Centos安装openresty (06:02)
2-11 [大数据应用案例day02] 11.Centos配置openresty (10:58)
2-12 [大数据应用案例day02] 12.程序修改ClientTime为client (04:54)
2-13 [大数据应用案例day02] 13.考察Openresty的是否捕捉真实ip (04:59)
2-14 [大数据应用案例day02] 14.准备Kafka集群创建kafka主题 (08:13)
2-15 [大数据应用案例day02] 15.配置Flume收集日志文件 (08:12)
2-16 [大数据应用案例day02] 16.滚动Nginx日志脚本 (09:08)
2-17 [大数据应用案例day02] 17.配置Centos crontab调度作业 (08:15)
2-18 [大数据应用案例day02] 18.配置Flume收集数据kafka到hdfs (24:02)
3-1 [大数据应用案例day03] 01.Hive数据库表创建以及加载数据到hive表中 (33:16)
3-2 [大数据应用案例day03] 02.Hive5张日志子表的准备工作1 (02:40)
3-3 [大数据应用案例day03] 03.代码生成ddl语句-创建5张日志子表 (17:36)
3-4 [大数据应用案例day03] 04.Hive UDTF (25:48)
3-5 [大数据应用案例day03] 05.Hive日志叉分函数使用UDTF实现 (44:19)
3-6 [大数据应用案例day03] 06.Hive日志叉分函数startuplog切分 (10:59)
3-7 [大数据应用案例day03] 07.Hive ObjectInspector (24:42)
3-8 [大数据应用案例day03] 08.Hive分叉函数超类实现 (42:52)
3-9 [大数据应用案例day03] 09.从日志聚合体叉分出启动日志数据函数的实现 (01:03:25)
3-10 [大数据应用案例day03] 10.日志叉分函数的抽象复用处理 (48:12)
4-1 [大数据应用案例day04] 01.创建分区表-动态不严格分区parquet格式 (24:31)
4-2 [大数据应用案例day04] 02.修改函数解决字段-重复的问题 (05:09)
4-3 [大数据应用案例day04] 03.注册udf函数-解决类找不到问题 (51:14)
4-4 [大数据应用案例day04] 04.编写叉分所有日志的脚本格式清楚-测试 (23:27)
4-5 [大数据应用案例day04] 05.自定义-日期格式化函数 (22:09)
4-6 [大数据应用案例day04] 06.修改脚本-使用自定日期格式化函数 (05:20)
4-7 [大数据应用案例day04] 07.编写load数据到Hive原生表供调度使用 (40:50)
4-8 [大数据应用案例day04] 08.启动所有组件-实现数据流转 (23:16)
4-9 [大数据应用案例day04] 09.编写日志叉分脚本和测试 (23:34)
4-10 [大数据应用案例day04] 10.Azkaban服务器和执行安装与配置-测试 (30:09)
5-1 [大数据应用案例day05] 01.Azkaban job编写-工作原理 (38:45)
5-2 [大数据应用案例day05] 02.分析App新增用户数的查询实现 (31:45)
5-3 [大数据应用案例day05] 03.时间起始时刻函数-实现工具类 (24:46)
5-4 [大数据应用案例day05] 04.起始函数的编写 (21:16)
5-5 [大数据应用案例day05] 05.函数名称的处理-防控制问题 (13:02)
5-6 [大数据应用案例day05] 06.Azkaban单独测试单个job执行 (25:27)
5-7 [大数据应用案例day05] 07.配置Azkaban调度运行 (14:13)
5-8 [大数据应用案例day05] 08.实现日新查询的结果入表 (20:43)
5-9 [大数据应用案例day05] 09.Azkaban job实现日新的统计-表生成 (21:01)
5-10 [大数据应用案例day05] 10.导出统计数据到MySQL-配置Azkaban (29:01)
6-1 [大数据应用案例day06] 01.关于Linux时间-azkaban时区设置 (15:36)
6-2 [大数据应用案例day06] 02.SSM实现umeng可视化程序 (46:10)
6-3 [大数据应用案例day06] 03.数据展示-使用Echart实现可视化 (24:54)
6-4 [大数据应用案例day06] 04.SSM7天内日新用户数 (24:31)
6-5 [大数据应用案例day06] 05.Azkaban noop操作-flow生成法则 (11:20)
6-6 [大数据应用案例day06] 06.改造脚本-指定load数据的具体时间值 (05:55)
6-7 [大数据应用案例day06] 07.运行生成N天前数据 (28:06)
6-8 [大数据应用案例day06] 08.查询N天-日新程序 (05:39)
6-9 [大数据应用案例day06] 09.Flume限速拦截器 (18:37)
6-10 [大数据应用案例day06] 10.Flume自定义exec源-避免重复收集丢数据 (01:30:15)