AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题

问题[data-warehouse](dba)

Martin Hope
Mads
Asked: 2022-05-15 03:11:35 +0800 CST

事实表中的布尔标志

  • 0

想象一下,我们收到了一项针对 3 种不同物品的日常消费习惯的健康调查结果,如下所示:

ID 日期 年龄 国家 香烟每天 每天咖啡 每日啤酒
1 2021-12-31 35 我们 0 3 0
2 2021-12-31 22 我们 5 5 1
3 2021-12-31 53 我们 3 4 0
... ... ... ... ... ...
11276 2021-12-31 44 法国 3 4 0

我想在星型模式模型中对此进行建模。在事实表中,我创建了日期和项目维度的外键关系,以及具有国家和年龄的人口统计维度。然后我总结了受访者的数量。人口群体。如果受访者的数量超过 100,我将该组标记为代表人口。最后,我计算每组的总消费量和平均消费量。

日期 ID 项目 ID 人口统计 ID 受访者人数 是代表 总消费 平均消费
20211231 1 1 70 不 280 4
20211231 1 2 150 是的 750 5
20211231 1 3 220 是的 660 3
... ... ... ... ... ...
20211231 3 1000 1 不 0 0

例如,有来自人口统计 1 的 70 名受访者(例如,国家 = 美国,年龄 = 18)。他们平均消费了第 1 项中的 4 个(例如香烟)。

通常我们应该努力在事实表中只保存事实和外键。但是我个人认为布尔标志的单独维度不会提供任何价值。是否可以将此标志视为生成维度,或者将其包含在事实表中是否被视为糟糕的设计?

data-warehouse dimensional-modeling
  • 1 个回答
  • 98 Views
Martin Hope
SunnyBoiz
Asked: 2022-05-14 04:30:14 +0800 CST

首先是数据湖还是数据仓库?

  • 2

我一直很困惑是创建数据湖还是数据仓库,希望有经验的现实世界的专业人士能给我一些启示。

我希望使用从多个来源(物联网设备、API 等)摄取的数据来存储、可视化和执行机器学习。我读到,在我们所处的当前环境中,企业将需要数据湖和仓库。

我的问题是:

  1. 我应该先创建一个数据湖,然后从湖中转换/处理这些原始数据并将其摄取到数据仓库中吗?
  2. 还是数据湖本身就是一个单独的数据处理管道?
  3. 还是这取决于用例?

这是我一直在想的: 在此处输入图像描述

PS:如果这是错误的 StackExchange,请告诉我谢谢 :)

database-design data-warehouse
  • 1 个回答
  • 98 Views
Martin Hope
user3118602
Asked: 2022-02-05 20:36:42 +0800 CST

如何处理数据仓库中传入的时间序列数据?

  • 0

我是数据仓库的新手(在我的学生时代就学会了这一点),并且希望将数据仓库作为一个副项目。下面是我想出的一个简单的数据仓库设计: 在此处输入图像描述

数据仓库有 2 个维度表和 1 个事实表。1 个维度表包含日期时间数据,另一个包含设备数据。事实表包含在现场捕获的设备传入数据值。事实表中的数据粒度为 5 分钟。

我对如何处理时间序列感到困惑,如果有人能澄清这一点,我将不胜感激。假设来自设备的一行数据如下所示:

    datetime        drive_a   drive_b   drive_c   shaft_a   shaft_b   shaft_c   total_output
02/01/2022 13:05      4.2       3.2       7.4       5.3       8.2       6.4        4563.2

这将被处理并存储到数据仓库中的事实表中。

由于与传入数据的格式不同,如何处理datetime来自此传入数据的列?dateKeydatetime

我在想事实表需要另一个名为 的列dateTime_raw,但这违背了dim_datetime表格的目的,不是因为我的日期时间已经在我的事实表中了吗?

PS:对不起,如果我的问题令人困惑;由于我不精通该领域,因此尽力解释。

database-design data-warehouse
  • 1 个回答
  • 190 Views
Martin Hope
Psychotechnopath
Asked: 2021-12-31 01:22:10 +0800 CST

Apache nifi、flume、storm 等数据摄取工具或 logstash 等工具从哪些数据量中变得相关?

  • 0

