黑马甄选离线数仓项目day01(项目介绍)

课程介绍

  • 项目名称 黑马甄选
  • 数仓形式 离线数仓开发
  • 业务类型 电商业务

电商介绍

B2B B2C C2C

项目属于 新零售电商 新零售 线上(网站,app,小程序)+ 线下(实体体验店)+ 物流(自营物流)

项目行业 果蔬生鲜领域

商业模式 B2C 企业售卖商品给个人

项目业务介绍

  • 门店业务
    • 线下实体店
    • 及时达(快递物流)
    • 社区团购
    • 三方平台 在第三发平台开设店铺
  • 线上商城
    • 线上的B2C的网站
  • 商品批发
    • app 经销商在app中下单采购
  • 大客户团购
    • app 公司在app中下单采购
  • 自营商品
    • 商品贴牌

线下到线上

  • 有线下的连锁商店,为了线上购物需求,开发了网站,app,小程序
  • 在三方平台开设店铺
  • 线下商店 根据规模不同可以 商品批发 ,企业团购

线上到线下

现有线上网站,引入新零售场景,开始发展线下(开设店铺,发展物流)

开发需求介绍

  • 销售需求
  • 会员需求
  • 供应链需求
  • 商城需求

不同需求就是一个开发主题

需求开发完成后会有新的需求产生

项目架构介绍

数仓分层架构

  • 传统数仓架构
    • 数据是自上而下进行开发 ,上是上游数据
    • 在导入数据时,直接将所有数据导入数仓,在根据需求从数仓中筛序数据进行计算
    • 该架构模式会造成数仓中存储大量无用数据
      • 用户数据
      • 订单数据
      • 商品数据
      • 业务需求
        • 计算用户总量
        • 计算每天新增用户量
        • 计算每天留存用户量
        • 月增用户量
        • 月留存用户量
    • 传统数仓架构,需求变化快
  • 离线数仓架构
    • 自下而上 先确认下游的计算需求,根据计算需求向上找要计算的数据,将需要计算的数据导入数仓
    • 维度表 分组数据 时间维度表
    • 事实表 计算内容做为事实表
      • 用户主题分析 用到时间维度表 年月日 tb_dt_user
      • 商品主题分析 用到时间维度表 时分秒 tb_dt_goods

技术架构

数仓架构描述的是数据处理流程

技术架构描述的是实现数仓用的技术组成

  • 数据源存储
    • Mysql
    • SQL Server
  • 数据导入 ETL
    • sqoop
    • datax
    • flume
    • kettle
  • 数据仓库
    • 分布式存储 hdfs
    • 分布式计算 mapreduce + hive
    • 资源调度 yarn
  • 数仓数据导出
    • datax
    • sqoop
    • kettle
  • 存储结果的数据库
    • mysql
    • Oracle
    • SQL server
    • PostGreSQL
  • 数据展示
    • FineBI
    • FineReport
    • superset
    • powerBI
  • 任务调度
    • DS
    • oozie

项目人员及开发周期介绍

项目人员构成

  • 项目经理 1人
  • 管控整个项目的开发进度
  • 进行部门和人员协调
  • 产品经理 1人
    • 负责产品设计
      • 网站,app产品
  • 数据分析师或数据产品经理 1人
    • 负责主题需求设计
  • 数据开发 2-4人
    • 进行数仓搭建开发
  • 业务开发
    • 网站,app
    • 前端开发 pc端1人 手机端1人
    • 后端开发 1人
  • 测试开发 1-2人
    • 产品测试,检查功能是否完整,计算结果是否正确
  • 大数据运维开发 1
    • 大数据软件安装,业务的上线部署,服务器维

项目开发周期

产品调研 说明该项目开发原因,形成立项报告进行审批

数仓设计 设计数仓分层,技术选型,数仓表设计

数仓开发

集成测试 测试数仓开发的代码是否计算正确

上线部署

