具有多个数据库的 SSAS 立方体

2024-01-11

我有 3 个具有相同结构但数据不同的数据库,因为它们来自不同的客户端。

现在,我有一个现有的 SSAS 项目。其数据源视图、多维数据集和维度只能使用或访问一个数据库。

  • 我想要的是能够使用具有相同结构的多个数据库,并使用它们创建一个多维数据集。
  • 每个客户端还必须能够使用多维数据集,但他们只能看到自己的数据。

这些可能吗?您能提供一些见解和一些有用的参考吗?


简单的解决方案解决此问题的最简单方法是仅使用三个 Analysis Services 数据库。设置很容易,您只需三个结构相同的数据库,并且无需管理多维数据集中的安全性,只需访问多维数据集。它易于管理,并且不易出错,允许用户访问他们不应该看到的数据。由于任何人都不得访问其他公司的数据,因此不需要一个公共多维数据集。

只需使用不同的 Analysis Services 数据库名称部署项目 3 次即可。 然后更改已部署数据库的数据源对象以指向不同的关系数据库。

第一步,在 Business Intelligence Development Studio 中,右键单击解决方案资源管理器中的项目节点,选择底部条目(“属性”),然后选择“部署”。在这里,您可以输入要部署解决方案的服务器以及数据库名称。关闭对话框后,再次右键单击项目节点,然后选择“部署”。使用三个不同的数据库名称重复此步骤。

然后,在 SQL Server Management Studio 中连接到 Analysis Services 服务器,打开每个数据库,并编辑每个数据库的数据源对象以指向其关系数据库。 之后,重新处理 Analysis Services 数据库。

或者,您也可以在 BIDS 中执行所有操作,即。 e.在更改部署目标数据库和部署之间,更改那里的数据源,并在部署后可能重新处理 Analysis Services 数据库。

如果您假设需要多次更改和部署多维数据集定义,则可能可以使用可以使用“配置管理器”按钮在项目属性对话框中编辑的配置。您将拥有三种配置,每个配置对应一个目标 Analysis Services 数据库。您可以在每个部署的工具栏下拉列表中选择一种配置,而无需一次又一次编辑属性。

如果您需要经常这样做,我认为通过 XMLA、AMO 或 PowerShell 自动化更改数据库和重新处理多维数据集的步骤并不困难。但要实现这一点,这将是另一个问题。

更复杂的解决方案

如果您确实希望将所有内容都放在一个多维数据集中,那么您必须在数据源视图中对来自不同源的表进行并集。如果所有三个关系数据库都位于同一个 SQL Server 实例上,您可以将其定义为数据源视图中的命名查询,或者定义为其中一个数据库中的视图,甚至可能更好地定义为单独的关系数据库中的视图或表。数据库。您可以通过以下形式从在同一 SQL Server 实例中运行的另一个数据库访问表或视图NameOfDB.Schema.Tablename.

如果这些数据库位于不同的实例上,您可以使用链接服务器。

当然,您必须管理这些不同数据库中的键,以便相同的维度条目具有相同的键,而不同的维度条目具有不同的键。您必须在多维数据集中设置安全性,以便任何用户都无法看到不应该看到的数据。

虽然您可以将 Analysis Services 中的不同数据源对象用于 Analysis Services 中的不同表或命名查询,但其中每一个都只使用一个,因为实际上,这是发送到该源的一个 SQL 语句。维度需要基于一个数据源视图对象,例如一个命名查询、视图或表。对于事实表,您可以使用分区来解决这个问题,但对于维度则不行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