我在一家拥有两个遗留数据仓库的公司工作,这些数据仓库一直在演变为不可维护的单体。因此,他们迫切需要重组。

我正在研究将当前的数据架构改革为更符合数据网格原则的架构,就像 Zhamak Dehghani 在这篇有影响力的文章中所提倡的那样(可能是数据专业人士众所周知的材料)。

第一个数据仓库,比如 DWH-A,主要由直接来自核心公司应用程序的操作数据库的数据组成。它每周通过来自运营数据库的 FTP 转储进行更新,每次更新都包含大约 2GB 的数据。在 5 年的时间里,DWH 已经增长到 +-300GB 的可观大小。

第二个数据仓库,比如 DWH-B,由来自各种 API 和其他数据源的各种数据组成。它通过 API 调用不断更新,大小为 +- 100GB。

这两个数据仓库都主要使用 T-SQL 构建并托管在 MS SQL Server 上。目前,所有数据要么从操作数据库(通过 SSIS)插入,要么从 API(通过 SSIS icw ZappySys)插入。

由于我的任务是升级当前的做事方式,并且由于我认为 SSIS 是一种相当多余且繁琐的插入数据的方式,因此我正在寻找其他方式将数据摄取到某些数据存储中符合数据网格的原则(因此没有单体数据仓库)。

为此,我遇到了 Apache nifi、Flume、Storm、Kafka 和 Logstash 等工具。所有这些工具就其本身而言似乎非常强大,并且适合处理大量数据。然而,考虑到我正在处理的数据量,我想知道这些工具是否真的与我的公司相关。我不想通过发射火箭筒来杀死蚊子,并使事情变得不必要地复杂化。我还可以简单地构建一些在我们的 K8S 集群中运行的 Python 脚本,并定期检索/写入数据到我们的数据存储中。

将背景总结为一个问题:

Apache nifi、flume、storm 等数据摄取工具或 logstash 等工具从哪些数据量中变得相关?

任何建议将不胜感激。

ssis data-warehouse
  • 2 个回答
  • 78 Views
Martin Hope
Pantea
Asked: 2021-06-29 02:04:47 +0800 CST

如何处理“累积事实表”中的 NULL 日期

  • 1

维度建模中的一种事实表是Accumulating Snapshot fact Table. 如果你觉得需要复习一下这个类型的含义和定义,可以看看这篇文章: https ://www.holistics.io/blog/the-three-types-of-fact-tables/ 。

想象一下,我们有一个累积事实表,其中包含三个重要的日期列

'Order_Datekey , Manufacturing_Datekey , Ship_Datekey'

第一次插入表时,列没有数据Manufacturing_Datekey and Ship_Datekey'。我们只知道订购产品的日期(Order_date)。我需要知道的是我们如何处理 Date 列的空值?我在 Kimbal 书中读到的重点是在外键列中应避免 null。

'Referential
integrity is violated if you put a null in a fact table column declared as a foreign key
to a dimension table'

另一方面,我们起初对这两个日期列没有任何价值。你有什么建议?

提前致谢

data-warehouse business-intelligence
  • 1 个回答
  • 189 Views
Martin Hope
e_i_pi
Asked: 2021-04-29 15:38:35 +0800 CST

“ETL vs ELT”只是“表格 vs 视图”吗?

  • 1

TL;博士; ETL 和 ELT 之间的区别仅仅是转换后的数据在加载到仓库之前是具体还是抽象?

所以请原谅我的主题标题过于宽泛,因为它掩盖了细节,但我试图以明确的方式理解 ETL 和 ELT 的不同之处。它们看起来非常相似,以至于您可以将它们描述为 ELTL。在这两种情况下,您都从原始数据开始,最终以表格中的具体转换数据结束。似乎介于两者之间的是差异,它可以采取多种形式,具体取决于从开始状态到结束状态的转换的数量/复杂性。

根据我对ETL的了解,步骤如下:

  1. 从源系统中提取数据并加载到原始表中
  2. 将原始表中的数据转换为临时表
  3. 将临时表中的数据加载到您的仓库中

