ES修改字段的数据类型

2023-09-18 19:13:04
-- mysql修改字段数据类型语句
ALTER TABLE `表名` MODIFY COLUMN `列名` 修改的字段类型;

-- hive 修改字段数据类型语句
ALTER TABLE 表名 CHANGE COLUMN 列名 修改的字段类型;


--es修改字段数据类型语句

无法通过一个语句进行修改。

思路:
1、对修改字段重新建修改类型的索引;
2、将旧索引数据导入新索引;
3、删除旧索引;
4、重复以上步骤。

示例:

原索引ads_assets_index_list_test_df index_value字段数据类型为float,无法使用sort进行排序,现需要改成keyword

步骤一:创建过渡索引

重新创建一个索引ads_assets_index_list_test00_df,index_value字段数据类型为keyword

步骤二:迁移数据

将旧索引的数据导入新索引

查询可以看到数据导入成功,原索引字段都存在且有数据

步骤三:删除旧索引

步骤四:重新建和旧索引同名的过渡索引

步骤五:重复步骤二三

修改成功:

注:es排序字段只能为keyword,这种方式修改完字段类型后,在使用sort时,不能按以下方式写,会报错:

查看mapping或者在选择字段的时候可以看到字段keyword的数据类型是keyword

因此,做以下修改就可以查出来了

更多推荐

JVM执行流程

一、Java为什么是一种跨平台的语言?通常,我们编写的java源代码会被JDK的编译器编译成字节码文件,再由JVM将字节码文件翻译成计算机读的懂得机器码进行执行;因为不同平台使用的JVM不一样,所以不同的JVM会把相同的字节码文件翻译成不同操作系统认识的机器码,这样就实现了跨平台;二、Java代码的执行流程解释执行为主

LabVIEW在运行时调整表控件列宽

LabVIEW在运行时调整表控件列宽如何在LabIEW中运行时调整表控件的列宽大小?在VI运行时,有两种不同的方法可以更改表中列的宽度。首先,可以使用鼠标手动更改它们;其次,可以从框图中以编程方式更改它们。手动更改列宽只有在启用列标题时,才能使用鼠标更改表的列宽。默认情况下,在LabVIEW中,列标题是禁用的。请按照以

观测云接入 NewRelic .NET 探针

背景部分客户系统采用的是.NET4.5部署研发的、基于IIS进行发布的Web项目,需要接入到观测云进行链路信息展示,ddtrace和otel对于低版本.NET支持力度有限。环境信息IIS4.0.NETcore4.0、4.5、4.6WindowServer2012R2域名配置准备一个域名www.datakit.com,需

ubuntu+.net6+docker 应用部署教程

先期工作1、本地首先安装DockerDesktop2、本地装linuxinwindows3、生成镜像后期工作1、云服务器部署生成镜像方法1、生成Dockerfile配置文件开发工具visualstudio2022如果项目已经存在,可以选中项目,右键点击->选择添加Docker支持。继续选linux项目支持docker后

基于深度学习网络的烟雾检测算法matlab仿真

目录1.算法运行效果图预览2.算法运行软件版本3.部分核心程序4.算法理论概述5.算法完整程序工程1.算法运行效果图预览2.算法运行软件版本matlab2022a3.部分核心程序.......................................................................

Tomcat常见报错以及手动实现Tomcat

一.Tomcat的简单启动1.安装Tomcat2.Tomcat启动1.双击bin目录下的startup.bat文件2.输入http://localhost:8080/,显示如下界面代表安装成功,默认在8080端口3.注意,不要关闭黑窗口,关闭了,tomcat服务就停止了.3.曾经的启动失败案例3.1Tomcat停止时报

Postman —— post请求数据类型

1、Postman中post的数据类型post中有以下数据类型1、form-data2、x-www-form-urlencoded3、raw4、binary2、Postman请求不同的post数据类型from-datamultipart/form-data,它将表单的数据组织成Key-Value形式,也可以上传文件,当

mybatis/mp批量插入非自增主键数据

文章目录前言一、mp的批量插入是假的二、真正的批量插入1.利用sql注入器处理2.采用自编码,编写xml批量执行生成内容如下:三问题问题描述问题原因问题解决粘贴一份,兼容集合替换原有文件总结自增与非自增区别:前言mybatis/mp在实际开发中是常用的优秀持久层框架,但是在非自增主键的时候,单条数据插入式可以的,当批量

[pai-diffusion]pai的easynlp的clip模型训练

EasyNLP带你玩转CLIP图文检索-知乎作者:熊兮、章捷、岑鸣、临在导读随着自媒体的不断发展,多种模态数据例如图像、文本、语音、视频等不断增长,创造了互联网上丰富多彩的世界。为了准确建模用户的多模态内容,跨模态检索是跨模态理解的重要任务,…https://zhuanlan.zhihu.com/p/528476134

大型语言模型:SBERT — 句子BERT

了解siameseBERT网络如何准确地将句子转换为嵌入简介Transformer在NLP领域取得了进化性的进步,这已不是什么秘密。基于Transformer,还发展出了许多其他机器学习模型。其中之一是BERT,它主要由几个堆叠的Transformer编码器组成。除了用于一系列不同的问题(例如情感分析或问答)之外,BE

云原生Kubernetes:K8S集群list-watch机制与 pod调度约束

目录一、理论1.K8S的list-watch机制2.亲和性二、实验1.指定调度节点2.节点亲和性3.亲和性和反亲和三、问题1.新生成pod一直为pending2.如何一次性删除pod和deployment3.pod亲和性资源报错4.pod反亲和性资源报错四、总结一、理论1.K8S的list-watch机制(1)概念Ku

热文推荐