处理SSAS表格模型失败,因为没有足够的内存

问题描述 投票:0回答:2

我有一个48 GB的内存和一个SQL Server分析服务(表格模式),在其上安装2016标准版SP1 CU7的服务器。

我可以部署从Visual Studio表格模型。

我可以手动运行XMLA脚本:

{
  "refresh": {
    "type": "full",
    "objects": [
      {
        "database": "MyCube"
      }
    ]
 }
}

但是,当我从运行SQL代理作业脚本,我得到这个错误:

the JSON DDL request failed with the following error: Failed to execute XMLA. Error returned: 'There's not enough memory to complete this operation. Please try again later when there may be more memory available.'..   at Microsoft.AnalysisServices.Xmla.XmlaClient.CheckForSoapFault

处理前的内存约为4GB,它处理多维数据集在增加,但如果它击中约18.5 GB,它失败。

是否有人知道一个解决方案吗?

memory ssas tabular
2个回答
0
投票

在SQL 2016 Analysis Services的表格实例被限制为16GB的RAM作为记录here


0
投票

当你做一个完整的过程,你保持立方体的工作副本,并在后台您处理一个卷影副本。当卷影副本准备好,然后它会替换工作副本。基本上,这意味着,在处理时需要的内存两倍的金额作为多维数据集的大小。这可能是一个问题,当你每次的16 GB的限制与SSAS标准版。

一个解决方案是第一个做的过程与clearValues,这清空立方体,然后做全过程。更多细节在这里http://byobi.com/2016/12/how-much-ram-do-i-need-for-my-ssas-tabular-server/

或者,另一个是与SSAS服务器的内存\ VertiPaqPagingPolicy设置玩。看到这里https://www.jamesserra.com/archive/2012/05/what-happens-when-a-ssas-tabular-model-exceeds-memory/这里更多的细节https://www.sqlbi.com/articles/memory-settings-in-tabular-instances-of-analysis-services/

当然还有另一种解决方案是升级到企业版。


0
投票

为了跟进格雷格的意见,我面临着类似的问题,在工作和解决方法是不是做数据库刷新的,我没有表刷新来代替。我创建了2个SQL作业。我的表格模型中有40桌。因此,基于表的大小,我刷新在其他工作中的一个作业和表格的X量表Y的量。你可以创建2个以上SQL作业并且每个工作表少,如果你想。这将少放负载上的内存。


0
投票

你可以通过你的分区表处理数据的小子集,这可以在SSMS处理。这Article提供了有关如何实现这一点很好的概述。

© www.soinside.com 2019 - 2024. All rights reserved.