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

如何调用Foundry SQL Server的Direct Read Engine?

Foundry JDBC/ODBC SQL访问引擎问题

通过Foundry官方文档可知,用JDBC/ODBC以SQL方式访问Foundry时有两种后端引擎可选:

  • Spark Engine
  • Direct Read Engine(DRE)

DRE理论上适合通过简单过滤提取大量数据,但我用ODBC(pyodbc)对大型数据集执行简单SQL查询时遇到了问题,且除官方文档外几乎找不到该功能的相关资料。我的查询完全符合文档定义的4项约束:

  • 底层存储为支持的parquet格式
  • 查询无SQL计算需求
  • 所有列均为基础类型,非array、map、struct类型
  • 过滤条件为col op constant形式,操作符属于=、!=、<>、>、>=、<、<=中的一种

带=过滤条件的大型数据集查询

执行以下SQL:

SELECT col FROM "/project/my_dataset" WHERE date = ?

或

SELECT col FROM "/project/my_dataset" WHERE date = '2000-01-01'

返回数据限制错误,说明实际使用的是Spark Engine:

Failed to get results - Executing query failed. FAILED_TO_EXECUTE - The result size of this query exceeds the maximum allowed result size of 1g. Please filter down on the number of rows and columns and try again.

无过滤条件的查询

执行以下SQL:

SELECT col FROM "/project/my_dataset"

返回错误:

Failed to get results - Query execution failed - INTERNAL (FoundrySqlServer:QueryFailed) with instance ID

这说明无过滤的查询被区别对待,是不是没用到Direct Read Engine(DRE)?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 04:07:40