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

Apache Superset 4.1.1+sqlalchemy-kusto创建数据集无法加载列

解决Apache Superset 4.1.1连接Azure Data Explorer加载表列失败的问题

问题分析

你遇到的核心问题是:Superset 4.1.1搭配sqlalchemy-kusto==2.0.1成功连接Azure Data Explorer后,能正常显示数据库和表列表,但选择表加载列时触发报错,日志显示sqlglot解析SELECT TOP 100 *语句时出现语法错误。这是因为Kusto SQL的TOP语法与标准SQL存在差异,当前sqlalchemy-kusto版本和Superset内置的sqlglot解析器兼容性不足,导致解析失败。

可行解决方案

方案1:降级sqlalchemy-kusto版本

sqlalchemy-kusto 2.x版本对Superset 4.x的sqlglot支持不完善,尝试降级到适配的旧版本:

  1. 修改values.yaml中的bootstrapScript,替换依赖安装命令:
    bootstrapScript:
      ...
      pip install psycopg2-binary==2.9.6
      pip install sqlalchemy-kusto==1.1.0
    
  2. 重新部署Superset,确保新依赖生效。

方案2:配置Superset使用Kusto专属SQL解析方言

Superset默认可能未正确识别Kusto的SQL语法规则,需强制指定对应方言:

  1. 进入Superset的数据库配置页面,找到已创建的Azure Data Explorer连接。
  2. 打开Advanced选项卡,在SQL Parse Dialect下拉框中选择kusto(若下拉无选项则手动输入kusto)。
  3. 保存配置后,重新尝试加载表列。

方案3:临时禁用SQL解析(绕过方案)

如果上述方案无效,可临时关闭Superset的SQL解析功能跳过错误:

  1. 在values.yaml中添加环境变量配置:
    env:
      ...
      SUPERSET_SQL_PARSE_ENABLED: "False"
    
  2. 重启Superset服务,此时加载表列时会跳过sqlglot解析,直接从数据源获取列信息。

验证

完成任一方案配置后,重新进入数据集创建页面选择目标表,检查是否能正常加载列信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 06:32:39