大数据-261 实时数仓 - 业务数据库表结构 交易订单、订单产品、产品分类、商家店铺、地域组织表

点一下关注吧!!!非常感谢!!持续更新!!!

Java篇开始了!

  • MyBatis 更新完毕
  • 目前开始更新 Spring,一起深入浅出!

目前已经更新到了:

  • Hadoop(已更完)
  • HDFS(已更完)
  • MapReduce(已更完)
  • Hive(已更完)
  • Flume(已更完)
  • Sqoop(已更完)
  • Zookeeper(已更完)
  • HBase(已更完)
  • Redis (已更完)
  • Kafka(已更完)
  • Spark(已更完)
  • Flink(已更完)
  • ClickHouse(已更完)
  • Kudu(已更完)
  • Druid(已更完)
  • Kylin(已更完)
  • Elasticsearch(已更完)
  • DataX(已更完)
  • Tez(已更完)
  • 数据挖掘(已更完)
  • Prometheus(已更完)
  • Grafana(已更完)
  • 离线数仓(已更完)
  • 实时数仓(正在更新…)

章节内容

  • 实时数仓 - 项目背景与需求
  • 实时数仓架构 需求分析
  • 技术选型
  • 逻辑架构

在这里插入图片描述

实时数仓的定义

实时数仓是一种数据仓库系统,区别于传统批处理数仓,它强调低延迟、高吞吐和高可用性。实时数仓能够处理流式数据或近实时的数据流,使企业能够及时监控关键指标并做出决策。

实时数仓的关键特性

  • 低延迟数据处理:数据从采集到可查询分析的时间极短,通常在秒级或毫秒级。
  • 高并发查询支持:能够支持多用户同时查询,满足业务需求。
  • 高可用性和可靠性:系统在高负载下仍能保持稳定,支持数据冗余和容错机制。
  • 流批一体:既支持实时流式计算,也支持批量数据分析,满足多样化需求。
  • 可扩展性:能够通过分布式架构动态扩展存储和计算资源,满足不断增长的业务需求。

实时数仓的发展趋势

  • 云原生实时数仓:越来越多企业选择基于云平台搭建实时数仓,提升资源管理与成本控制能力。
  • 湖仓一体化:结合数据湖和数据仓库的优势,支持结构化与非结构化数据的统一分析。
  • AI 与机器学习集成:实时数仓将与 AI 和机器学习深度结合,实现智能分析与预测。
  • 开源生态发展:更多开源工具不断涌现,降低企业建设实时数仓的门槛。

业务数据库表结构

在这里插入图片描述
业务数据库:

  • 交易订单表(trade_orders)
  • 订单产品表(order_product)
  • 产品信息表(product_info)
  • 产品分类表(product_category)
  • 商家店铺表(shops)
  • 商家地域组织表(shop_admin_org)
  • 支付方式表(payments)

交易订单表