具有多个数据库的 SSAS 立方体 的相关文章

  • 动态数据透视表中的行和列总计

    在 SQL Server 2008 中 我有一个包含 3 列的表 tblStock 零件代码 NVARCHAR 50 库存数量 INT 位置 NVARCHAR 50 下面是一些示例数据 PartCode StockQty Location
  • Excel 与 SSAS 的连接 - 传输层遇到错误

    我在 SQL 2012 中有一个 SSAS 多维数据集 可以使用 Windows 用户凭据从 Excel 2010 连接到该数据集 而不会出现问题 但是 每当我重新启动托管多维数据集的服务器并尝试刷新 Excel 中的数据透视表 在客户端计
  • 如何将多个文件扩展名添加到 Foreach 循环容器 SSIS 中的 Files: 输入字段

    如何将多个文件扩展名添加到 SSIS 2008 中 Foreach 循环容器中的 Files 输入字段 我目前已输入为 zip OR csv看图片 但它不起作用 只有当我有一个像这样的值时才起作用 zip 我认为您不能在一个文件中指定两个文
  • 在 BIML 中的数据流之前创建表

    我正在使用 BIML 和 BIDSHelper 创建 SSIS 包 我正在尝试将数据从 csv 导入到 sql server 我想在数据流发生之前在目标数据库中创建表 这是我的代码
  • 如何绘制立方体的面?

    我已经做了一个可以在 python 上旋转的立方体 但现在我想为这些面着色 以便在旋转时识别每个面 代码如下 from mpl toolkits mplot3d import Axes3D import matplotlib pyplot
  • 八顶点立方体的法向量

    我正在使用 WEBGL 今天遇到了我的立方体顶点法线的问题 我用立方体网格检查了我的代码来自互联网而且效果很好 问题是 来自互联网的立方体有 24 个顶点 每个面 4 个顶点 6 个面 我认为这对于我的立方体来说太多了 摆弄我的立方体 Fi
  • 如何在 MDX 中使用 UNION

    我想要UNION下面MDX询问 对于这两个查询 同一日期范围的度量和维度是不同的 请帮助我摆脱困境 SELECT NON EMPTY Measures Number of es2 ON COLUMNS NON EMPTY Date Year
  • 数据仓库 - 具有多对多关系的缓慢变化的维度

    举个例子 假设我有一个包含两个维度和一个度量的事实表 事实货币表 项目密钥 int PersonKey 整数 现金金额 两个维度的定义如下 DimProject 0 型维度 即静态 项目密钥 int 项目名称 varchar 50 DimP
  • 颤动 3D 立方体效果

    我想问一下如何在 Flutter 中创建这种效果 也许你知道 flutter 没有 3d 引擎 但你不需要它 你可以使用透视变换 我为你做了一个小例子 import dart math import package flutter mate
  • MDX DRILLTHROUGH 失败但 select 可以成功执行

    我有以下 MDX 查询 它在执行时成功返回度量 SELECT Measures Closed Quote OE Retail ON COLUMNS FROM Sales WHERE Posting Date Date YQMD Month
  • AMO OLAP 查询绑定

    根据业务逻辑 有时我需要更改多维数据集中的客户维度的源表 以前我使用以下代码更改多维数据集的结构 MyServerDataSourceView Schema Tables DimCustomers ExtendedProperties Qu
  • Cube、Rollup 和 GroupBy 运算符之间有什么区别?

    我找不到有关差异的任何详细文档 我确实注意到了差异 因为交换时cube and groupBy函数调用 我得到不同的结果 我注意到对于结果使用cube 我在以前使用的表达式上得到了很多空值groupBy 它们的工作方式不同 groupBy简
  • 从关系型 OLTP 数据库到 OLAP 多维数据集的最佳方法是什么?

    我有一个相当标准的 OLTP 标准化数据库 并且我意识到我需要在数据的不同维度上执行一些复杂的查询 平均值 标准差 所以我转向了 SSAS 和 OLAP 多维数据集的创建 然而 要创建多维数据集 我相信我的数据源结构需要采用 星形 或 雪花
  • 如何强制文本框拆分,而不是移动到 SSRS 2005 中的第二页(PDF 导出)?

    这个问题是我的后续问题原问题 https stackoverflow com questions 1345853 how to keep list contents on the first page ssrs 2005 pdf expor
  • 对 CUBEVALUE 中的多个度量求和

    我尝试了多个不同的函数 CUBESET CUBEVALUE 等 但我似乎无法找到一种方法来在同一公式中对多个度量求和 关于如何完成这项工作有什么建议吗 我进行了大量搜索但找不到方法 想法如下 但这不起作用 CUBEVALUE Connect
  • 如何删除空值?

    如何删除底部计数中的空值 即 我只想查看实际销售单位的产品 我尝试过非空和非空但没有成功 with member Measures Amount Sold as Measures Internet Sales Amount format s
  • MPAndroidChart:带有三次贝塞尔曲线的折线图显示错误(尖峰和循环)

    我正在尝试制作带有立方图的折线图 结果如下面的屏幕截图所示 三次贝塞尔曲线显示错误并且有 尖峰 有人可以帮我让它正确显示吗 这是我的配置 LineDataSet lineDataSet new LineDataSet entries nam
  • 在Excel中使用单个切片器控制两个具有不同数据源的数据透视表

    我在 Excel 文件中使用切片器时遇到问题 在我的 Excel 文件中 我有两个工作表 在第一个中 有一个数据透视表从 OLAP 多维数据集获取数据 在第二个中 我有一个数据透视表从另一个 Excel 文件获取数据 我想要一个名为 组织
  • 如何在MDX查询中的行上显示多个维度?

    我有一个叫做Sales KG在我的立方体和二维中 Groups and Formats 有没有办法在单行中显示最后一个 我有这样的疑问 select Measures Sales KG on Columns Formats Format T
  • 使用 R 连接到 SSAS 多维数据集

    是否可以使用 R 查询 SQL Server Analysis Services 多维数据集 我在不同的外部服务器上有这个多维数据集 并且我正在我的计算机上工作 但我使用我的域帐户在服务器上拥有管理员权限 简而言之 我想创建一个分析服务解决

