大数据项目之电商数仓、数据仓库概念、项目需求及架构设计

article/2025/10/30 6:36:15

文章目录

  • 1.数据仓库概念
  • 2. 项目需求及架构设计
    • 2.1 项目需求分析
      • 2.1.1 采集平台
      • 2.1.2 离线需求
      • 2.1.3 实时需求
      • 2.1.4 思考题
    • 2.2 项目框架
      • 2.2.1 技术选型
      • 2.2.2 系统数据流程设计
      • 2.2.3 框架版本选型
        • 2.2.3.1 Apache框架版本
      • 2.2.4 服务器选型
        • 2.2.4.1 物理机:
        • 2.2.4.2 云主机:
        • 2.2.4.3 企业选择
      • 2.2.5 集群规模
      • 2.2.6 集群资源规划设计
        • 2.2.6.1 生产集群
        • 2.2.6.2 测试集群服务器规划

1.数据仓库概念

  数据仓库( Data Warehouse ),是为企业制定决策,提供数据支持的。可以帮助企业,改进业务流程、提高产品质量等。
数据仓库的输入数据通常包括:业务数据、用户行为数据和爬虫数据
  业务数据:就是各行业在处理事务过程中产生的数据。比如用户在电商网站中登录、下单、支付等过程中,需要和网站后台数据库进行增删改查交互,产生的数据就是业务数据。业务数据通常存储在MySQL、Oracle等数据库中。
  用户行为数据:用户在使用产品过程中,通过埋点收集与客户端产品交互过程中产生的数据,并发往日志服务器进行保存。比如页面浏览、点击、停留、评论、点赞、收藏等。用户行为数据通常存储在日志文件中。
  爬虫数据:通常是通过技术手段获取其他公司网站的数据。不建议去做。

在这里插入图片描述
数据仓库,并不是数据的最终目的地,而是为数据最终的目的地做好准备。这些准备包括对数据的:备份、清洗、聚合、统计等。

2. 项目需求及架构设计

2.1 项目需求分析

2.1.1 采集平台

(1)用户行为数据采集平台搭建
(2)业务数据采集平台搭建

2.1.2 离线需求

在这里插入图片描述

2.1.3 实时需求

在这里插入图片描述

2.1.4 思考题

1、项目技术如何选型?
2、框架版本如何选型(Apache、CDH、HDP)
3、服务器使用物理机还是云主机?
4、如何确认集群规模?(假设每台服务器8T硬盘)

2.2 项目框架

2.2.1 技术选型

在这里插入图片描述

2.2.2 系统数据流程设计

在这里插入图片描述

2.2.3 框架版本选型

1)如何选择Apache/CDH/HDP版本?
(1)Apache:运维麻烦,组件间兼容性需要自己调研。(一般大厂使用,技术实力雄厚,有专业的运维人员) (建议使用)
(2)CDH:国内使用最多的版本,但CM不开源,今年开始收费,一个节点1万美金/年。
(3)HDP:开源,可以进行二次开发,但是没有CDH稳定,国内使用较少
2)云服务选择
(1)阿里云的EMR、MaxCompute、DataWorks
(2)亚马逊云EMR
(3)腾讯云EMR
(4)华为云EMR

2.2.3.1 Apache框架版本

框架新版本
Hadoop3.1.3
Zookeeper3.5.7
MySQL5.7.16
Hive3.1.2
Flume1.9.0
Kafka3.0.0
Spark3.0.0
DataX3.0.0
Superset1.3.2
DolphinScheduler2.0.3
Maxwell1.29.2
Flink1.13.0
Redis6.0.8
Hbase2.0.5
ClickHouse20.4.5.36-2

注意事项:框架选型尽量不要选择最新的框架,选择最新框架半年前左右的稳定版。

2.2.4 服务器选型

服务器选择物理机还是云主机?

2.2.4.1 物理机:

以128G内存,20核物理CPU,40线程,8THDD和2TSSD硬盘,戴尔品牌单台报价4W出头。一般物理机寿命5年左右。
需要有专业的运维人员,平均一个月1万。电费也是不少的开销。

2.2.4.2 云主机:

云主机:以阿里云为例,差不多相同配置,每年5W。
很多运维工作都由阿里云完成,运维相对较轻松

2.2.4.3 企业选择

金融有钱公司和阿里没有直接冲突的公司选择阿里云
中小公司、为了融资上市,选择阿里云,拉倒融资后买物理机。
有长期打算,资金比较足,选择物理机。

2.2.5 集群规模

1)如何确认集群规模?(假设:每台服务器8T磁盘,128G内存)

