我知道什么是数据仓库以及什么是大数据.但我对Data Warehouse Vs Big Data感到困惑.两者都有不同的名称或两者都不同(概念和物理).
我对事实表进行了一些研发,无论它们是标准化还是非标准化.我遇到了一些令我困惑的发现.
根据Kimball的说法:
维度模型结合了规范化和非规范化表格结构.描述性信息的维度表在同一个表中具有高度非规范化,具有详细和分层的汇总属性.同时,具有性能指标的事实表通常是标准化的.虽然我们建议不要在单独的表中使用snowflaked维度属性进行完全规范化(为业务用户创建类似暴雪的条件),但是在同一个表中同时包含度量和描述的单个非规范化大型宽表也是不明智的.
我认为另一个发现,我认为是好的,来自GeekInterview的fazalhp:
DW的主要基础是对数据进行去规范化,以便报告工具更快地访问...因此,如果你构建一个DW ..90%,它必须被去规范化,当然事实表必须被规范化. ..
所以我的问题是,事实表是规范化的还是非规范化的?如果这些中的任何一个如何以及为什么?
reporting data-warehouse database-normalization business-intelligence
我使用以下SQL命令sp_rename来重命名列.
USE MYSYS;
GO
EXEC sp_rename 'MYSYS.SYSDetails.AssetName', 'AssetTypeName', 'COLUMN';
GO
Run Code Online (Sandbox Code Playgroud)
但它导致错误:
消息15248,级别11,状态1,过程sp_rename,行238
参数@objname不明确或声明的@objtype(COLUMN)错误.
请建议如何使用重命名列sp_rename.
[我使用的这个命令在Microsoft Technet上找到]
如何使用当前年份和月份过滤 MDX 中的数据?
到目前为止我所做的是:
WHERE strtomember{ [Time Dim].[FSCL YEAR].&["+Format(now(), "yyyy")+"], [Time Dim].[FSCL MONTH].&["+Format(now(), "m")+"] }
Run Code Online (Sandbox Code Playgroud)
但它不起作用。
我们正在构建一个Data Vault (2.0)模型来捕获 SalesForce 数据。与许多其他源一样,源中的记录被软删除。当我们将数据获取到数据模型时,我们不想过滤任何数据,也不想捕获目标系统中已删除的记录。搜索了处理数据仓库模型中已删除记录的最佳实践,但没有成功。有人可以在这里说明一下吗?我们是否应该添加IsDeleted标志Hub或Satellite考虑模型的未来扩展以及要遵循的最佳设计实践。此外,此处的任何参考材料链接都会有很大帮助。谢谢。
我正在查看Linkedin个人资料 - PDF导出功能.我发现很少有像Projects,Skills这样的部分没有以PDF格式导出.我错过了任何设置更改吗?
另外,我想知道"如果我们使用Linkedin导出的个人资料作为简历,那会好吗?" 我们发给招聘人员的简历......
以下是我的代码.
DECLARE @msg NVARCHAR(MAX) = NULL
;WITH CTE AS (
SELECT 'A' AS Message
UNION
SELECT 'B' AS Message
UNION
SELECT 'C' AS Message
UNION
SELECT 'D' AS Message
)
SELECT @msg = COALESCE(ISNULL(@msg,'Attachements') + ', ','') + Message FROM CTE
SELECT @msg + ' are missing.'
Run Code Online (Sandbox Code Playgroud)
它正在产生输出: -
Attachments, A, B, C, D are missing.
Run Code Online (Sandbox Code Playgroud)
我怎么能避免在" Attachments" 之后的第一个逗号?请帮忙.
其他满足要求的技术也是受欢迎的.
谢谢.
我正在使用SOUNDEX&DIFFERENCE函数对表中的数据进行一些分析。
但此功能在以下类型的数据上失败。&完全不同ITEM TYPE。ITEM SIZE
SELECT SOUNDEX('ITEM TYPE'), SOUNDEX('ITEM SIZE')
op:-
I350 I350
For DIFFERENCE op: - 4
Run Code Online (Sandbox Code Playgroud)
我理解人类思维所做的每一项分析都无法编码,但我仍然想问,是否存在其他功能SQL Server可以帮助我进行下一级分析?
下面是从微软网站复制的示例代码。我做了更换事件枢纽<namespace>,<eventhub>,<AccessKeyName>,并<primary key value>与所需的值。
import sys
import logging
import datetime
import time
import os
from azure.eventhub import EventHubClient, Sender, EventData
logger = logging.getLogger("azure")
# Address can be in either of these formats:
# "amqps://<URL-encoded-SAS-policy>:<URL-encoded-SAS-key>@<namespace>.servicebus.windows.net/eventhub"
# "amqps://<namespace>.servicebus.windows.net/<eventhub>"
# SAS policy and key are not required if they are encoded in the URL
ADDRESS = "amqps://<namespace>.servicebus.windows.net/<eventhub>"
USER = "<AccessKeyName>"
KEY = "<primary key value>"
try:
if not ADDRESS:
raise ValueError("No EventHubs URL supplied.") …Run Code Online (Sandbox Code Playgroud) 我刚刚浏览了MDX文档.
我在那里找到一个条款有点棘手,而我没有清楚地理解它,如下所示
集合中元组的顺序很重要; 例如,它会影响轴维度中的嵌套顺序.第一个元组代表第一个或最外层的维度,第二个元组代表下一个最外层的维度,依此类推
{(时间.[下半场],Route.nonground.air),(Route.nonground.air,时间.[下半场])}
另外,在元组中使用交叉连接是否可以?
(Time.[2nd half] * Route.nonground.air * Route.nonground.air * Time.[2nd half])
Run Code Online (Sandbox Code Playgroud)
任何人都可以通过一个简单的例子来详细阐述
谢谢.
是否已为BEGIN...END块下的T-SQL语句分组定义了哪些规则?
因为当我BEGIN...END在CASE语句OR IIF语句中尝试块时,它会失败.
我需要BEGIN...END阻止,因为我想在CASE结果下执行多个操作.
SELECT
CASE @ChargePaid
WHEN 1 THEN
BEGIN
SELECT 'Paid'
END
WHEN 0 THEN
BEGIN
SELECT 'Not Paid'
END
END
Run Code Online (Sandbox Code Playgroud)
要么
SELECT IIF( @ChargePaid > 0, BEGIN SELECT 'Paid' END , BEGIN SELECT 'Not Paid' END )
Run Code Online (Sandbox Code Playgroud)
编辑:
IF @cond = 'First'
WITH CTE AS (
SELECT 'A missing' Result
UNION
SELECT 'B missing' Result
UNION
SELECT 'C missing' Result
)
SET @msg = SELECT Result …Run Code Online (Sandbox Code Playgroud)