内容纲要
概要描述
向es表中写入数据时报错:id is too long, must be no longer than 512 bytes but was:1179
详细说明
通过SQL向es表中写入数据时,报如下错误:
elasticsearch的index request中写死的一个检查,检查 **_id**
字段(即es表的第一个字段)必须要小于等于512字节,否则就会抛此异常
解决方案
1、如果TDH是6.x以上版本,可以通过 **octet_length()**
函数找到是哪行数据内容超过了限制
SELECT octet_length(字段1) FROM 表名;
2、如果TDH是6.x以下版本,可以使用 md5() 函数构建定长的唯一列
选择表中的已有的两列使用md5()函数构建唯一列;
SELECT md5(字段2||字段3) FROM 表名;