电商数仓项目需求及架构设计

这篇具有很好参考价值的文章主要介绍了电商数仓项目需求及架构设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、项目需求

1.用户行为数据采集平台搭建

2.业务数据采集平台搭建

3.数仓维度建模

4.统计指标

5.即席查询工具,随时进行指标分析

6.对集群性能进行监控,发生异常时报警(第三方信息)

7.元数据管理

8.质量监控

9.权限管理(表级别、字段级别)

 二、技术选型

数据量大小、业务需求、行内经验、技术成熟度、开发维护成本、总成本预算

数据采集传输:Flume、Kafka、Sqoop、Logstash(日志采集)、DataX

数据存储:MySQL(ADS层)、HDFS、HBase、Redis、MongoDB

数据计算:Hive、Tez、Spark、Flink、Storm

数据查询:Presto、Kylin、Impala、Druid、ClickHouse、Doris

数据可视化:ECharts、Superset(开源免费)QuickBI(离线)、DATAV(实时)(阿里产品)

任务调度:Azkaban、Oozie、DolphinScheduler、Airflow

集群监控:Zabbix(离线)、Prometheus(实时)

元数据管理:Atlas

权限管理:Ranger、Sentry(Apache已将其除名)

 三、系统数据流程处理

Nginx:负载均衡,主要负责使每个服务器上面的数据保持平衡

主要分为业务数据 用户行为数据

业务数据存储在MySQL,通过Sqoop将数据同步到集群

用户行为数据主要来源于前端埋点,数据以文件的形式存放,通过Flume将日志文件采集到Kafka(避免直接采集,防止数据量过大,消峰),再通过Flume将数据同步到集群,通过HIVE On Spark对数据进行存储、清洗、转换等操作,将数据分为ODS数据原始层、DWD数据明细层、DWS数据服务层、DWT数据主题层、ADS数据应用层

ADS层数据再通过Sqoop同步到MySQL进行可视化分析展示(Superset)

在计算过程中可通过Presto对DWD,DWS,DWT层数据进行即席查询

通过Kylin可对DWD层数据进行多维分析,结果可存储到HBase

定时任务调度工具可使用Azkaban

元数据管理使用Atlas

权限管理使用Ranger

数据质量管理使用Python+Shell

集群监控使用Zabbix

四、框架发行版本选择以及集群规模

Apache  开源免费

云服务器:阿里云EMR

                  亚马逊云EMR        

                  腾讯云EMR

                  华为云EMR

物理机或者云服务器的选择主要根据公司需求来选择

物理机:场地、电费、机器维护,后期服务器运维等费用高,安全性也相对高

云服务器:成本高,但后期维护比较省事,安全性相对物理机来说低

如何购买服务器?

日活 100万 * 一人平均100条 * 日志大小1K * 半年不扩容 * 180 * 三个副本3 * 预留20%~30%Buf = 77T

再考虑到数仓分层,数据压缩等

集群资源规划设计

生产集群 原则:

消耗内存的分开

数据传输紧密地放在一起

客户端尽量放在一台服务器上,方便外部访问(数据安全性)

有依赖关系的尽量放在一台服务器上

电商数仓项目需求及架构设计,尚硅谷电商数仓4.0项目实战笔记,数据仓库

测试集群:

电商数仓项目需求及架构设计,尚硅谷电商数仓4.0项目实战笔记,数据仓库

电商数仓项目需求及架构设计,尚硅谷电商数仓4.0项目实战笔记,数据仓库文章来源地址https://www.toymoban.com/news/detail-683069.html

