什么才是一个好的数据模型设计

学生选课系统设计详解:从数据模型到流程实现 Powerdesigner是一款由Sybase公司开发的强大的数据建模工具,它集成了概念数据模型、物理数据模型以及数据流程图的构建。Powerdesigner被广泛应用于软件开发的系统分析、设计阶段,允许开发者对复杂的数据结构和系统流程进行清晰的可视化设计。Powerdesigner的主要功能特点包括:支持多种数据库平台,允许用户在设计阶段就能够针对不同的数据库系统生成相应的脚本。提供了丰富的模板和图形表示方法,方便不同级别的设计人员理解和沟通。 阅读详情

来看一组数据,这两个表格是基于元数据中心提供的血缘信息,分别对大数据平台上运行的任务和分析查询(Ad-hoc)进行的统计。
离线调度任务/表统计
在这里插入图片描述

一周内Ad-hoc 查询统计
在这里插入图片描述
下图是数仓分层架构图,方便你回忆数据模型分层的设计架构:
在这里插入图片描述
我们首先来看表 1。表 1 中有 2547 张未识别分层的表,占总表 6049 的 40%,它们基本没办法复用。 重点是在已识别分层的读表任务中,ODS:DWD:DWS:ADS 的读取任务分别是 1072:545:187:433,直接读取 ODS 层任务占这四层任务总和的 47.9%,这说明有大量任务都是基于原始数据加工,中间模型复用性很差。
我们再来看看表 2,在已识别的分层的查询中,ODS:DWD:DWS:ADS 的命中的查询分别是 892:1008:152:305,有 37.8% 的查询直接命中 ODS 层原始数据,说明 DWD、DWS、ADS 层数据建设缺失严重。尤其是 ADS 和 DWS,查询越底层的表,就会导致查询扫描的数据量会越大,查询时间会越长,查询的资源消耗也越大,使用数据的人满意度会低。
最后,我们进一步对 ODS 层被读取的 704 张表进行分解,发现有 382 张表的下游产出是 DWS,ADS,尤其是 ADS 达到了 323 张表,占 ODS 层表的比例 45.8%,说明有大量 ODS 层表被进行物理深加工。
通过上面的分析,我们似乎已经找到了一个理想的数仓模型设计应该具备的因素,那就是“数据模型可复用,完善且规范”。
在这里插入图片描述

从原理图到PCB:基于Allegro的8槽PXIe背板高速设计实战 本文详细介绍了基于Allegro软件进行8槽PXIe背板高速设计的完整实战流程。从理解规范、原理图设计、PCB布局规划,到高速PCIe差分对与精密时钟的布线艺术,再到电源与地处理以及最终的设计验证与生产文件输出,系统性地阐述了确保背板信号完整性、电源完整性和系统稳定性的关键技术与工程实践。 阅读详情

相关推荐

麒麟V10(arm)配置本地离线yum源

麒麟V10(arm)配置本地离线yum源

myfm2java的博客 7885

数据模型设计

数据模型设计数据模型设计一、确保所有表都有主键总结二、避免存储冗余数据总结三、第3条:消除重复数据组总结四、每列只存储一个属性总结五、理解为什么存储计算列通常有害无益总结六、定义外键以确保引用完整性总结七、确保表间关系的合理性总结八、当第三范式不够时,采用更多范式总结九、非规范化数据仓库总结 数据模型设计 如果你面对的是一个糟糕的数据模型设计,想写出高效的SQL语句是不太可能的。当数据模型规范化没有使用正确的关联关系定义时,你会发现使用SQL语句从这些数据中获取有用的信息即使有可能也会是相当困难的。 本章介

爱是与世界平行 5310

【电机学复习笔记】同步电机的特性及参数的求取

同步电机的主要特性包括:空载特性、短路特性、零功率因数负载特性、外特性和调整特性。 基于以上特性我们可以实现: 从空载特性和短路特性求同步电抗的不饱和值和短路比; 从零功率因数负载特性和空载特性确定保梯电抗(定子漏抗)和电枢反应电动势

Pantrick_的博客 2万+

详解数据模型设计方法

01 什么才是⼀个好的数据模型设计? 来看⼀组数据,这两个表格是基于元数据中⼼提供的⾎缘信息,分别对⼤数据平台上运⾏的任务和分析查询(Ad-hoc)进⾏的统计。 表1: 表2: 下图是数仓分层架构图,⽅便回忆数据模型分层的设计架构: 表1 表1中有2547张未识别分层的表,占总表6049的40%,它们基本没办法复⽤。 重点是在已识别分层的读表任务中,ODS:DWD:DWS:ADS的读取任务分别是1072:545:187:433,直接读取ODS层任务占这四层任

cdfunlove的博客 1106

计组实验4 控制冒险与分支预测

