2、数仓理论概述与相关概念

news2025/1/13 9:25:24

1、问:数据仓库 建设过程中 经常会遇到那些问题?

        模型(逻辑)重复建设

        数据不一致性

                维度不一致:命名、维度属性值、维度定义

                指标不一致:命名、计算口径

        数据不规范(字段命名、表名、分层、主题命名规范)


2、OneData数据建设核心方法论?


3、OneData数据建设体系架构?


4、数据仓库中经常用到的概念?

4.1 什么是 业务过程

        指的是 企业活动中的一个行为事件,如 下单、支付、退款都是业务过程

        业务过程是一个不可拆分的行为事件,也可以说 业务过程 = 企业活动中的事件

4.2 什么是 数据域/主题域

        指定是 将业务过程或者维度进行抽象的集合

        为保证数仓的稳定性,数据域需要抽象提炼,并且长期维护和更新,但不轻易变动。

4.3 什么是 度量/原子指标

        原子指标和度量含义相同,是基于某个业务过程下的度量值,表示不可再拆分的指标

        经常以数值的形式出现,具有明确的业务含义的名称,如支付金额

4.4 什么是 修饰词

        业务过程中对业务场景限定的抽象(除维度以外),例如 流量域中有修饰词 PC端、APP端

4.5 什么是 修饰类型

        对修饰词抽象划分,修饰类型从属于某个业务域

        如流量域中有访问终端类型,该类型下有 PC端、移动端       

4.6 什么是 维度

        维度是业务过程中度量的环境,也可以称为实体对象

4.7 什么是 维度属性

       维度属性隶属于一个维度,是维度的组成部分

       如 地理维度包含(国家、地区、省份、城市等级等属性)

4.8 什么是 时间周期

        用来明确数据统计的时间范围或者时间点,如最近30天、自然周、历史至今

4.9 什么是 派生指标

        派生指标 = 一个原子指标 + 修饰词(可选多个) + 时间周期

        可以理解为 对原子指标按照业务统计范围的圈定

        例如:原子指标:支付金额

                  派生指标:最近1天海外买家的支付金额

                                (最近一天为时间周期、海外为修饰词、买家为维度)


5、指标体系的构成是什么?

原子指标:

        含义:某个业务过程中不可拆分的度量

        构成:动作 + 度量

        示例:支付金额、借款金额

派生指标:

        含义:将原子指标按照业务范围的圈定(聚合)

        构成:多个修饰词(可选) + 时间周期 + 原子指标

        示例:最近一天海外买家的支付金额

派生指标分类:

        事务型指标、存量型指标、复合型指标

事务型指标:

        含义:对某个业务活动进行衡量的指标

        示例:订单支付金额、新增会员数

存量型指标:

        含义:对实体对象(如商品、会员)某些状态的统计

        示例:商品总数、注册会员数

复合型指标:

        含义:在 事务型指标和存量型指标的基础上复合而成

        示例:流量UV-下单买家数的转化率


6、数仓中模型设计时的指导理论?

        设计数据模型时,主要以维度建模为理论基础,基于维度数据模型总线架构,构建一致性的维度和一致性的事实。


7、问:数据仓库为什么要分层设计(分层的好处)?

        分层能够使数据有秩序的流转,数据的生命周期能够清晰的被数仓开发人员和使用人员感知到

        数据结构清晰:

                每一个数据分层都有它的作用域和职责,在使用表的时候能更方便地定位和理解

        减少重复开发:

                规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算

        统一数据口径:

                通过数据分层,提供统一的数据出口,统一对外输出的数据口径

        复杂问题简单化:

                将一个复杂的任务分解成多个步骤来完成,每一层解决特定的问题

通过构建全域的公共层数据,极大地控制了数据规模的增长,同时也能提高数据研发的效率

,解约成本,提高性能。


8、问:数据仓库应该如何分层?

ODS_数据操作层:

        存储数据特点:各个业务系统的原始数据、日志数据、第三方数据

        数据加工方式:几乎无处理(基础清洗数据)

        作用:数据同步(增量、全量),清洗,保存历史

CDM_公共维度模型层:

        存储数据特点:存放明细事实数据、维度数据、公共指标汇总数据

        细分: DWD、DWS

        作用:提升公共指标的复用性,减少重复加工

DWD_明细数据层:

        存储数据特点:存放明细事实数据

        数据加工方式:

                以维度建模为理论基础,将业务相同或相似且粒度相同的数据放到同一个模型中

                采用维度退化的手段,来构建明细宽表,基于ODS和DIM表加工而成

        作用:

                1、整合业务相同或相似数据:

                        构建明细宽表,复用关联计算,减少数据扫描(DWD)

                2、公共指标统一加工:

                        基于 OneData体系构建 命名规范、口径统一、算法统一的统计指标

                        为上层数据产品、应用、服务提供公共指标,并建立汇总宽表

                3、构建一致性维度:

                        建立一致性的维表,降低多维度分析时计算口径、算法不统一的风险                       