到了这里,关于电商数仓项目需求及架构设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【高并发】高并发架构实战:从需求分析到系统设计

               Yan-英杰的主页 悟已往之不谏 知来者之可追   C++程序员,2024届电子信息研究生            很多软件工程师的职业规划是 成为架构师 ,但是要成为架构师很多时候要求 先有架构设计经验 ,而不做架构师又怎么会有架构设计经验呢?那么要 如何获得架构

    2024年02月16日
    浏览(57)
  • 尚硅谷大数据项目《在线教育之离线数仓》笔记006

    视频地址:尚硅谷大数据项目《在线教育之离线数仓》_哔哩哔哩_bilibili 目录 第11章 数仓开发之ADS层 P087 P088 P089 P090 P091 P092 P093 P094 P095 P096 P097 P098 P099 P100 P101 P102 P103 P104 P105 P106 P107 P108 P109 P110 P111 P087 第11章 数仓开发之ADS层 11.1 流量主题 11.1.1 各来源流量统计 [atguigu@node001 ~]

    2024年02月09日
    浏览(36)
  • 尚硅谷大数据项目《在线教育之离线数仓》笔记002

     视频地址:尚硅谷大数据项目《在线教育之离线数仓》_哔哩哔哩_bilibili 目录 P025 P026 P027 P028 P029 P030 P031 P032 P033 P034 P035 P036 P037 P038 P025 在Hive所在节点部署Spark P026 3 )Hive on Spark 测试 (1)启动hive客户端 [atguigu@hadoop102 hive]$ hive (2)创建一张测试表 hive (default) create table stud

    2024年02月12日
    浏览(35)
  • 尚硅谷大数据项目《在线教育之离线数仓》笔记004

    视频地址:尚硅谷大数据项目《在线教育之离线数仓》_哔哩哔哩_bilibili 目录 第9章 数仓开发之DWD层 P049 P050 P051 P052 P053 P054 P055 P056 P057 P058 P059 P060 P061 P062 P063 P064 P065 P066 P067 P068 P069 P070 P049 第9章 数仓开发之DWD层 DWD层设计要点: (1)DWD层的设计依据是维度建模理论,该层存储

    2024年02月10日
    浏览(45)
  • 尚硅谷大数据项目《在线教育之离线数仓》笔记007

    视频地址:尚硅谷大数据项目《在线教育之离线数仓》_哔哩哔哩_bilibili 目录 第12章 报表数据导出 P112 01、创建数据表 02、修改datax的jar包 03、ads_traffic_stats_by_source.json文件 P113 P114 P115 P116 P117 P118 P119 P120 P121 P122【122_在线教育数仓开发回顾 04:23】 P112 01、创建数据表 02、修改d

    2024年02月09日
    浏览(37)
  • 【码银送书第二期】《高并发架构实战:从需求分析到系统设计》

    很多软件工程师的职业规划是 成为架构师 ,但是要成为架构师很多时候要求 先有架构设计经验 ,而不做架构师又怎么会有架构设计经验呢?那么要 如何获得架构设计经验 呢? 一方面可以 通过工作来学习 ,观察所在团队的架构师是如何工作的,协助他做一些架构设计和落

    2024年02月12日
    浏览(59)
  • 【大虾送书第一期】《高并发架构实战:从需求分析到系统设计》

    目录 ✨写在前面 ✨足够真实的高并发系统设计场景 ✨贴合工作场景的设计文档形式 ✨求同存异的典型系统架构案例      🦐博客主页:大虾好吃吗的博客      🦐专栏地址:免费送书活动专栏地址         很多软件工程师的职业规划是 成为架构师 ,但是要成为架构

    2024年02月13日
    浏览(53)
  • 大数据项目 --- 电商数仓(一)

    这个项目实在数据采集基础使用的,需要提前复习之前学的东西,否则的话就是很难继续学习.详见博客数据项目一 ---数据采集项目. 大数据项目 --- 数据采集项目_YllasdW的博客-CSDN博客 大数据第一个项目笔记整理 https://blog.csdn.net/m0_47489229/article/details/127477626 目录 一. 采集项目架

    2024年02月13日
    浏览(54)
  • 【实时数仓】介绍、需求分析、统计架构分析和ods层日志行为数据采集

    普通的实时计算 优先考虑时效性,所以从数据源采集经过实时计算直接得到结果。如此做时效性更好,但是弊端是由于计算过程中的中间结果没有沉淀下来,所以当面对大量实时需求的时候,计算的复用性较差(如B想要使用A的结果),开发成本随着需求增加直线上升。 实时

    2023年04月23日
    浏览(54)
  • 尚硅谷大数据数仓项目superset db upgrade三个报错解答

    ImportError: cannot import name ‘soft_unicode’ from ‘markupsafe’ 这个错误好像是新版本的markupsafe代码变动问题产生的,需要退回到2.0.1 解决完这个之后我又出现了新的问题 ImportError: cannot import name ‘TypedDict’ from ‘typing’ (/opt/module/miniconda3/envs/superset/lib/python3.7/typing.py) 这个问题好像

    2024年02月06日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包