随机推荐

  • 电话软件开发语言

    是否存在通用的手机开发语言 我的意思是 例如 php 或 java 或其他 编辑 我们必须开发一些电话应用程序 并且我们正在寻找不同设备 黑莓 iPhone 摩托罗拉等 中最好的可重用语言 Java 已经非常接近了 但它还远未达到通用性 i
  • 我可以在 Visual Basic 中使用 C++ 函数吗?

    我对编程有点陌生 但我已经制作了一个非常好的库来计算数学问题 例如二次方程和许多其他问题 现在我遇到了一个朋友 他正在用 VB 进行一些编程 我们在想是否可以将我的函数从 C 导入到他的代码中 以便他可以在需要时调用它们 这样我们就可以制作
  • 有没有办法删除逻辑应用运行历史记录/日志?

    有没有办法从逻辑应用中删除所有运行历史记录日志 我知道现在正在测试 日志保留时间 的预览 但删除所有日志的最频繁时间是每周一次 我需要能够更频繁地进行此操作 在本例中是每三天一次 还有其他方法可以删除逻辑应用日志 历史记录吗 EDIT 查看
  • NodeJS 模块安装

    我正在尝试在无法访问互联网的计算机上安装 NodeJS 服务器 我复制了 exe 并执行了它 但现在我需要安装几个模块 所以我的问题是 我可以简单地从我的电脑复制模块吗 或者我必须将服务器连接到互联网并使用 npm 吗 编辑 我已经将所有必
  • Java集群中如何最好地进行文件锁定

    我有一个在 JBoss 上运行的服务器集群 我需要以安全的方式更新文件 具体来说 我需要 锁定文件 A 如果它已经被锁定 则以安全的方式阻塞 这样如果 JVM 突然死机 就不会出现悬空锁 30秒的超时就可以了 读取文件A 改变内容 将文件写
  • t 作为 R 中全局变量的名称:不可能吗?

    我想使用 t 作为 R 中全局变量的名称 但它不允许我这样做 sq1 function t lt lt 7 我收到以下错误 Error in sq1 cannot change value of locked binding for t 我
  • 接收信号的 QML 元素失效了?

    我有类似以下的代码 id myComponent signal updateState property variant modelList Repeater model modelList MyButton Connection targ
  • 3D 空间中向量的旋转和方向 - 逆序

    我在 3D 空间中有两个向量 S 开始 和T 目标 我想找到允许这种变换的旋转矩阵 RM 我知道通过计算叉积 S T我得到了旋转轴 之间的角度S and T是 谁 给的tan S T S T where S T is the 点积S 和 T
  • 使用libavcodec解码H264视频,C

    我正在尝试使用 ffmpeg libavcodec 解码原始 h264 文件 但无法使其正常工作 目前输出应该是原始 YUV 文件 可以用GCC编译代码 gcc o decoder decoder c L lib llibavcodec l
  • 如何使用java.sql.Date节省时间?

    目前 在我的代码中 我正在使用以下 setter 方法将当前日期和时间保存到数据库 但它只保存日期 而不保存时间 emp setJoiningDate new java sql Date System currentTimeMillis 方
  • 可以在 Folium 中绘制路径吗?

    我阅读了许多与此相关的文档 但找不到我想要的东西 我想绘制两点之间的步行路径 是否可以 如果没有 python 中是否有其他库用于此目的 当然可以 使用PolyLine https python visualization github i
  • 无法使用 Google 云存储和 Cloud Functions for Firebase 下载文件

    我遇到的问题与此相反 使用 Cloud Functions for Firebase 和 google cloud storage 删除图像时出现问题 https stackoverflow com questions 43178152 i
  • 有 C++11 CSPRNG 吗?

    众所周知 梅森扭转者加密上不安全 http www math sci hiroshima u ac jp m mat MT efaq html Mersenne Twister 不具有加密安全性 MT 是基于 线性递归 任何由 a 生成的伪
  • 更改默认值“{0} 字段为必填项”(最终解决方案?)

    再会 我有以下用于登录表单的 ViewModel 类 using System ComponentModel DataAnnotations public class UserLogin IDataErrorInfo Required Di
  • 使用 jquery 从 CDATA 和描述标签中获取图像

    如何从 CDATA 和描述标签中获取图像 下面是 XML 代码
  • JavaScript:document.getElementById() 返回 NULL

    我对 Javascript 还很陌生 但 document getElementById 遇到了一个问题 它总是返回 NULL 这让我抓狂 我的代码中有一个元素 我想获取它的坐标 以便可以移动它 这是代码
  • UIDevice currentDevice 模型可能值

    返回的所有可能值是多少 UIDevice currentDevice model 它不是有记录的 http developer apple com library ios documentation uikit reference UIDe
  • Telerik MVC Extensions Grid - 如何将网格过滤器应用于初始 LINQ 查询或传递到数据库?

    目前 在我的 MVC 网格中 我使用普通的服务器绑定 然后将过滤器作为查询字符串附加到 URL 此方法的问题是 如果我查询默认情况下有数千条记录的网格 但我只在网格的第一页 分页过滤器 上显示前 30 条记录 同样的事情也适用于姓氏的字符串
  • Servlet 中的参数化构造函数

    我可以在 servlet 中声明参数化构造函数吗 如果没有那么为什么 No Servlet 实例由容器通过反射创建 它们期望找到一个公共的 无参数的构造函数 默认构造函数 要配置 servlet 请使用 web xml 文件中指定的 ser
  • 具有多个数据库的 SSAS 立方体

    我有 3 个具有相同结构但数据不同的数据库 因为它们来自不同的客户端 现在 我有一个现有的 SSAS 项目 其数据源视图 多维数据集和维度只能使用或访问一个数据库 我想要的是能够使用具有相同结构的多个数据库 并使用它们创建一个多维数据集 每