DWS_汇总数据层:

        存储数据特点:公共指标汇总数据

        数据加工方式:

                加强指标的维度退化,采用宽表化手段,构建公共指标数据层

                常基于DWD和DIM表加工而成

        作用:

                存放公共指标汇总数据,构建公共指标宽表,提升公共指标的复用性、减少重复加工

ADS_应用数据层:

        存储数据特点:存储个性化的统计指标数据

        作用:计算个性化的指标(没有公用性,复杂)、基于应用的数据组装(跨主体构建宽表)


9、问:下游使用数仓模型时,应该遵循哪些原则?

        优先使用公共维度模型层(CDM)数据,当公共层没有数据时,需要评估是否需要创建公共层数据,当不需要建设公共层数据时,方可直接使用操作数据层数据(ODS)

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

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

相关文章

ubuntu操作系统中docker下Hadoop分布式前置环境配置实验

版本: centos7 hadoop 3.1.3 java JDK:1.8 集群规划: masterslave1slave2HDFS NameNode DataNode DataNode SecondryNameNode DataNode YARNNodeManager ResourceManage NodeManager NodeManager 1.docker容器: 把普通用户加入到docker组&am…

掌握 AI 和 NLP:深入研究 Python — 情感分析、NER 等

一、说明 我们见证了 BERT 等预训练模型在情感分析方面的强大功能,使我们能够破译隐藏在文本数据中的情感。通过 SpaCy,我们探索了命名实体识别的迷人世界,揭开了隐藏在非结构化文本中的秘密。 二、问题陈述 命名实体识别(NER)是自然语言处理中的一项关键…

【深度学习】脸部修复,CodeFormer,论文,实战

代码: https://github.com/sczhou/CodeFormer 论文:https://arxiv.org/abs/2206.11253 Towards Robust Blind Face Restoration with Codebook Lookup Transformer 文章目录 论文摘要1 引言2 相关工作**4 实验****4.1 数据集****4.2 实验设置和指标***…

【libGDX】使用Mesh绘制圆形

1 前言 使用Mesh绘制三角形 中介绍了绘制三角形的方法,使用Mesh绘制矩形 中介绍了绘制矩形的方法,本文将介绍绘制圆形的方法。 libGDX 以点、线段、三角形为图元,没有提供绘制圆形的接口。要绘制圆形边框,必须通过割圆法逼近圆形&…

Vue2系列 — 渲染函数 (render + createElement)

官网文档&#xff1a;https://v2.cn.vuejs.org/v2/guide/render-function.html 1 render 函数 render 函数 不使用模板&#xff0c;使用 js 生成虚拟 dom 2 createElement() 接受的参数&#xff1a; 参数1 节点类型参数2 attribute参数3 子节点 3 DEMO <template>&…

BUUCTF 梅花香之苦寒来 1

BUUCTF:https://buuoj.cn/challenges 题目描述&#xff1a; 注意&#xff1a;得到的 flag 请包上 flag{} 提交 密文&#xff1a; 下载附件&#xff0c;解压得到一张.jpg图片。 解题思路&#xff1a; 1、用010 Editor看了一下&#xff0c;刚开始以为是修改宽高的题&#xff…

人工智能基础部分21-神经网络中优化器算法的详细介绍,配套详细公式

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能基础部分21-神经网络中优化器算法的详细介绍&#xff0c;配套详细公式。本文将介绍几种算法优化器&#xff0c;并展示如何使用PyTorch中的算法优化器&#xff0c;我们将使用MNIST数据集和一个简单的多层感知…

Tensorflow-gpu搭建,转载备忘

转载来自&#xff0c;所有版本号全部一致可以直接成功&#xff1a; https://blog.csdn.net/m0_38068876/article/details/128364154 https://blog.csdn.net/m0_46149071/article/details/128456089?ops_request_misc&request_id&biz_id102&utm_termtensorflow%E5%…

内部网关协议_路由信息协议RIP_开放路径优先OSPF协议_基本知识

目录: 因特网路由选择协议概述 路由信息协议RIP 开放路径优先OSPF协议 因特网路由选择协议概述 一.路由选择分类 静态路由选择和动态路由选择 静态路由选择: 采用人工配置的方式给路由器添加网络路由、默认路由和特定主机路由等路由条目。静态路由选择简单、开销小&#…

Seaborn画图颜色和给定的RGB hex code不一致

