You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

处理SSAS中City维度时持续出现「系统连接设备无法正常运行」错误求助

问题:SSAS处理「City」维度时提示「系统连接的设备无法正常运行」

环境配置

  • SQL Server Management Studio(SSMS)18:管理Wide World Importers(WWI)数据库
  • Visual Studio 2019:用于SSAS项目,通过SQL Server Native Client 11.0连接
  • Analysis Services:配置多维、表格两个实例,使用权限完备的服务账户
  • 数据库:Wide World Importers
  • 操作系统:Windows 11

问题详情

  • 仅处理「City」维度时触发错误,项目部署成功,但处理首个维度就弹出错误:A device attached to the system is not functioning.(系统连接的设备无法正常运行。)
  • 系统无硬件故障提示,CPU、磁盘、内存等资源无明显限制

已尝试排查步骤

  • 确认服务账户权限无异常
  • 验证SQL Server资源配置充足、网络设置正确
  • 调整SQL Server Native Client和OLE DB提供程序的兼容性设置

成因分析

这个错误在SSAS场景下并非真的指向硬件设备故障,常见触发原因包括:

  1. 数据源连接兼容性冲突:SQL Server Native Client 11.0与Windows 11或高版本SSAS存在适配问题,处理含特殊数据的维度表时易触发异常。
  2. 维度底层数据异常:「City」维度对应的数据表可能存在损坏值(特殊字符、超长字符串、NULL值处理逻辑冲突),导致SSAS读取转换数据时触发系统误判。
  3. SSAS实例配置不合理:多维实例的内存分配、并行处理设置不当,导致维度处理时资源调度异常,抛出模糊的设备错误提示。
  4. 临时目录权限缺失:SSAS服务账户对维度处理生成临时文件的目录无读写权限,导致操作失败。

解决方案

针对上述成因,可按以下步骤逐一排查解决:

  1. 更换数据源连接提供程序
    • 在Visual Studio的SSAS项目中,将数据源连接提供程序从SQL Server Native Client 11.0更换为Microsoft OLE DB Driver for SQL Server(最新版)或ODBC Driver 17 for SQL Server,重新部署后尝试处理维度。
  2. 检查并修复维度数据源
    • 在SSMS中执行以下语句排查「City」表的异常数据:
      SELECT * FROM [Wide World Importers].[Application].[Cities] 
      WHERE CityName LIKE '%[^a-zA-Z0-9 ,.-]%' OR LEN(CityName) > 255;
      
    • 清理或修复含特殊字符、超长值的记录,确保数据格式符合SSAS维度要求。
  3. 调整SSAS实例配置
    • 打开SSMS连接到SSAS多维实例,右键实例选择「属性」:
      • 在「内存」选项中,将「总内存限制」设为物理内存的70%左右,禁用「低内存时取消查询」;
      • 在「处理」选项中,将「并行处理线程数」设置为与CPU核心数匹配的值,避免资源竞争。
  4. 验证临时目录权限
    • 找到SSAS实例的临时文件目录(路径通常为C:\Program Files\Microsoft SQL Server\MSAS<版本号>.<实例名>\OLAP\Temp);
    • 确保SSAS服务账户对该目录拥有完全控制权限,添加权限后重启SSAS服务。
  5. 手动处理维度验证
    • 在SSMS中直接连接SSAS实例,找到「City」维度右键选择「处理」→「处理全部」,若成功则说明问题出在Visual Studio部署流程,可清理项目缓存(删除.vs目录)后重新部署。

内容的提问来源于stack exchange,提问作者Kevin Cianci

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 21:22:09