知行教育项目介绍

项目一:大数据数仓项目

项目名称:知行教育数仓项目

项目架构:

数据源:电咨、线下面授、在线教育等OLTP系统的数据,大多存储于mysql。
数据抽取:使用sqoop实现关系型数据库和大数据集群的双向同步。 数据存储:HDFS
数据清洗:数据的清洗、转换、统计分析等都是使用基于CM管理的Hive来进行的。
数据分析:数据的清洗、转换、统计分析等都是使用基于CM管理的Hive来进行的。
数据同步:使用sqoop实现关系型数据库和大数据集群的双向同步。 OLAP数据服务:采用常用的Mysql数据库。

在这里插入图片描述

开发环境:
jdk:Jdk1.8
Scala:2.11.8
CDH6.2.1: zookeeper-3.4.5-cdh6.2.1、hadoop-3.0.0-cdh6.2.1,hive-2.1.1-cdh6.2.1、hue-4.3.0-cdh6.2.1
Sqoop:sqoop-1.4.7-cdh6.2.1
Mysql:5.7
Zeppelin:0.8.0

项目描述:

受互联网+概念的催化,教育市场发展火热,越来越多的教育机构和平台不断涌现,包括有线上学习和线下培训,K12教育和职业教育等,那些注重用户服务、教育质量的平台会最终胜出。目前的企业痛点:
1.数据量大,现有MySQL业务数据库直接读取模式不能满足业务统计性能、效率需要
2.系统多、数据分散,缺少从营销、咨询、报名、教学等等完整业务环节的数据贯通
3.统计分析难度高、工作量大。缺少元数据、数据集合的规范存储,业务部门有数据分析角度需求时,需要程序员、DBA突击查数据、做报表,尤其年底各个部门排队等DBA协助出数据 		如何提高用户服务水平,提高教育质量是每个机构都面临的问题。信息的共享和利用不充分,就导致尽管学校多年的信息化应用积累了大量的数据,但信息孤岛的壁垒一直没有打破,对这些数据无法进一步的挖掘、分析、加工、整理,不能给学校教育、教学、研发、总务等各方面管理决策提供科学、有效的数据支撑。

大数据技术的应用可以从海量的用户行为数据中进行挖掘分析,根据分析结果优化平台的服务质量,最终满足用户的需求。教育大数据分析平台项目就是将大数据技术应用于教育培训领域,为企业经营提供数据支撑:
1.建立集团数据仓库,统一集团数据中心,把分散的业务数据进行预先处理和存储
2.根据业务分析需要,从海量的用户行为数据中进行挖掘分析,定制多维的数据集合,形成数据集市,供各个场景主题使用
3.前端业务数据展示选择和控制,选取合适的前端数据统计、分析结果展示工具

项目需求:

4.在线教育业务需求
4.1访问和咨询用户数据看板
4.2意向用户看板
4.3有效线索看板
44报名用户看板
4.5学生出勤看板

责任描述:
1.参与前期项目分析,设计系统整体架构
2.数据采集设计,实时处理部分设计
3.strom写hbase的实质意义的批量写设计
4.hbase和增量对接方案设计,hbase二级索引,分页方案设计
5.hive数据仓库设计和维护,数据主题的抽取,数据维度分析

数仓介绍:
雪花模型:
当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上时,就像多个雪花连接在一起,故称雪花模型。
在这里插入图片描述
看板一介绍:

访问和咨询用户数据看板
客户访问和咨询主题,顾名思义,分析的数据主要是客户的访问数据和咨询数据。但是经过需求调研,这里的访问数据,实际指的是访问的客户量,而不是客户访问量。原始数据来源于咨询系统的mysql业务数据库。

核心指标有两个:访问客户量和咨询客户量

维度包括:年、季度、月、天、小时(天区间内小时段)、地区、来源渠道、搜索来源、会话来源页面、总访问量。

整体流程:

在这里插入图片描述

增量方案优缺点:

问题
我们DWS中是包含了年、季度、月等维度的结果数据
由于新增了一天的数据,当前年、当前季度、当前月的结果数据就失效

需要重新计算
问题在于:DWS表用的失效数据如何处理。
问题解决方式 方式1
删除过期数据
优点:
对BI友好,没有历史数据的混淆,直接取就是最新的
表中的数据清晰
FROM (SELECT * FROM itcast_ods.web_chat_ems WHERE start_time=’${DATESTR}’) AS w1 INNER JOIN itcast_ods.web_chat_text_ems AS w2 ON w1.id = w2.id;" 6768
缺点:
执行复杂
破坏了数仓设计中尽量不删除的原则
方式2:
增加新列,表名当前数据计算的时间
用的时候,取最新时间的即可
优点:
表中存储了历史结果的变更
不会执行删除,不破坏数仓的原则
缺点:
对BI分析来说,需要先过滤最新的数据(稍微不友好)
修改表结构(全量操作要重来)
方式3:
增加新表
每一天的结果都生成一个表(一天一个表)
优点:
每个表都是清晰的,指向了具体某天的结果
通过多个表的方式也记录的历史结果的变更
缺点:
数据冗余过多(只要业务需要,冗余不是事)
对BI不友好(换一天,换一个表,如果BI不支持动态规则配置自动
变更表,就要手动变更)

看板二:

增量方案优缺点:

拉链表

猜你喜欢

转载自blog.csdn.net/xianyu120/article/details/111870894
今日推荐