项目服务器选择

  • 物理服务器还是云服务器
    • 成本问题
    • 项目中选择物理机 配置 128G 内存 ,20核物理CPU,40线程 ,8T HDD和 2T SSD硬盘
  • 服务器数量
    • 基于每天产生的数据量进行推测
    • 当前项目每天产生 34G的数据
    • 历史数据数量 10T
    • 增量数据 未来五年(服务器进行扩容)的数据 34G*365*5 = 15T
    • 计算时中间结果的存储 34G * 0.5 17G * 365*5 = 7.5T 10+15+7.5=32.5T
    • 3副本存储 数据存储三份 32.5 * 3
    • 每台服务器需要预留20%空间 97.5 / 0.8 = 122 T
    • 开发需要13台服务器 预留测试服务器 2台 管理服务器3台 (namenode resourcemanager CM的主服务)

产生订单数据人数占 日活用户 30–40% 日活用户占总用户量的10%-20%

CDH介绍

CDH Cloudera’s Distribution Including Apache Hadoop

CDH 是商业版的hadoop,由Cloudera公司基于开源的hadoop进行二次开发,封装更多的功能,部分功能需要付费使用

CDH 集成了一个 CM(Cloudera Manager),使用各B(浏览器)/S(服务器)模型服务,可以在CM中通过web浏览器页面管理维护hadoop集群

CM的核心角色

server 主服务 处理CM的各类请求

agent 从服务 运行多台服务器上,接受server分配的任务

项目数据介绍

服务器说明

hadoop01 192.168.88.80

hadoop02 192.168.88.81

账户 root

密码 123456

注意: 需要通过域名访问hadoop服务,就需要更改windos下域名解析文件

在这里插入图片描述
在这里插入图片描述

mysql数据导入

在这里插入图片描述
账户 root

密码 123456

sqlserver

用户名: SA
密码: ITheima123
端口号: 1433

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/11222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flutter 中的 Text 小部件:全面指南

Flutter 中的 Text 小部件:全面指南 在 Flutter 中,Text 是用于显示文本的基础小部件。它不仅简单易用,而且提供了丰富的定制选项,包括样式、对齐、行间距等。本文将详细介绍如何使用 Text 小部件,并探索其高级特性。…

网络面试题目