目录前言实验内容背景知识分支预测技术⭐阻塞周期计算方法不开启 BTB开启 BTBpart 1 矩阵乘法与优化未开启 BTB 的分析开启 BTB 的分析part 2 设计代码使 BTB 无效part 3 循环展开优化矩阵乘法未开启 BTB开启 BTB结束语结论 前言 上一篇博客:计组实验3 mips冒险之流水线冒险 摸了半个月了。。。咕咕咕 今天来写计组实验 4 这个实验非常简单,就是有点难。 这个实验比较容易算错,或者是被模拟器出人意料的结果搞的神神叨叨的,所以今天来记录并且详细分析该实验。 注:请务必阅

AKGWSB 's blog 5667

【win11+vs 2017+OpenCV4.5.5+Qt5.12配置】详细安装过程+小问题解决

由于Qt5无法与最新的vs2022兼容,扩展工具中一直显示不可用,所以将vs降级成vs2017。在安装Qt的过程中,会选择安装Qt套件,其中就的MCVS 2017,说明vs2017是与qt兼容的。当然也可以用qt creator这一原生IDE。OpenCV版本目前是最新的4.8.0,使用过程中没有什么问题,但是还是安装低版本大概率避免一些玄学问题。

qq_45306739的博客 3350

数据模型设计:实用指南和最佳实践

1.背景介绍 数据模型设计是在计算机科学和软件工程领域中的一个重要概念,它涉及到如何有效地表示和组织数据,以便于存储、检索、查询和分析。数据模型设计是构建高效、可扩展和易于维护的数据库系统和应用程序的关键一环。 在过去的几十年里,数据模型设计的方法和技术发展了很多,从简单的文件系统到复杂的关系数据库、对象关系模型、图形数据库和分布式数据库等。随着大数据时代的到来,数据模型设计的复杂性和挑战也不...

AI天才研究院 3408

卡尔曼滤波算法-Kalman Filter Algorithm

Kalman滤波是一种递归过程,主要有两个更新过程:时间更新和观测更新,其中时间更新主要包括状态预测和协方差预测,主要是对系统的预测,而观测更新主要包括计算卡尔曼增益、状态更新和协方差更新,因此整个递归过程主要包括五个方面的计算:1)状态预测;2)协方差预测;3)卡尔曼增益;4)状态更新;5)协方差更新; 用数学公式表示,如下: 状态预测:(1) 其中,X(k|k)是k时...

sunlin972913894的博客 2万+

数据模型⽆法复⽤,归根结底还是设计问题

点击上方蓝色字体,选择“设为星标”回复”资源“获取更多资源大数据技术与架构点击右侧关注,大数据开发领域最强公众号!暴走大数据点击右侧关注,暴走大数据!如果把指标⽐喻成⼀棵树上的果实,那模...

微信搜:import_bigdata,大数据领域硬核原创作者 665

Sigrity OptimizePI Best Capacitor Location Estimation模式如何评估电容最佳位置操作指导

Sigrity OptimizePI Best Capacitor Location Estimation模式用于前仿真分析,评估电容的最佳位置以获得最小回路电感,如何分析,以下图为例进行说明。IC devices,输入U*, A*, B*, Q*, P*,将所有这些字母开头的器件都识别为IC。Min设置为1(最少电容个数为1),max设置为28(最多电容个数为28)Capacitors 输入C*,将所有C开头的器件都识别为电容。Grid X设置为8,Grid Y也设置为8。

weixin_54787054的博客 382

2023华为od机试C卷【最富裕的小家庭】C语言 实现

在一颗树中,每个节点代表一个家庭成员,节点的数字表示其个人的财富值,一个节点及其直接相连的子节点被定义为个小家庭。现给你一颗树,请计算出最富裕的小家庭的财富和。

MISAYAONE的博客 499

5000字,详解数据模型设计方法!

ARCoder体验群,体验AR来源:知了小巷、网易有数全文共计4989字,预计阅读时间8分钟如果把指标⽐喻成⼀棵树上的果实,那模型就是这棵⼤树的躯⼲,想让果实结得好,必须让树⼲变得粗壮。真实场景举例:⼤多数公司的分析师会结合业务做⼀些数据分析(需要⽤到⼤量的数据),通过报表的⽅式服务于业务部⻔的运营。但是在数据中台构建之前,分析师经常发现⾃⼰没有可以复⽤的数据,不得不使⽤原始数据进⾏清洗、加⼯、计...

大数据星球-浪尖 1052

OSG程序如何适配在无显卡的Ubuntu系统中

osg踩坑,希望遇到同样问题的人,可以尽快出坑,完美开发

大侠的后花园 459

如何设计一个高效的数据模型?

识别主要实体及其属性,并定义实体之间的关系。确保实体清晰、关系合理,避免冗余和不一致性。

破损的天堂鸟博客 1645

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Access其实是一个很不错的界面模型和数据模型设计工具

m0_61350679的博客 320

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

如何设计一个专业的安全扫描报告系统?从数据模型到多格式输出

