AWS DMS遇到 Error : no handler found for uri

问题描述:

当我按照文档[1]配置AWS DMS 目标端为OpenSearch, 并进行数据迁移的时候,我遇到了如下报错:

复制代码
00015696: 2024-07-31T03:26:57 [TARGET_LOAD     ]E:  Elasticsearch:FAILED SourceTable:test TargetIndex:test Operation:INSERT_ENTRY
RecordPKKey:15 RecordPKID:E629FA6598D732768F7C726B4B621285F9C3B85303900AA912017DB7617D8BDBES HttpCode:400 ESErrorResponse: 
{"error":"no handler found for uri [/test/doc/E629FA6598D732768F7C726B4B621285F9C3B85303900AA912017DB7617D8BDB] and method [PUT]"} [1026400]  (elasticsearch_utils.c:668)

我检查了跟文档中的描述没什么问题,那么为什么我会遇到这个报错呢?

分析过程 及 解决方案:

1. 首先,从报错[TARGET_LOAD] 部分就可以看到,整个任务在Fullload阶段就失败了,连Index都没创建出来,根本没到CDC阶段。

**2.**我们看到这个failure信息是这样:/test/doc, 这边给了我们启示:

我们在Endpoint Settings里加了这样一项:useNewMappingType=true

这个设置在文档[2]中有提及:

UseNewMappingType

Set this option to true for DMS to migrate documentation using the documentation type _doc. OpenSearch and an Elasticsearch cluster only support the _doc documentation type in versions 7. x and later. The default value is false.

Type: Boolean

所以其实是因为我们的目标端OpenSearch/ElasticSearch版本高于7.*, 所以DMS在查数据的时候,必须插入为/test/_doc, 而不是/test/doc.

在加上这个设置以后,问题迎刃而解。

参考文档:

1\] [使用 Amazon OpenSearch Service 集群作为 Amazon Database Migration Service 的目标 - Amazon 数据库迁移服务](https://docs.amazonaws.cn/dms/latest/userguide/CHAP_Target.Elasticsearch.html "使用 Amazon OpenSearch Service 集群作为 Amazon Database Migration Service 的目标 - Amazon 数据库迁移服务") \[2\] [ElasticsearchSettings - Amazon Database Migration Service](https://docs.amazonaws.cn/en_us/dms/latest/APIReference/API_ElasticsearchSettings.html "ElasticsearchSettings - Amazon Database Migration Service")

相关推荐
weixin_307779137 分钟前
破解遗留数据集成难题:基于AWS Glue的无服务器ETL实践
开发语言·云原生·云计算·etl·aws
焦糖码奇朵、15 分钟前
移动通信网络建设-实验2:5G站点选型与设备部署
网络·数据库·人工智能·5g·信号处理·基带工程
l1t16 分钟前
把ITPUB newkid先生编写的Oracle语法数独求解SQL改写成DuckDB
数据库·人工智能·sql·oracle·duckdb
ヾChen17 分钟前
MySQL——增删改查操作
数据库·sql·物联网·学习·mysql
betazhou17 分钟前
Oracle Goldengate 同步过程的同步用户权限设置
数据库·oracle·goldengate·ogg·goldengate授权
0和1的舞者22 分钟前
《MySQL数据库进阶(九):数据库备份与恢复(二)》
数据库·mysql·oracle·程序员·策略模式·备份与恢复
稻香味秋天44 分钟前
MySQL和DB2在SQL语法上的差异
数据库·sql
得物技术1 小时前
得物TiDB升级实践
数据库·性能优化·tidb
工藤学编程1 小时前
零基础学AI大模型之Milvus向量数据库全解析
数据库·人工智能·milvus
爱刘温柔的小猪1 小时前
企业级混合存储架构:MySQL + MinIO 混合存储实践
数据库·mysql·架构·对象存储