我最近问了一个关于多对多关系的问题,以及如何使用它们来计算得到很好回答的交叉点。现在,我们的多维数据集还有另一个很好的需求,可以将其扩展到更多数据。一般问题仍然存在:How many orders contain both product x and y?
但是,度量值组现在要大得多,目前大约有 14 亿行。我尝试使用另一篇文章中描述的方法来实现这一点,其中包含几个隐藏的交叉引用度量组。但是,这对于我们的硬件来说实在是太大了,立方体的大小接近 0.5 TB,并且查询需要几分钟才能完成。
现在我会尝试使用另一个选项:我可以通过计算度量访问我们的关系数据库吗?看来我可以使用本文中描述的UDF 。我可以在 C# 中编写一个函数来查询我们的关系数据库并返回包含用户选择的产品的所有订单。但为了做到这一点,我需要将用户选择的所有维度数据提供给 UDF。我还需要 UDF 返回计算值,以便将其作为计算成员的结果输出。那可能吗?如果是,如何?microsoft 提供的示例仅包含一个小的确定性字符串函数作为 UDF。