CREATE TABLE `wzk_trade_orders` (`orderId` bigint(11) NOT NULL DEFAULT 0 COMMENT '订单id',`orderNo` varchar(20) NOT NULL COMMENT '订单编号',`userId` bigint(11) NOT NULL COMMENT '用户id',`status` tinyint(4) NOT NULL DEFAULT -2 COMMENT '订单状态 -3:用户拒收 -2:未付款的订单 -1:用户取消 0:待发货 1:配送中 2:用户确认收货',`productMoney` decimal(11,2) NOT NULL COMMENT '商品金额',`totalMoney` decimal(11,2) NOT NULL COMMENT '订单金额(包括运费)',`payMethod` tinyint(4) NOT NULL DEFAULT 0 COMMENT '支付方式,0:未知;1:支付宝,2:微信;3、现金;4、其他',`isPay` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否支付	0:未支付 1:已支付',`areaId` int(11) NOT NULL COMMENT '区域最低一级',`tradeSrc` tinyint(4) NOT NULL DEFAULT 0 COMMENT '订单来源	0:商城 1:微信 2:手机版 3:安卓App 4:苹果App',`tradeType` int(11) DEFAULT 0 COMMENT '订单类型',`isRefund` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否退款	0:否 1:是',`dataFlag` tinyint(4) NOT NULL DEFAULT 1 COMMENT '订单有效标志	-1:删除 1:有效',`createTime` varchar(25) NOT NULL COMMENT '下单时间',`payTime` varchar(25) DEFAULT NULL COMMENT '支付时间',`modifiedTime` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp() COMMENT '订单更新时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

备注:

  • 记录订单的信息
  • status 订单状态
  • createTime、payTime、modifiedTime

订单产品表

CREATE TABLE `wzk_order_product` (`id` bigint(11) NOT NULL DEFAULT 0,`orderId` bigint(11) NOT NULL COMMENT '订单id',`productId` bigint(11) NOT NULL COMMENT '商品id',`productNum` bigint(11) NOT NULL DEFAULT 0 COMMENT '商品数量',`productPrice` decimal(11,2) NOT NULL DEFAULT 0.00 COMMENT '商品价格',`money` decimal(11,2) DEFAULT 0.00 COMMENT '付款金额',`extra` text DEFAULT NULL COMMENT '额外信息',`createTime` varchar(25) DEFAULT NULL COMMENT '创建时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

备注:

  • 记录订单中购买产品的信息,包括产品的数量、单价等

产品信息表

CREATE TABLE `wzk_product_info` (`productId` bigint(11) NOT NULL DEFAULT 0 COMMENT '商品id',`productName` varchar(200) NOT NULL COMMENT '商品名称',`shopId` bigint(11) NOT NULL COMMENT '门店ID',`price` decimal(11,2) NOT NULL DEFAULT 0.00 COMMENT '门店价',`isSale` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否上架	0:不上架 1:上架',`status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否新品	0:否 1:是',`categoryId` int(11) NOT NULL COMMENT 'goodsCatId	最后一级商品分类ID',`createTime` varchar(25) NOT NULL,`modifyTime` datetime DEFAULT NULL ON UPDATE current_timestamp() COMMENT '修改时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci

备注:

  • 记录产品的详细信息,对应商家 ID、商品属性(是否新品、是否上架)
  • createTime、modifyTime、创建时间、修改时间

产品分类表

CREATE TABLE `wzk_product_category` (`catId` int(11) NOT NULL DEFAULT 0 COMMENT '品类ID',`parentId` int(11) NOT NULL COMMENT '父ID',`catName` varchar(20) NOT NULL COMMENT '分类名称',`isShow` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否显示	0:隐藏 1:显示',`sortNum` int(11) NOT NULL DEFAULT 0 COMMENT '排序号',`isDel` tinyint(4) NOT NULL DEFAULT 1 COMMENT '删除标志	1:有效 -1:删除',`createTime` varchar(25) NOT NULL COMMENT '建立时间',`level` tinyint(4) DEFAULT 0 COMMENT '分类级别,共3级'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

备注:

  • 产品分类表,共分3 个级别
-- 第一级产品目录
select catName, catid from wzk_product_category where level = 1;
-- 查看电脑、办公的子类(查看二级目录)
select catName, catid from wzk_product_category where level = 2 and parentId
= 32;
-- 查看电脑整机的子类(查看三级目录)
select catName, catid from wzk_product_category where level = 3 and parentId
= 10250;

执行结果如下图所示:
在这里插入图片描述

商家的店铺表

CREATE TABLE `wzk_shops` (`shopId` int(11) NOT NULL DEFAULT 0 COMMENT '商铺ID,自增',`userId` int(11) NOT NULL COMMENT '商铺联系人ID',`areaId` int(11) DEFAULT 0,`shopName` varchar(100) DEFAULT '' COMMENT '商铺名称',`shopLevel` tinyint(4) NOT NULL DEFAULT 1 COMMENT '店铺等级',`status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '商铺状态',`createTime` date DEFAULT NULL,`modifyTime` datetime DEFAULT NULL COMMENT '修改时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

备注:

  • 记录店铺的详细信息

商家地域组织表

CREATE TABLE `wzk_shop_admin_org` (`id` int(11) NOT NULL DEFAULT 0 COMMENT '组织ID',`parentId` int(11) NOT NULL COMMENT '父ID',`orgName` varchar(100) NOT NULL COMMENT '组织名称',`orgLevel` tinyint(4) NOT NULL DEFAULT 1 COMMENT '组织级别1;总部及大区级部门;2:总部下属的各个部门及基部门;3:具体工作部门',`isDelete` tinyint(4) NOT NULL DEFAULT 0 COMMENT '删除标志,1:删除;0:有效',`createTime` varchar(25) DEFAULT NULL COMMENT '创建时间',`updateTime` varchar(25) DEFAULT NULL COMMENT '最后修改时间',`isShow` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否显示,0:是 1:否',`orgType` tinyint(4) NOT NULL DEFAULT 1 COMMENT '组织类型,0:总裁办;1:研发;2:销售;3:运营;4:产品'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

备注:

  • 记录店铺所属区域

支付方式表

CREATE TABLE `wzk_payments` (`id` int(11) NOT NULL,`payMethod` varchar(20) DEFAULT NULL,`payName` varchar(255) DEFAULT NULL,`description` varchar(255) DEFAULT NULL,`payOrder` int(11) DEFAULT 0,`online` tinyint(4) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

备注:

  • 记录支付方式

最终结果

整体截图:
在这里插入图片描述

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

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

相关文章

Pyside6 在 pycharm 中的配置

打开文件->设置 找到 工具->外部工具 点击 号 创建一个外部工具 QtDesigner 名称:QtDesigner 程序:D:\miniconda\envs\ergoAI-qt\Lib\site-packages\PySide6\designer.exe 实参:$FileName$ 工作目录:$FileDir$ PyUIC 名称&#xf…

Linux系统编程——线程

目录 一、前言 二、线程 1、线程的理解 三、线程相关的接口 1、线程的创建 2、线程的等待 3、实验 四、总结 1、线程优点 2、线程缺点 3、线程异常 4、Linux下的进程与线程对比 一、前言 之前的文章中我们已经对进程相关的概念做了认识,从创建进程、子进…

SD ComfyUI工作流 对人物图像进行抠图并替换背景

文章目录 人物抠图与换背景SD模型Node节点工作流程工作流下载效果展示人物抠图与换背景 此工作流旨在通过深度学习模型完成精确的人物抠图及背景替换操作。整个流程包括图像加载、遮罩生成、抠图处理、背景替换以及最终的图像优化。其核心基于 SAM(Segment Anything Model)与…

微服务-1 认识微服务

目录​​​​​​​ 1 认识微服务 1.1 单体架构 1.2 微服务 1.3 SpringCloud 2 服务拆分原则 2.1 什么时候拆 2.2 怎么拆 2.3 服务调用 3. 服务注册与发现 3.1 注册中心原理 3.2 Nacos注册中心 3.3 服务注册 3.3.1 添加依赖 3.3.2 配置Nacos 3.3.3 启动服务实例 …

02-18.python入门基础一基础算法

(一)排序算法 简述: 在 Python 中,有多种常用的排序算法,下面为你详细介绍几种常见的排序算法及其原理、实现代码、时间复杂度以及稳定性等特点,并对比它们适用的场景。 冒泡排序(Bubble Sor…

深度学习blog-卷积神经网络(CNN)

卷积神经网络(Convolutional Neural Network,CNN)是一种广泛应用于计算机视觉领域,如图像分类、目标检测和图像分割等任务中的深度学习模型。 1. 结构 卷积神经网络一般由以下几个主要层组成: 输入层:接收…

三维扫描在汽车/航空行业应用

三维扫描技术应用范围广泛,从小型精密零件到大型工业设备,都能实现快速、准确的测量。 通过先进三维扫描技术获取产品和物体的形面三维数据,建立实物的三维图档,满足各种实物3D模型数据获取、三维数字化展示、3D多媒体开发、三维…

【Axure视频教程】中继器表格间传值

今天教大家在Axure制作中继器表格间传值的原型模板,可以将一个中继器表格里的行数据传递到另外一个中继器表格里,包括传值按钮在中继器内部和外部两中案例。 这个原型模板是用中继器制作的,所以使用也很简单,只需要在中继器表格里…

【测试】接口测试

长期更新好文,建议关注收藏! 目录 接口规范接口测试用例设计postmanRequests 复习HTTP超文本传输协议 复习cookiesession 实现方式 1.工具 如postman ,JMeter(后者功能更全) 2.代码 pythonrequests / javahttpclient【高级】 接…

目录 1、常用系统数据类型 1. int或integer 2. tinyint 3. decimal[(p[,s])]或numeric[(p[,s])] 4. char(n) 5. varchar(n|max) 6. datetime 2、T-SQL创建表 3、T-SQL修改表 4、T-SQL表数据的操作 4.1 插入数据 4.2 修改数据 4.3 删除数据 5、删除表 1、常用系统…

【LLM】OpenAI 的DAY12汇总和o3介绍

note o3 体现出的编程和数学能力,不仅达到了 AGI 的门槛,甚至摸到了 ASI(超级人工智能)的边。 Day 1:o1完全版,开场即巅峰 12天发布会的开场即是“炸场级”更新——o1完全版。相比此前的预览版本&#x…

Redis缓存知识点汇总

Redis缓存知识点汇总 请先思考如下问题 1.Redis的缓存击穿,穿透,雪崩是什么意思?原因和解决方案有哪些? 2.Redis支持宕机数据恢复,他的持久化方式及其原理是什么? 3.如何保证双写一致性,即如何保…

Gitlab17.7+Jenkins2.4.91实现Fastapi/Django项目持续发布版本详细操作(亲测可用)

一、gitlab设置: 1、进入gitlab选择主页在左侧菜单的下面点击管理员按钮。 2、选择左侧菜单的设置,选择网络,在右侧选择出站请求后选择允许来自webhooks和集成对本地网络的请求 3、webhook设置 进入你自己的项目选择左侧菜单的设置&#xff…

仓颉编程笔记1:变量函数定义,常用关键字,实际编写示例

本文就在网页版上体验一下仓颉编程,就先不下载它的SDK了 基本围绕着实际摸索的编程规则来写的 也没心思多看它的文档,写的不太明确,至少我是看的一知半解的 文章提供测试代码讲解、测试效果图: 目录 仓颉编程在线体验网址&…

Linux 文件 I/O 基础

目录 前言 一、文件描述符(File Descriptor) 二、打开文件(open 函数) 三、读取文件(read 函数) 四、写入文件(write 函数) 五、关闭文件(close 函数) …

Vue项目中env文件的作用和配置

在实际项目的开发中,我们一般会经历项目的开发阶段、测试阶段和最终上线阶段,每一个阶段对于项目代码的要求可能都不尽相同,那么我们如何能够游刃有余的在不同阶段下使我们的项目呈现不同的效果,使用不同的功能呢?这里…

20241130 RocketMQ本机安装与SpringBoot整合

目录 一、RocketMQ简介 ???1.1、核心概念 ???1.2、应用场景 ???1.3、架构设计 2、RocketMQ Server安装 3、RocketMQ可视化控制台安装与使用 4、SpringBoot整合RocketMQ实现消息发送和接收? ? ? ? ? 4.1、添加maven依赖 ???4.2、yaml配置 ???4.3、…

“宠物服务的跨平台整合”:多设备宠物服务平台的实现

2.1 SSM框架介绍 本课题程序开发使用到的框架技术,英文名称缩写是SSM,在JavaWeb开发中使用的流行框架有SSH、SSM、SpringMVC等,作为一个课题程序采用SSH框架也可以,SSM框架也可以,SpringMVC也可以。SSH框架是属于重量级…

Word表格另起一页解决办法

Word表格另起一页解决办法 表格设置根据内容自动调整,取消指定高度第1步 第2步

iOS Masonry对包体积的影响

01 Masonry介绍 Masonry是iOS在控件布局中经常使用的一个轻量级框架,Masonry让NSLayoutConstraint使用起来更为简洁。Masonry简化了NSLayoutConstraint的使用方式,让我们可以以链式的方式为我们的控件指定约束。 常用接口声明与实现: 使用方式…