我有一个 SSAS 表格模式立方体,它使用 ODBC 从 Actian Matrix 数据库中读取数据。当我使用具有 100 万行的数据集时,该项目处理良好,但当我尝试使用更大的数据集(3 亿行)时,该过程运行大约 15 分钟并失败并显示以下消息:
The operation failed because the source database does not exist, the source table does not exist, or because you do not have access to the data source.
More Details:
OLE DB or ODBC error: [ParAccel][ODBC Driver][PADB]57014:ERROR: Query (25459) cancelled on user's request
DETAIL: Query (25459) cancelled on user's request
; 57014.
An error occurred while processing the partition 'XXXX' in table 'YYYY'.
The current operation was cancelled because another operation in the transaction failed.
该消息说数据库不存在,但它没有意义,因为它在第一种情况下工作得非常好(不同之处只是一个“where子句”来限制行数)
我正在使用具有 96 Gb FREE 运行的服务器,并且我可以看到在“处理”进程运行时消耗的所有内存。当它全部耗尽时,它会运行几秒钟并失败。另外,我知道导出到 csv 文件的 3 亿行数据集的原始格式为 36 Gb,因此它应该可以完全装入内存而无需任何压缩。
我还可以保证查询在源数据库上本身可以正常工作,因此“应用户请求取消查询(25459)”消息也没有多大意义。
有人对可能发生的事情有任何想法吗?