首页 > 解决方案 > 由于数据库中的结构更改,当前会话不再可用 - 表格

问题描述

我们正在使用用于自助式 BI 目的的 SQL Server 表格模型。每月我们有大约 90 名不同的人在使用该模型。最近,我们在连接到表格模型的客户端工具(Excel 和 Power BI)中遇到了一些问题/错误。请参阅屏幕截图。在过去的一段时间里,我们没有对模型进行任何重大更改。我们注意到在我们的增量加载之后错误不断出现,即我们每 15 分钟处理这些分区的多个分区的完整进程。该过程由每 15 分钟安排一次并处理 3 个表中的 5 个分区的 SSIS 作业启动。

编辑:经过一些研究,我发现问题出在观点上。每次我对任何对象做一个完整的过程。出现错误。这不会发生在默认模型视图上。虽然仍然没有找到解决方案。

当您更改 power bi 报告或 excel 文件时会发生错误。例如,当您进行刷新或单击过滤器时。如果您多次按刷新,连接就会恢复并且一切正常。客户似乎失去了与模型的联系。15 分钟后问题再次出现。

这对用户来说是非常痛苦的。特别是当他们在演示过程中。

这是我们尝试过的:

我希望有人可以帮助我们。

屏幕截图 Power BI

截图 Excel

标签: ssaspowerbidaxssas-tabular

解决方案


您不应该只看到分区的完整进程甚至整个表所看到的错误。我们每小时对一些核心表执行此操作,我们没有看到任何类似的问题(我们会)

我从假设开始

  • 您的 15 分钟过程不仅仅是使用刷新命令处理分区
  • 环境中正在发生其他事情(无论是否已安排)。谁有权更改架构?是否是用户/开发人员故意或不进行更改?

唯一会导致这种错误的是 Alter、Delete 或 CreateOrReplace TMSL 命令

因此,除非这会触发您自己对诊断过程的想法,否则我会执行以下步骤

注意:我假设您的用户在您的测试环境上运行 15 分钟处理例程时也会看到此问题。您应该在没有其他任何东西运行的测试环境中执行以下操作,以消除其他人干扰实验的可能性。如果您没有具有代表性的测试环境,那么您将不得不在现场进行,但我会在几个小时内或在某种更改控制过程中执行此操作,关闭您的 15 分钟刷新并且对多维数据集的管理员权限被严重锁定以确保没有任何东西可以干扰您的实验。

首先证明你可以用 15 分钟的例程重现这个问题

  • 获取已知会出现错误的示例 PowerBI 报告(我更喜欢 Power BI 进行复制,因为它比 Excel 稍微简单一些)
  • 刷新你的 PowerBI 并探索数据以证明错误没有发生
  • 运行您的 15 分钟流程
  • 您现在应该看到报告的问题。如果你这样做了,太好了,你有一个可重现的问题!如果你不这样做,那么它就不像你想象的那样,你需要找到可靠地重现这些错误的方法。(也许正在发生的其他事情不是 15 分钟的过程)

因此,现在您确定如何重现该问题,您需要确定是否真的是导致问题的处理

  • 刷新你的 PowerBI 并探索数据以证明错误没有发生
  • 执行(通过 SSMS)您的 XMLA,为您的一个表处理整个数据库

它应该看起来像这样

{  
  "refresh": {  
    "type": "full",  
    "objects": [  
      {  
        "database": "yourdbname"  
      }  
    ]  
  }  
}  
  • 做用户看到问题时所做的事情。
  • 如果您也看到了这个问题,那么我会向 Microsoft 支持提出问题,因为这不应该发生
  • 如果您没有看到问题,那么您可以将此处理细化为单个表的分区。但是因为我们已经为上面的整个数据库做了一个过程,如果不应该改变结果
  • 如果您仍然没有看到问题,那么这不是导致此问题的处理(我怀疑),而是 15 分钟例程中的其他原因导致它。深入了解该过程并了解它还在做什么。

除此检查外,日志还应显示是否发生了任何其他处理任务或 XMLA 类型。

我希望这些想法能让您更接近于找到为您的用户带来这种体验的实际活动。如果你能发布你的进展方式和发现的内容,那就太好了。


推荐阅读