(1)每天日活跃用户100万,每人一天平均100条:100万*100条=1亿条
(2)每条日志1K左右,每天1亿条:100000000 / 1024 / 1024 = 约100G
(3)半年内不扩容服务器来算:100G*180天=约18T
(4)保存3副本:18T*3=54T
(5)预留20%~30%Buf=54T/0.7=77T
(6)算到这:约8T*10台服务器

2)如果考虑数仓分层?数据采用压缩?需要重新再计算

2.2.6 集群资源规划设计

在企业中通常会搭建一套生产集群和一套测试集群。生产集群运行生产任务,测试集群用于上线前代码编写和测试。

2.2.6.1 生产集群

(1)消耗内存的分开
(2)数据传输数据比较紧密的放在一起(Kafka 、Zookeeper)
(3)客户端尽量放在一到两台服务器上,方便外部访问
(4)有依赖关系的尽量放到同一台服务器(例如:Hive和mysql)

MasterMastercorecorecorecommoncommoncommon
nnnndndndnJournalNodeJournalNodeJournalNode
rmrmnmnmnm
zkzkzk
hivehivehivehivehive
kafkakafkakafka
sparksparksparksparkspark
dataxdataxdataxdataxdatax
Ds-masterDs-masterDs-workerDs-workerDs-worker
maxwell
supset
mysql
flumeflume
flinkflink
clickhouse
redis
hbase

2.2.6.2 测试集群服务器规划

服务名称子服务服务器hadoop102服务器hadoop103服务器hadoop104
HDFSNameNode
HDFSDataNode
HDFSSecondaryNameNode
YarnNodeManager
YarnResourcemanager
ZookeeperZookeeper Server
Flume(采集日志)Flume
KafkaKafka
Flume(消费Kafka日志)Flume
Flume(消费Kafka业务)Flume
Hive
MySQLMySQL
DataX
Spark
DolphinSchedulerApiApplicationServer
DolphinSchedulerAlertServer
DolphinSchedulerMasterServer
DolphinSchedulerWorkerServer
DolphinSchedulerLoggerServer
SupersetSuperset
Flink
ClickHouse
Redis
Hbase
服务数总计201112

http://chatgpt.dhexx.cn/article/xEeipnrG.shtml

相关文章

大数据项目开发进度(实时更新)

文章目录 前言项目概述项目进度第一周0525-0529:第二周0601-0605:第三周0608-0612:第四周0615-0621:(周末加班)第五周0622-0628:(周末加班)第六周0629-0705:&…

大数据项目需求分析

以大数据项目为主线,技术理论与项目实践相结合,按照大数据项目的开发流程逐步推进,本文主要讲解项目的需求分析、架构设计以及离线和实时数据流程设计,然后提前规划好大数据项目需要的集群,按照项目的实现逻辑&#xf…

大数据项目篇--项目架构图

文章目录 离线架构离线架构-表信息离线架构-ETL信息 实时架构 离线架构 离线架构-表信息 离线架构-ETL信息 实时架构

客快物流大数据项目学习框架

文章目录 客快物流大数据项目学习框架 前言 一、项目简介 二、功能介绍 三、项目背景 四、服务器资源规划 五、技术亮点及价值 六、智慧物流大数据平台 客快物流大数据项目学习框架 前言 利用框架的力量,看懂游戏规则,才是入行的前提 大多数人…

大数据项目流程

一、项目流程 1)需求概况:实现目标是什么? ——— 通过大数据获取什么信息 2)需求分析:用什么样的数据,实现什么样的效果。 数据源的考量(数据的种类和量的大小),数据…

农业大数据项目

小白学苑开始承接大数据定制项目和大数据实训项目啦!欢迎联系合作! 下面是近期客户定制的农业大数据项目结果展示: 一、项目需求: 搭建一个基于Hadoop大数据分析框架的农业大数据系统,该系统框架以我国农业的水果产业…

常见的大数据项目

大数据项目最重要的两个特点是数据量大,实时性要求强,这也是与小数据和传统数据处理方式的最重要的区别。 大数据领域的主打项目,如下所示: 大数据领域的项目,主要分成以下几个部分 数据的整合,也就是数据…

【大数据】9大实战项目解决你所有烦恼(写论文、找工作)

你还在为“网上资料多而杂,不系统,不连贯,非常浪费时间”而烦恼么? 你还在为“学习碰到问题无人辅导,问题积累长期不解决,打击学习信心”而烦恼么? 你还在为“没有项目经验,投简历…

win10安装ubuntu虚拟机