1、BGP报文有哪些? 有5种报文,Open、 Update、 Notification、 Keepalive和 Route-refresh等5种报文类型。 2、Vxlan了解多少? VLAN作为传统的网络隔离技术,VXLAN完美地弥补了VLAN的上述不足。 VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网),(VXL…

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《规模化屋顶光伏接入配电网的建设决策》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

数据结构之----线性表

线性表分为 顺序存储结构 和 链式存储结构 线性表的顺序存储结构: 线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。 1,顺序表的结构: #define MAXSIZE 20 typedef int El…

scrapy crawl时报Unknown command: crawl

Scrapy 项目初始化问题&#xff1a;在运行 scrapy crawl 命令之前&#xff0c;你需要先在项目目录中初始化一个 Scrapy 项目。确保你已经在项目目录中执行了 scrapy startproject <project_name> 命令来初始化项目。 如果没有startproject直接genspider然后crawl就会报这…

数据结构---经典链表OJ

乐观学习&#xff0c;乐观生活&#xff0c;才能不断前进啊&#xff01;&#xff01;&#xff01; 我的主页&#xff1a;optimistic_chen 我的专栏&#xff1a;c语言 点击主页&#xff1a;optimistic_chen和专栏&#xff1a;c语言&#xff0c; 创作不易&#xff0c;大佬们点赞鼓…

css基础之用户界面样式、导航栏和三角

用户界面样式 一、鼠标样式cursor default默认 pointer小手 move移动 text文本 not-allowed禁止 二、轮廓线outline 去掉轮廓线 1.outline: 0; 2.outline: none; 三、防止拖拽文本域resize resize: none; 四、vertical-align 实现图片与表单&#xff08;行内块元素&…

C# SHA3-224加密

打开你的.NET项目。 右键点击解决方案资源管理器中的项目&#xff0c;选择“管理NuGet包”。 在NuGet包管理器中&#xff0c;点击“浏览”选项卡。 搜索“BouncyCastle”包&#xff0c;然后点击“安装”。 等待安装完成。 using Org.BouncyCastle.Crypto.Digests; using Or…

【VSCode】 使用 Prettier 插件格式代码时 如何避免将 大写PX 转为 小写px

【方法1】 setting.json 文件中添加代码 "vetur.format.defaultFormatter.css": "none","vetur.format.defaultFormatter.scss": "none","vetur.format.defaultFormatter.less": "none","[vue]": {&qu…

7个开发者必须知道的Nodejs 设计模式

好的&#xff0c;我已经收到了完整的内容&#xff0c;我将开始翻译。 设计模式是解决日常软件设计问题所必需的。这些问题可能包括&#xff1a; 维护数据库连接创建和管理对象通知一组订阅了特定实体的用户。 如果你试图自己想出解决方案&#xff0c;你很可能需要花费大量精…

数据结构(五)什么是算法

数据结构&#xff08;五&#xff09;什么是算法 要点&#xff1a;算法是一种指令集&#xff0c;有限且不依赖于某一种程序语言 思考&#xff1a;算法为什么是一种思想 01 算法的定义 一个有限指令集接收一些输入&#xff08;有些情况下不需要输入&#xff09;产生输出&…

使用 CloudFlare 后如何才能不影响搜索引擎蜘蛛爬虫

今天,明月给大家再次详细讲解一下,明月在使用 CloudFlare 后如何才能不影响搜索引擎蜘蛛爬虫对站点的抓取,因为这是很多首次使用 CloudFlare 的站长们容易忽略和触犯的问题,并不是 CloudFlare 不友好,而是 CloudFlare 的防火墙(WAF)实在是太给力。其实在【CloudFlare 如…

java项目之共享汽车管理系统(springboot+mysql+vue)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的共享汽车管理系统。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 共享汽车管理系统的主要…

为什么推荐将 IoTDB 服务地址配置为 HostName 而非 IP?

设置主机名启动 IoTDB 可在不修改配置情况下&#xff0c;在不同环境运行 IoTDB 并实现多次部署。 01 前言 IoTDB 在配置启动时有两种方式&#xff1a; 1. 通过设置 HostName&#xff08;主机名&#xff09;的方式来启动 IoTDB&#xff08;推荐方式&#xff09;&#xff1b; 2. …

lua 判断字符串是否包含子字符串(点符号查找)

一、string.find 方法 lua代码 function containsDot(str) local pos string.find(str, ".") if pos then return true else return false end end -- 测试函数 local testString1 "hello.world" local testString2 "helloworld&quo…

SpringBoot集成jasypt对yml文件指定参数加密并自定义@bean隐藏密钥

1、查看SpringBoot和jasypt对应版本。 Jasypt 1.9.x 通常与 Spring Boot 1.5.x 相对应。 Jasypt 2.1.x 通常与 Spring Boot 2.0.x 相对应。 Jasypt 3.x 通常与 Spring Boot 2.1.x相对应。 2、引入maven <dependency><groupId>com.github.ulisesbocchio</groupI…

CSS - 选择器

目录 一、CSS的基本语法格式&#xff1a; 二、常见的CSS选择器 ​编辑1.标签选择器 2.类选择器 3.id选择器 4.复合选择器 5.通用选择器 三、常见的CSS样式 1.color 2.font-size 3.border 4.width/height 5.padding 6.margin 四、CSS的引入方式 1.行内引入 …

Tableau-BI仪表盘搭建

目录 经营数据总览 经营数据详情 每日营收数据 每日流量数据 新老客占比 平台占比 门店占比 投放情况 订单分布 配送分布 汇总搭建仪表板 构思仪表盘布局 经营数据总览 数据总览表&#xff0c;显示的是数据&#xff0c;就拖入文本中&#xff0c;其他同样加入到已经…

开源免费的定时任务管理系统:Gocron

Gocron&#xff1a;精准调度未来&#xff0c;你的全能定时任务管理工具&#xff01;- 精选真开源&#xff0c;释放新价值。 概览 Gocron是github上一个开源免费的定时任务管理系统。它使用Go语言开发&#xff0c;是一个轻量级定时任务集中调度和管理系统&#xff0c;用于替代L…

JavaEE初阶-多线程5

文章目录 一、线程池1.1 线程池相关概念1.2 线程池标准类1.3 线程池工厂类1.4 实现自己的线程池 二、定时器2.1 java标准库中的定时器使用2.2 实现一个自己的定时器2.2.1 定义任务类2.2.2 定义定时器 一、线程池 1.1 线程池相关概念 池这个概念在计算机中比较常见&#xff0c…