【迭代式开发】v1架构设计文档——大数据开发实战项目(三)

文章目录

  • 前言
  • 一、背景
  • 二、名词解释
  • 三、设计目标
    • 3.1 实现功能
    • 3.2 性能指标
      • Ⅰ.数据精确度
      • Ⅱ.时间特性
      • Ⅲ.适应性
  • 四、系统环境
    • 4.1 相关软件和硬件
    • 4.2 数据规模预估
  • 五、系统设计
    • 5.1 基础介绍
    • 5.2 系统架构图
    • 5.3 系统流程图
  • 六、风险评估
    • 6.1 已知的或可预知的风险
    • 6.2 与其他系统可能的影响
  • 七、附件及参考资料

前言

如果你从本文中学习到丝毫知识,那么请您点点关注、点赞、评论和收藏
大家好,我是爱做梦的鱼,我是东北大学大数据实验班大三的小菜鸡,非常渴望优秀,羡慕优秀的人。从5月25号我们开始了为期两个月的实习,我们需要做一个大型大数据项目,一个项目由三个学生+一个企业的项目经理完成。请大家持续关注我的专栏,我会每天更新。
专栏:大数据案例实战——大三春招大数据开发
专栏:Spark官方文档解读【Spark2.4.5中英双语】
博客地址:子浩的博客https://blog.csdn.net/weixin_43124279

欢迎大家关注微信公众号【程序猿干货铺
一群热爱技术并且向往优秀的程序猿同学,不喜欢水文,不喜欢贩卖焦虑,只喜欢谈技术,分享的都是技术干货。Talk is cheap. Show me the code
在这里插入图片描述

一、背景

现在随着互联网的发展,好多公司的主营业务在线上(app/网站)(外卖公司、各类 app,比如:下厨房;头条;安居客;内涵段子;斗鱼;每日优鲜>、页游、唯品会、拼多多、当当、苏宁 易购、国美在线、网易严选、携程、中华会计网校、多易教育、小象学院、慕课网、尚德教育、有钱花、上哪借 ……)
这类公司,都需要针对用户的线上访问行为、消费行为、业务操作行为进行统计分析,数据挖掘!以支撑公司的业务运营、精准画像营销、个性化推荐等,来提高业务转化率,改善公司运营效果! 这些需求,都需要通过构建一个综合数据处理系统来支撑!

二、名词解释

ODS层:存放原始数据,它的作用就是备份。在我们这个第一版的系统里就是直接存放日志数据。

DWD层:对 ODS 层的数据进行数据清洗,同时对清洗后的数据生成结构与粒度相同的明细表。粒度举例:如果 ODS 层每条数据代表一小时的数据,那么 DWD 的每条数据就是一小时数据,如果 ODS 是一天的数据,DWD 就是一天的数据。 结构不太理解

DWS层:以 DWD 为基础,进行轻度聚合的表。举例:如果 DWD 的每条数据代表一小时的数据,那么 DWS 就可以是按照天来聚合的数据。

DWT层:DWS 为基础,按照主题进行汇总。举例:把上面提到的按天聚合后的数据,再按照主题统计半年以来的数据。

ADS层:以 DWS 或 DWT 为基础,为各种统计报表提供数据。统计报表就是要进行展示的表。

任务调度:任务管理就是指在具有依赖关系的多个任务里,先做哪个任务,后做哪个任务,当某个任务失败时怎么实现自动重启。

元数据管理:元数据管理就是对 hive 表中的数据进行血缘分析。作用是在表多的时候,如果某一个表出问题了,可以通过可视化的形式快速找出该表时怎么来的,从而解决问题,如果在表少的情况下则用处不太大。

三、设计目标

3.1 实现功能

实现的功能在需求文档里已经进行了详细说明,这里不再赘述。

3.2 性能指标

Ⅰ.数据精确度

严格验证每个数据的录入保证数据录入的无误,显示用户数据要和原始数据一样无差别。

Ⅱ.时间特性

在网络通常的情况下用户点击网页后5s内必须出结果

Ⅲ.适应性

网页支持主流浏览器的正常加载显示,控制可视化图表和报表显示正常。

四、系统环境

4.1 相关软件和硬件

  • 软件:Hadoop、Spark、Flume、Kafka、Sqoop、Azkaban、Atlas、Echarts
  • 硬件:每台节点内存 8G、CPU 6 核、磁盘 300G,集群中共三台节点

4.2 数据规模预估

五、系统设计

5.1 基础介绍

  • 数据采集传输:Flume、Kafka、Sqoop
  • 数据存储:Mysql、HDFS
  • 数据计算:Spark
  • 数据可视化:Echarts
  • 任务调度:Azkaban
  • 元数据管理:Atlas

5.2 系统架构图

5.2 和 5.3感觉是一个东西

5.3 系统流程图

【迭代式开发】v1架构设计文档——大数据开发实战项目(三)_第1张图片

六、风险评估

6.1 已知的或可预知的风险

6.2 与其他系统可能的影响

七、附件及参考资料

使用的模板:https://blog.csdn.net/cbuy888/article/details/87934916?tdsourcetag=s_pctim_aiomsg

你可能感兴趣的:(大数据,设计阶段,架构设计,迭代式开发,spark)