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")

相关推荐
星环科技TDH社区版11 分钟前
星环科技产品可存储的表格式功能介绍以及创建示例
大数据·数据库
容器魔方1 小时前
华为云亮相 KubeCon China 2025,开源生态引领 AI 时代技术跃迁
云原生·容器·云计算
Tapdata4 小时前
全球 DaaS 市场研究报告上线,聚焦数据服务化趋势与行业演进路径
数据库
李少兄5 小时前
MySQL 默认连接数
数据库·mysql
刘一说5 小时前
资深Java工程师的面试题目(六)数据存储
java·开发语言·数据库·面试·性能优化
江沉晚呤时5 小时前
EventSourcing.NetCore:基于事件溯源模式的 .NET Core 库
java·开发语言·数据库
珹洺6 小时前
数据库系统概论(十九)详细讲解关系查询处理与查询优化
数据库
liulun6 小时前
SQLite官方数据库加密方案
数据库·sqlite
努力的小郑6 小时前
《从IaaS到容器化:深度解析云计算三层架构与阿里云ECS+K8s协同实践》
阿里云·云计算
小五Z6 小时前
MySQL--InnoDB存储引擎--架构
数据库·mysql