Azure Synapse Delta表修改后门户与Notebook视图不一致问题求助
Synapse Delta表列更新后视图不一致的原因及解决办法
可能原因
- 元数据同步延迟:Synapse Lake数据库的门户展示、
sys.columns这类系统视图依赖后台元数据同步机制,而Delta表的元数据直接存在存储层的事务日志里,Notebook里的DESCRIBE/SELECT是直接读取Delta日志,两者的更新节奏不同步。 - 元数据缓存未刷新:Synapse对Lake数据库的元数据有缓存策略,新增列后缓存没及时更新,导致系统视图和门户还显示旧结构。
- 跨引擎操作的元数据隔离:如果是通过Spark引擎执行的
ALTER TABLE(Delta表默认用Spark),而sys.columns属于SQL池的系统视图,Spark操作的是Delta湖自身的元数据,SQL池的系统视图需要通过Synapse的同步机制才能拿到最新数据,两者元数据存储是分离的。
解决方法
- 手动刷新元数据:在Synapse Studio的SQL脚本窗口执行命令强制刷新,针对单表:
或者刷新整个数据库:REFRESH EXTERNAL TABLE [你的表名];REFRESH DATABASE [你的数据库名]; - 重启Synapse会话:关闭当前Synapse Studio的浏览器标签,重新登录,前端缓存可能导致门户显示没跟上。
- 等待同步完成:去Synapse的「监控」面板查看元数据同步任务的状态,等同步结束后再检查门户和
sys.columns。 - 跨引擎验证:用SQL池的查询窗口执行
DESCRIBE [你的表名],如果还是看不到新列,说明同步还没完成,继续等待或再次触发手动刷新。
内容的提问来源于stack exchange,提问作者user1716729
相关产品推荐
相关产品推荐

