项目需求分析及设计思想

1.1 数据收集

主要数据类别:

用户行为日志数据,业务数据,历史数据,其他等数据

行为日志一般以日志文件存在的,把日志生成在日志服务器上.使用flume等采集

业务数据 一般在mysql 一般用sqoop工具采集

 

1.2处理流程

行为数据:

1, 日志前端埋点,生成日志数据(前端开发)

2, 数据采集 flume采集

3, 从flume采集kafka 

4, Flume采集落地hdfs

5,日志预处理

6,落hive数仓明细层

 

1, 业务系统增删改数据库,形成数据

2, Sqoop/DataX数据抽取

3, 落hive数仓明细层

4, 新老订单增量合并处理

 

1.3 分层设计

分层的意义:大量的表通过分层划分,数据管理更加明晰,需要开发更加快捷,便于解耦底层业务变化.

1. ODS层 :

操作最原始的数据层.flume采集过来的原始日志

又分为流量域ODS层及业务域ODS层

流量域:日志服务器将数据生产到Kafka,使用Flume消费Kafka中的数据,再采集到hdfs集群中.

业务域:

在加载到hive表中.

以json格式文本储存

2. DWD层:

一般对ODS层的表进行加工和划分以及维度的退化等 etl操作  处理后的扁平化明细数据

清洗,过滤,降维等操作

以orc/parquet 列式存储

3. DWS层:

数仓聚合层,根据分析需求来聚合,从DWD中聚合后的数据表

如流量主题概况表,用户分布分析主题表,新用户留存表,用户活跃度主题表,交互事件主题表,站外投放主题表,站内运营主题表,优惠券主题表,红包主题表等等

4. ADS层:

从DWS进行分组,聚合得出来的报表

5. DIM层:

存储各种维表.如地理位置维度表等

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值