在我见过的一些 ELT 定义中,这些步骤似乎是:

  1. 从源系统中提取数据并加载到原始表中
  2. 通过创建表示临时表的视图从概念上转换原始表中的数据
  3. 将暂存视图中的数据加载到您的仓库中

但是后来我看了其他关于ELT的文章,好像是:

  1. 从源系统中提取数据并加载到原始表中
  2. 通过创建表示临时表的视图从概念上转换原始表中的数据
  3. 恭喜,不再有从原始状态到转换状态的数据硬复制,一切都是视图!用户只需启动他们的查询并立即查看嵌套的n级*返回数据!

*结果可能会有所不同,具体取决于您是否有数百万美元可用于云处理和/或大规模量子计算是否可用

etl data-warehouse
  • 1 个回答
  • 303 Views
Martin Hope
bfmcneill
Asked: 2021-04-11 23:46:51 +0800 CST

谷物特有的文本应该存储在事实表还是维度表中?

  • 1

我正在使用 yelp 数据集为用户评论建模星型模式。

每个用户评论都有一个业务维度键、用户维度键和与评论关联的一堆数据。所有评论数据都是数字的,除了他们为评论输入文本的字段(存储在名为 text 的列中)。

将文本数据存储在事实表中是否有意义,因为它与事实的粒度有关?还是应该将其放置在以与事实表相同的速率增长行数的维度表中?

星型图

database-design data-warehouse
  • 1 个回答
  • 252 Views
Martin Hope
dbybanez
Asked: 2021-03-23 07:22:31 +0800 CST

SSAS 错误部署项目:确保“SQL Browser”服务正在运行

  • 0

成功构建我的项目后,部署它时出现此错误:

由于以下连接问题,无法将项目部署到“\SQLEXPRESS”服务器:

无法与重定向器建立连接。确保“SQL Browser”服务正在运行。

要验证或更新目标服务器的名称,请在解决方案资源管理器中右键单击项目,选择项目属性,单击部署选项卡,然后输入服务器名称。

到目前为止我检查/尝试过的事情:

  • 更改部署服务器名称(从 localhost 更改为我的实际 SQL Server 名称)
  • 确保 SQL Server Browser 服务正在运行(在 SSCM 中运行)
  • 注册表 SSrpListener 值(应该是 1——我的是 1)
  • 以管理员身份运行 Visual Studio 和 SSCM

版本:

  • Visual Studio 社区 2019 (16.9.2)
  • SQL Server 数据工具 (16.0.62103.10080)
  • SQL Server 分析服务 (15.0.19445.0)
  • SQL Server 配置管理器 (2019.0150.2000.05)
  • SQL Server Management Studio(15.0.18369.0 或 v18.8)
  • SQL Server 2019 速成版 (15.0.2000.5)
  • 视窗 10 (10.0.19042)

根据我上面提供的信息,我仍然无法部署该项目。

sql-server data-warehouse
  • 1 个回答
  • 928 Views
Martin Hope
jack2684
Asked: 2021-01-05 14:00:55 +0800 CST

如果 Postgres 是基于行的,如何基于 PostgreSQL 构建 Amazon Redshift?

  • 1

据亚马逊称,Redshift 基于 PostgreSQL,是一个面向列的数据库管理系统。这在我看来是一个非常自相矛盾的陈述,Postgres 不是面向行的数据库吗?

postgresql data-warehouse
  • 1 个回答
  • 94 Views
Martin Hope
jordaniac89
Asked: 2020-04-30 06:49:13 +0800 CST

决定在数据仓库维度中应该使用哪些值?

  • 0

我开始研究数据仓库,我遇到了一些例子,例如,我们有支票支付交易。我知道这应该是“事实”,我们将围绕它有描述事实的维度(帐户、产品等)。但是,它还包含诸如“备忘录行”和字符串“事务 id”值之类的内容,作为字符串,它们并不真正属于事实表。

我的问题是,是否应该有一个单独的支付“元”维度包含这些描述符,或者可以说像备忘录这样的东西不能被报告,因为它每次都不一样,所以我们应该把它排除在外仓库。我知道这是一个抽象的问题,但我在阅读中没有找到太多关于此的内容。任何建议将不胜感激。

data-warehouse dimensional-modeling
  • 1 个回答
  • 34 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve