【问题标题】:SSAS Cube (Multidimensional) - Unknown tableSSAS 多维数据集(多维) - 未知表
【发布时间】:2017-08-21 09:21:12
【问题描述】:

我在 Ms SQL Server 2012 企业版中创建了一个数据仓库数据库。我可以处理立方体,一切正常。

现在我有一位顾问帮助我为我的数据仓库添加额外的维度。她的 MS SQL Server 2012 标准版上有一个数据库副本。

她在我们的测试站点(也是企业版)上创建了一个全新的 Cube(多维)项目,在该项目中她使用了数据仓库数据库中的一些旧维度(视图)以及她创建的新维度(也是视图) .她创建的 Cube 项目是针对我们使用 SQL Server 2012 企业版分析服务器的测试环境创建的。

奇怪的是,当她尝试处理旧维度时,它工作正常。但当她试图处理一个新维度时,它失败了。

错误是:

DimensionAttribute [Vdim Contract Location Company].[Contract Location Company Key] : The KeyColumn #0 refers to 'edw_vdim_ContractLocationCompany', an unknown table, in the 'OnTrack' DataSourceView. 

奇怪的是,我们可以从 Cube 项目中探索数据。但是当我们尝试处理它时,它却找不到它?

【问题讨论】:

  • 验证运行 SSAS 帐户的用户确实可以访问数据库,使用为“OnTrack”DSV 配置的连接字符串(并且它连接到正确的数据库 - 包括 DNS 别名等内容)。

标签: sql-server ssas


【解决方案1】:

听起来顾问的 SSAS 数据库(在测试环境中)中的数据源仍然指向实时源数据库。哪个当然不会有新的表格/视图。

检查 SSMS 中的连接字符串。 如果它指向正确的位置,请检查 ImpersonationInfo 下的设置。可能是尚未将这些新视图/表中的 SELECT 权限授予正在使用的登录名。

【讨论】:

    【解决方案2】:

    根据错误描述 - 您的维度指的是 DSV 中缺少的表。我会执行以下操作来找出错误原因:

    • 检查 DSV 中是否存在引用的表,当您在 SSMS 维度设计器中选择“探索数据”时可以看到数据,并且在 DSV 设计器中也可以检查这一点
    • 如果 DSV 中存在表 - 尝试对您的项目进行完整部署,而不是差异部署。这是在项目 - 设置菜单中设置的。
    • 如果仍然没有成功 - 从维度或维度本身删除错误的属性,部署项目。然后重新添加已删除的属性或维度并重新部署项目。这将从项目中清除过时的元数据。

    错误与您的环境版本无关

    【讨论】:

    • 感谢您的评论。是的,我可以在“探索数据”中看到数据。进行完整的部署也无济于事。还从服务器中删除了多维数据集并再次部署,但没有成功。
    • @olf,尝试删除维度属性Contract Location Company Key,部署并处理维度。然后 -- 重新创建这个属性并再次处理。
    • Ferdipux,成功了!删除整个维度,部署,添加维度并重新部署。请提交您的解决方案的答案,我会接受答案。
    猜你喜欢
    • 2019-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 2018-07-23
    • 1970-01-01
    相关资源
    最近更新 更多