第一步:下载virtualbox和ubuntu镜像文件 1、virtualbox下载地址: https://www.virtualbox.org/wiki/Downloads 选择Windows hosts 文件不大,103MB,可以直接在网页上下载 2、ubuntu iso下载地址: http://releases.u…

在VMware实验Ubuntu虚拟机的使用

目录 下载Ubuntu18.04 安装Ubuntu虚拟机 先安装一个Ubuntu再说 然后再来调试 开始使用! 调整页面 正式测试开始! 结果验证 时隔多日。。。。 改进 今天我们来尝试在VMware中弄一个Ubuntu虚拟机来使用 下载Ubuntu18.04 首先,我们要…

本机与Ubuntu虚拟机共享文件

1、找到你的虚拟机并右击,弹出的选项卡选择设置 2、点击选项》共享文件夹》单选总是启用》点击添加你的文件路径》点击确定 3、然后进入到虚拟机桌面点击文件选择其他地方选择计算机 4、然后再依次进入红框里的路径就可以访问本机的共享的文件了。 完! 路…

Ubuntu虚拟机镜像下载及创建

一、下载ubuntu镜像 1.下载ubuntu镜像 ubuntu下载网址: https://mirrors.neusoft.edu.cn/ubuntu-releases/20.04.5/ 或者https://mirrors.aliyun.com/ubuntu-releases/20.04.5/ 然后选择如下: 二、安装ubuntu虚拟机 1.安装ubuntu虚拟机 打开VMware…

Ubuntu虚拟机添加网卡

目录 零、配置环境 一、添加网卡 1. 虚拟机 -> 设置 2. 添加网络适配器 3. 修改网络连接方式 4. 确定 5. 编辑 -> 虚拟网络编辑器 6. 添加指定网卡名称 -- end -- 二、ifconfig -a 附加 零、配置环境 安装环境:VMware Workstation 16 Pro 安装系统…

mac pro M1(ARM)安装:ubuntu虚拟机(四)

0. 引言 前面几期我们分别讲解了如何在mac m1环境下安装linux、window虚拟机,而很多应用场景中需要用到ubuntu虚拟机,所以这次我们来单独讲讲如何在mac m1环境下安装ubuntu虚拟机 1. 下载 1.1. 下载VMware Fusion 本次演示我们选择通过VMware来安装虚…

VMware创建Ubuntu虚拟机

VMware创建Ubuntu虚拟机 1、镜像下载2、点击新建虚拟机3、选择“典型”4、选择Ubuntu镜像文件位置5、输入系统账户信息6、选择虚拟机存放位置7、设置指定磁盘容量8、确认安装信息,并点击完成9、等待安装10、自动安装VM-tool11、点击登录,输入密码12、安装…

Ubuntu虚拟机磁盘空间不够,如何扩容

Ubuntu虚拟机磁盘空间不够,如何扩容 一、软件版本 1.vmware 15.5.0 2.ubuntu 20.04 二、操作步骤 1.打开虚拟机设置,点击硬盘 2.点击扩展 3.此处我由50G增加到70G,点击扩展 4.开启虚拟机 5.点击磁盘 6.看到有21G的未分配的磁盘…

如何在win10上安装ubuntu虚拟机-图文详细教程

前言(和我一样的小白快来看看~) 本文将在win10上安装ubuntu虚拟机的步骤一步步记录了下来~希望对大家有帮助 方法大概是先装一个虚拟化软件(virtualbox),然后在这个软件上新增一台虚拟电脑机,这样我们就等于有了一台没…

Ubuntu 虚拟机无法联网(NAT模式下)- 解决方法

想要在 Ubuntu16.04 虚拟机上安装 git 克隆仓库,只需在 Ubuntu 终端输入以下命令即可: sudo apt-get install git 但是我在输入之后并未安装成功,反而显示以下结果: 全部都是 --- 暂时不能解析域名“cn.archive.ubuntu.com” 接着…

利用VMware创建Ubuntu虚拟机

目录 前言 一、准备 1.下载Ubuntu20.04镜像源 2.下载VMware Workstation Pro 16.2.2 二、构建新虚拟机 三、第一次开启虚拟机,自动安装Ubuntu 四、后续初始化操作 1.第二次打开虚拟机 2.换源 3.换源后切换为中文 4.pycharm相关问题 pycharm“Failed to c…

Ubuntu虚拟机安装VMware Tools

一、前言 在工作中,经常会用到Windows、Linux双系统,一般都会采用虚拟机运行Linux系统的方案。系统间的文件传输、复制粘贴啥的很不方便,但是安装了VMware Tools之后就很方便,复制粘贴一站式,文件传输直接拖拽就行。 …