深度讲解漏洞扫描报告系统的完整设计。从漏洞结果模型、HTML安全模板渲染、JSON结构化输出到TXT快速导出,8个实战步骤掌握多格式报告生成。包含XSS防护、证据追溯、去重机制等核心实现。适合安全工具开发者、后端工程师。

qq_43201350的博客 626

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

设计一个H5编辑器的数据模型和核心功能

【代码】设计一个H5编辑器的数据模型和核心功能。

朝阳39的博客 227

数仓的设计2及验收标准,如何判断一个数据模型的好坏?数据仓库的 KPI 怎么定?

数仓的设计2

weixin_49196517的博客 730

从‘问题箱’到‘硬币’系统:我是如何为一个社交APP设计核心业务逻辑与数据模型的

本文详细介绍了社交APP核心业务逻辑与数据模型的设计过程,重点解析了匿名问答系统‘问题箱’和虚拟货币‘硬币’系统的实现方案。通过三重匿名机制和经济闭环设计,解决了隐私保护与用户激励的关键问题,并分享了高并发场景下的数据一致性保障经验。文章为软件工程实践提供了宝贵参考,特别适合需要编写需求分析文档和需求规格说明书的开发者。

weixin_34233974的博客 282

给大家推荐一个提供大量数据模型的网站

网站地址是:http://www.databaseanswers.org/data_models/index.htm 大家以后做系统设计时可以参考一下。

技术实验室 1927

优维低代码实践:数据模型设计

让我们的视角回到 Visual Builder,模型我们建立好后,还需要将其与VB进行关联,依旧是回到模型页面, 点击右上角 关联模型 按钮,在弹窗内搜索 LESSON,找到我们刚刚新增的模型: TASK_FOR_VB_LESSON, 勾选然后点击保存,模型将于我们的微应用关联上,然后记得点击右上角的推送按钮哟,这样我们的微应用就能正常使用模型啦!本章节我们学习了模型的建立,字段设置与模型跟VB相关联,下节我将为大家介绍如何使用Provider,结合我们创建的模型,做一个简易的任务管理系统出来。

EasyOps_DevOps的博客 992

Django+Vue开发生鲜电商平台之3.数据模型设计和资源导入

项目初始化需要安装项目所需要的库,在PyCharm中建立Django项目,并且需要修改默认配置,建立项目的主要目录结构。很重要的一步是建立数据模型,根据业务分析的结果,建立商品、交易、用户和用户操作4个app下的多个模型。由于Django自带的后台管理系统不完善,因此采用xadmin作为后台管理系统,因为版本的问题需要对官方文件进行修改,并安装相关依赖库。先执行makemigrations生成数据库映射文件,再migrate进行数据映射;需要导入图片文件,并通过Python文件导入商品类别和商品数据。

CUFEECR的博客 5965

数据模型是什么?数据模型由哪些部分组成?

在这个示例中,我们创建了一个名为"Students"的表格,包含"id"、"name"和"age"三个列。然后,我们插入了两条学生数据,并进行了查询操作,将结果打印出来。它定义了数据的结构、特性、关系和约束,以便在计算机系统中进行处理和管理。这个示例展示了一个简单的关系型数据模型,其中包含了实体(学生)、属性(id、name和age)以及操作(插入和查询)。实际的数据模型可以更加复杂,具体的设计取决于应用的需求和数据结构。表示实体之间的联系和互动。描述对数据模型进行的操作,例如查询、插入、更新和删除等。

zy1992As的博客 2000

【2023】Django 4教程 第2篇 实践学习一:从一个简单的资源管理做起 第5章 数据模型的设计与实现 5.1 模型简介

【2023】Django 4教程 第2篇 实践学习一:从一个简单的资源管理做起 第5章 数据模型的设计与实现 5.1 模型简介

代码改变世界 362

【2023】Django 4教程 第2篇 实践学习一:从一个简单的资源管理做起 第5章 数据模型的设计与实现 5.4 字段参数

【2023】Django 4教程 第2篇 实践学习一:从一个简单的资源管理做起 第5章 数据模型的设计与实现 5.4 字段参数

代码改变世界 363

面试中的数据模型设计问题该怎么回答?

面试中关于数据模型设计是一个很常见的问题,这个问题很宽泛、看起来很简单,但是想回答好并不容易。这篇文章很短,我们就简单聊一下这个问题。问题本身模型设计本身是一个开放性的问题,什么意思呢?这个问题并没有100%对的标准答案。当然各种社区有很多关于模型设计的方法论、规范性质的文章可以参考,但是这些理论不足以支持你拿到一个面试官满意的评价。这个问题到底该怎么回答?下面这个思路供大家参考。先说核心基础内容...

微信搜:import_bigdata,大数据领域硬核原创作者 2110
上一篇: 选择排序--scala
下一篇: 基于Flink+Hive+Kafka的流批一体数仓实践--04Kafka_Sink_Kafka_DWD_OrderFull
问道2020
博客等级 码龄8年 4粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值