ADF复制JSON Blob到Kusto表提示映射未找到的原因及解决方法
报错原因
- 数据库配置缺失:从Kusto失败日志的
in database '' could not be found可以看出,ADF的Kusto链接服务或Sink配置中未正确指定目标数据库名称,导致Kusto没有在对应库下检索映射 - 映射层级/类型不匹配:预创建的ingestion mapping默认是表级资源,如果你创建映射时选错了表、误将映射创建为数据库级、映射类型设为非JSON、或者名称大小写/拼写和ADF中填写的不一致,都会触发找不到映射的报错
- 配置冲突:ADF Copy Activity中同时配置了「Ingestion mapping name」和页面自带的字段映射规则,二者逻辑冲突导致ADF传递映射参数错误
修复步骤
- 首先在Kusto中运行如下命令验证预创建映射的正确性,确认返回结果中存在目标映射,且名称、大小写、类型完全匹配:
.show table <你的目标表名> ingestion json mappings
- 检查ADF Kusto Sink配置:
- 确认Sink页填写的目标数据库、表名和你创建映射的库表完全一致,优先在Kusto链接服务中固定目标数据库配置,避免动态参数传递为空
- 清空ADF Copy Activity「Mapping」配置区的所有自定义字段映射,使用预创建ingestion mapping时不需要重复配置页面字段映射,二者选其一即可
- 应急替代方案:如果还是无法定位问题,可以删除预创建的ingestion mapping,直接在ADF Sink的「Ingestion mapping」输入框中填写JSON格式的映射内容,不需要填写映射名称,即可绕开预创建映射的检索逻辑
内容的提问来源于stack exchange,提问作者Ace
相关产品推荐
相关产品推荐

