【问题标题】:SSAS: Can I define a Cube In BIDS, but create/process the partitions in SSMS/SSIS?SSAS:我可以在 BIDS 中定义多维数据集,但在 SSMS/SSIS 中创建/处理分区吗?
【发布时间】:2014-02-19 01:50:50
【问题描述】:

我是 SSAS 新手,正在探索分区。我的数据源非常大(网络日志):几亿条记录。

我想在 BIDS 中定义我的多维数据集,并创建一个 SSIS 包来创建分区。现在,我正在生成 MDX 来创建和处理分区,并在 SSMS 中执行它们。

我发现他们使用 BIDS UI 手动创建分区更快,更不容易出错。

我正在尝试了解预期的工作流程:因为每次我返回 BIDS 并更改度量值并处理多维数据集时,我在 SSMS 中创建的分区都会被删除,而我在 BIDS 中创建的旧分区会重新发布.

我希望能够将我的分区从服务器刷新到 BIDS。这可能吗?如果不是,在这种情况下需要什么类型的工作流程?

谢谢!

【问题讨论】:

  • 您真的应该在 BIDS 中创建分区。当您部署您的多维数据集或度量时,您正在部署包括分区在内的所有内容(如果您使用部署工具,则可能是安全性除外)。从技术上讲,您可以从服务器打开一个多维数据集(这是实时多维数据集,所以要小心),将项目保存在旧项目之上并从那里开始工作,但这不是一个好的工作流程。充其量您可以导出脚本以进行部署,而不是仅从 BIDS 部署,然后在 SSMS 中运行之前编辑 XMLA,但这同样不是最佳选择。
  • 如果您经常为特定度量更新分区,您可以查看dynamic partitioning

标签: ssas


【解决方案1】:

分区是多维数据集结构的一部分,如果您在 BIDS 之外更改这些,则会更改已部署的 Analysis Services 数据库的结构。 BIDS 将结构的定义作为一组 XML 文件在本地保存,分区定义包含在扩展名为 .partitions 的文件中。如果您从 BIDS 部署 Analysis Services 项目,它会更新已部署的 Analysis Services 数据库以匹配本地 XML 文件的结构,从而覆盖您在 BIDS 之外所做的任何更改。

您可以将已部署的数据库返回到 Analysis Services 项目,如下所示:打开 BIDS,单击 File/New/Project,然后从“Business Intelligence Projects”项目类型中选择“Import Analysis Services Database”,然后选择您要在对话框底部本地保存项目文件的目录。单击“确定”后,将立即打开一个向导,允许您选择要从中获取定义的服务器和 Analysis Services 数据库,并在单击“下一步”时开始将其写入您选择的目录。

【讨论】:

  • 感谢您提供详细信息。这使得 BIDS 的作用更加清晰。我很惊讶数据和多维数据集的定义没有解耦......一定是我的编程背景让这看起来很奇怪。这一定是有充分理由的。很高兴知道我没有错过可以为我做到这一点的 BIDS 功能。顺便说一句,我最终编辑了 .Partitions 文件,但不值得。有大量与 UI 相关的 GUIDS,这比使用 ui 更麻烦
  • 立方体/结构定义在 AS 中与数据内容分离。只是分区的结构是结构的一部分,并且可以在更多工具中进行更改,而不仅仅是 BIDS。我描述了一种如何将结构信息返回给 BIDS 的方法。如果您查看关系数据库,情况更像您所描述的:通常不存在包含在一组 XML 文件中的通用结构定义之类的东西。每个拥有权限的人都可以创建/更改/删除表/视图。
【解决方案2】:

分区是多维数据集结构的一部分。您应该在 BIDS 中创建分区,然后使用 SSIS 或 SSMS 根据您的要求对其进行处理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多