Azure Analysis Services最大允许内存问题

时间:2017-08-11 11:58:21

标签: azure memory business-intelligence azure-analysis-services

我遇到了一个我最近经常遇到的问题。我正在使用Analysis服务标准层即ie。有20GB的内存。但是,有时当我处理多维数据集时,我收到以下错误:

  

“例外:Microsoft.AnalysisServices.OperationException:失败   保存对服务器的修改。错误返回:'您已到达   您的层的最大允许内存分配。考虑   升级到具有更多可用内存的层。技术细节:   RootActivityId:e024b2d1-ce22-4edd-9a21-68b6b288d7bb日期(UTC):   8/11/2017 11:48:20 AM'。在   Microsoft.AnalysisServices.Tabular.Model.SaveChanges(SaveOptions   saveOptions)   Microsoft.AnalysisServices.Tabular.Model.SaveChanges(SaveFlags   saveFlags)在提交#0.Run(TimerInfo myTimer,TraceWriter日志)中   :第59行堆栈跟踪:at   Microsoft.AnalysisServices.Tabular.Model.SaveChanges(SaveOptions   saveOptions)   Microsoft.AnalysisServices.Tabular.Model.SaveChanges(SaveFlags   saveFlags)在提交#0.Run(TimerInfo myTimer,TraceWriter log)“

基本上表格在内存引擎中使用xVelocity,因此所有数据都在内存中。那么这是否意味着内存包括数据库中的所有内存以及表格模型中计算表所需的所有内存?如果使用分区来处理模型,它会解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

模型中的数据全部存储在内存中。如果您只有一个已经处理过的分区,并且在其上调用了process full,则需要加倍内存。对数据进行分区并仅加载新的/更改的分区将避免您需要双倍的内存。