使用以下代码画图&#xff1a; import seaborn as sns import matplotlib.pyplot as plt plt.figure(dpi150) x [A,B,C,D] y [164, 86, 126, 53] sns.barplot(xx, yy, color#3a923a) 得到的颜色如下图所示&#xff1a; 这是因为seaborn默认降低了颜色的饱和度&#xff0c;即…

Android 10.0 mtp模式下连接PC后只显示指定文件夹功能实现

1. 前言 在android10.0的系统定制化开发中,对于usb作为otg连接电脑时,在mtp模式下会作为一个存储器在电脑端显示,作为电脑的 一个盘符,来显示设备的内部存储的文件,所以说如果要对设备内部的资料做保密处理的时候,需要在mtp模式下不显示某些 文件夹,接下来就分析下相关…

《QT从基础到进阶·三十七》QWidget实现左侧导航栏效果

NavigationBarPlugin插件类实现了对左侧导航栏的管理&#xff0c;我们可以在导航栏插件中添加界面&#xff0c;并用鼠标点击导航栏能够切换对应的界面。 源码在文章末尾 实现效果如下&#xff1a; NavigationBarPlugin实现的接口如下&#xff1a; class NAVIGATIONBAR_EXP…

centos7安装MySQL—以MySQL5.7.30为例

centos7安装MySQL—以MySQL5.7.30为例 本文以MySQL5.7.30为例。 官网下载 进入MySQL官网&#xff1a;https://www.mysql.com/ 点击DOWNLOADS 点击链接&#xff1b; 点击如上链接&#xff1a; 选择对应版本&#xff1a; 点击下载。 安装 将下载后的安装包上传到/usr/local下…

Linux上通过SSL/TLS和start tls连接到LDAP服务器

一&#xff0c;大致流程。 1.首先在Linux上搭建一个LDAP服务器 2.在LDAP服务器上安装CA证书&#xff0c;服务器证书&#xff0c;因为SSL/TLS&#xff0c;start tls都属于机密通信&#xff0c;需要客户端和服务器都存在一个相同的证书认证双方的身份。3.安装phpldapadmin工具&am…

前缀和——DP35 【模板】二维前缀和

文章目录 &#x1f34e;1. 题目&#x1f352;2. 算法原理&#x1f345;3. 代码实现 &#x1f34e;1. 题目 题目链接&#xff1a;【模板】二维前缀和_牛客题霸_牛客网 (nowcoder.com) 描述 给你一个 n 行 m 列的矩阵 A &#xff0c;下标从1开始。 接下来有 q 次查询&#xff0…

酷开科技OS——Coolita,让智能大屏走向国际

10月23日&#xff0c;2023中国—东盟视听传播论坛在南宁举行。作为第五届中国—东盟视听周重要活动之一&#xff0c;本次论坛以“共享新成果、共创新视听、共建新家园”为主题。来自中国和东盟的300余名专家学者、业界代表通过主旨演讲、主题发言、圆桌对话等方式进行深入探讨&…

python趣味编程-5分钟实现一个太空大战游戏(含源码、步骤讲解)

飞机战争游戏系统项目是使用Python编程语言开发的,是一个简单的桌面应用程序。 Python 中的飞机战争游戏使用pygame导入和随机导入。 Pygame 是一组跨平台的 Python 模块,专为编写视频游戏而设计。它包括设计用于 Python 编程语言的计算机图形和声音库。

飞桨——总结PPOCRLabel中遇到的坑

操作系统&#xff1a;win10 python环境&#xff1a;python3.9 paddleocr项目版本&#xff1a;2.7 1.报错&#xff1a;ModuleNotFoundError: No module named Polygon&#xff08;已解决&#xff09; 已解决所以没有复现报错内容 尝试方法一&#xff1a;直接使用pip命令安装&…

软件工程--软件建模--结构化方法通俗语言总结(暴肝超详解)(包含数据流图、数据字典、ER图、结构化设计和优化......)

目录 结构化分析 数据流图DFD 定义数据字典 实体关系图&#xff08;E-R图&#xff09; 结构化设计 变换映射 事务映射 优化结构设计 实例分析 详细设计&#xff08;过程设计&#xff09; 结构化方法是一种系统化开发软件的方法&#xff0c;该方法基于模块化的思想&am…

vue3项目中使用富文本编辑器

前言 适配 Vue3 的富文本插件不多&#xff0c;我看了很多插件官网&#xff0c;也有很多写的非常棒的&#xff0c;有UI非常优雅让人耳目一新的&#xff0c;也有功能非常全面的。 如&#xff1a; Quill&#xff0c;简单易用&#xff0c;功能全面。editorjs&#xff0c;UI极其优…