首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Elastic Search中重新编制索引时,无法使用包含破折号的新名称重命名字段

在Elasticsearch中重新编制索引时,无法使用包含破折号的新名称重命名字段。这是因为Elasticsearch中字段名称不能包含破折号(-),只能包含字母、数字和下划线(_)。

Elasticsearch是一个开源的分布式搜索和分析引擎,它基于Lucene库构建而成。它提供了一个分布式的、多租户的全文搜索引擎,可以快速地存储、搜索和分析大量的数据。

在Elasticsearch中,索引是用于组织和存储文档的逻辑容器。每个索引都包含一个或多个类型,而类型则包含多个文档。文档是Elasticsearch中的基本数据单元,可以是任意结构的JSON对象。

当需要重新编制索引时,可以使用Elasticsearch提供的Reindex API来实现。Reindex API允许将一个或多个索引中的文档重新索引到一个新的索引中。在重新索引的过程中,可以对字段进行重命名、转换数据类型等操作。

然而,由于Elasticsearch中字段名称不能包含破折号,因此无法直接使用包含破折号的新名称重命名字段。如果需要重命名字段,可以考虑以下两种解决方案:

  1. 使用下划线代替破折号:可以将破折号替换为下划线,然后使用Reindex API进行重命名操作。例如,将字段名从"old-field"重命名为"new_field"。
  2. 创建一个新的字段:如果无法使用下划线代替破折号,可以创建一个新的字段,并将原始字段的值复制到新字段中。然后使用Reindex API将新字段索引到新的索引中。例如,创建一个名为"new_field"的新字段,并将"old-field"字段的值复制到"new_field"字段中。

需要注意的是,在重新编制索引时,还可以对字段进行其他操作,如转换数据类型、修改字段映射等。此外,Elasticsearch还提供了丰富的查询和聚合功能,可以帮助用户快速检索和分析数据。

作为腾讯云的用户,您可以使用腾讯云的Elasticsearch服务来搭建和管理Elasticsearch集群。腾讯云Elasticsearch提供了高可用、高性能的Elasticsearch集群,支持自动扩缩容、数据备份与恢复、安全认证等功能。您可以通过腾讯云控制台或API来创建、配置和管理Elasticsearch集群。

更多关于腾讯云Elasticsearch的信息,请参考腾讯云官方文档:

请注意,以上答案仅供参考,具体操作和配置可能因实际情况而异。建议在实际使用中参考官方文档或咨询腾讯云的技术支持。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Elasticsearch文档和映射

生成JSONElasticsearch编制索引。 Elasticsearch文档位于分片一部分,该分片也是Lucene索引。随着附加文件发布,细分市场也增长。...最初删除文档,实际上不会立即从Elasticsearch删除它。相反,它被标记为已删除,使用无法访问,但仍在该段。...当映射值同一索引具有不同类型,会发生映射冲突。这是怎么发生?...那么,如果您需要将先前定义为整数字段更新为字符串,会发生什么?你猜对了:映射冲突。 那么如何解决这些映射冲突呢?重新编制。在后一种情况下,您应该在需要更新现有字段定义重新索引数据。为什么?...请注意,要重新索引,您需要使用新名称创建新索引 - 您无法将文档重新索引到与原始名称相同索引

1.7K10

ChatGPT 和 Elasticsearch结合:私域数据上使用ChatGPT

,这些文档现已在 Elasticsearch 编制索引。...Elasticsearch 索引和网络爬虫接下来我们将创建一个新 Elasticsearch 索引来存储我们 Elastic 文档,将网络爬虫配置为自动抓取这些文档并为其编制索引,并使用摄取管道为文档... Kibana ,导航到Enterprise Search -> Overview。单击创建 Elasticsearch 索引。...配置网络爬虫以爬取 Elastic官方文档:再次单击导航菜单,然后单击 Enterprise Search -> Overview。在内容下,单击索引。单击 search-elastic-docs。...比方说,请它告诉您如何造船(Elastic 官方文档不包含此内容):图片当 ChatGPT 无法我们提供文档中找到问题答案,它会退回到我们提示指令,简单地告诉用户它无法回答问题。

6.1K164
  • 初识 Elasticsearch7.x(一)

    文档 Elasticsearch 中有一些重要属性: 它是独立。文档包含字段(名称)及其值。 它可以是分层。可以将其视为文档文档。字段值可以很简单,就像位置字段值可以是字符串一样。...它还可以包含其他字段和值。例如,位置字段可能包含城市和街道地址。 结构灵活。你文档不依赖于预定义架构。例如,并非所有事件都需要描述值,因此可以完全省略该字段。...这其中原因是:相同 index 不同映射 type 具有相同名称字段是相同; Elasticsearch 索引,不同映射 type 具有相同名称字段 Lucene 中被同一个字段支持...Primary shard: 每个文档都存储一个Primary shard。 索引文档,它首先在 Primary shard上编制索引,然后在此分片所有副本上(replica)编制索引。...索引可以包含一个或多个主分片。 此数字确定索引相对于索引数据大小可伸缩性。 创建索引后,无法更改索引主分片数。 Replica shard: 每个主分片可以具有零个或多个副本。

    49450

    MySQL见闻录 -- 入门之旅(二)

    你可以为单个数据列编制索引,也可以为多个数据列构造复合索引索引可以只包含独-无二值,也可以包含重复值。 你可以为同一个数据表创建多个索引并分别利用它们来优化基于不同数据列查询。...因为CHANGE子句能够(而MODIFY子句不能)做到事情是改变其数据类型同时重新命名一个数据列。...用RENAME子句给数据表起-个新名字: ALTER TABLE tbl name RENAME TO new_ tbl_ name; 另一个办法是使用RENAMB TABLE 语句来重新命名数据表。...比如说,你可以像下面这样交换两个数据表名字: RENAME TABLE t1 TO tmp, t2 TO t1, tmp TO t2; 如果在重新命名个数据表名字前面加上了数据库名前级,就可以把它从一个数据库移动到另一个数据库...如果重新命名某个MyISAM数据表是某个MERGE数据表成员,你必须重新定义那个MERGE数据表,让它使用那个MyISAM数据表新名字。

    58220

    Elasticsearch 内部数据结构深度解读

    默认情况下,Elasticsearch 对每个字段所有数据建立索引,并且每个索引字段都具有专用优化数据结构。 例如,文本字段存储倒排索引,数字字段和地理字段存储BKD树。...定义 Elasticsearch ,Doc Values 就是一种列式存储结构,默认情况下每个字段 Doc Values 都是激活(除了 text 类型),Doc Values 是索引创建...,当字段索引,Elasticsearch 为了能够快速检索,会把字段值加入倒排索引,同时它也会存储该字段 Doc Values。...2.3 Doc Values 特点 索引创建 序列化到磁盘 适合排序操作 将单个字段所有值一起存储单个数据列 默认情况下,除text之外所有字段类型均启用 Doc Values。..._source 字段本身未构建索引(因此不可搜索),但已存储该字段,以便在执行获取请求(如get或search可以将其返回。

    5.9K12

    Elasticsearch:REST API

    输入命令,我们需要特别的注意:千万不要添加除了换行以外空格,否则会导致错误。在上面我们使用 index 用来创建一个文档。...等我们运行完上面的指令后,我们可以 Kibana 查看到我们叫做 “bank_account” 索引。...Open/close Index Elasticsearch 支持索引在线/离线模式。 使用脱机模式群集上几乎没有任何开销地维护数据。 关闭索引后,将阻止读/写操作。...默认情况下,即使已明确命名冻结索引,也不会针对冻结索引执行搜索请求。 这是为了防止由于误将冻结索引作为目标而导致意外减速。...如果要包含冻结索引做搜索,必须使用查询参数 ignore_throttled = false 来执行搜索请求。

    1.3K00

    后端技术杂谈4:Elasticsearch与solr入门实践

    "} 上面代码,请求9200端口,Elastic 返回一个 JSON 对象,包含当前节点、集群、版本等信息。...,然后重新启动 Elastic。...接着,重新启动 Elastic,就会自动加载这个新安装插件。 然后,新建一个 Index,指定需要分词字段。这一步根据数据结构而异,下面的命令只针对本文。...分词插件一般都有自己默认词库和扩展词库,默认词库包含了绝大多数常用中文词语。如果默认词库无法满足你需求,比如某些专业领域词汇,可以扩展词库手动添加,这样分词插件就能识别新词语了。 ?...Elasticsearch使用Lucene作为内部引擎,但是使用它做全文搜索,只需要使用统一开发好API即可,而不需要了解其背后复杂Lucene运行原理。

    1.2K10

    全文搜索引擎Elasticsearch入门教程

    本文从零开始,讲解如何使用 Elastic 搭建自己全文搜索引擎。每一步都有详细说明,大家跟着做就能学会。 一、安装 Elastic 需要 Java 8 环境。..." } 上面代码,请求9200端口,Elastic 返回一个 JSON 对象,包含当前节点、集群、版本等信息。...2.2 Index Elastic索引所有字段,经过处理后写入一个反向索引(Inverted Index)。查找数据时候,直接查找该索引。...接着,重新启动 Elastic,就会自动加载这个新安装插件。 然后,新建一个 Index,指定需要分词字段。这一步根据数据结构而异,下面的命令只针对本文。...5.4 更新记录 更新记录就是使用 PUT 请求,重新发送一次数据。

    1.3K70

    Elasticsearch探索:Suggester API(一)

    ES 通过 Sugester API 实现 原理:将输入文档分解为 Token,然后索引字段里查找相似的 Term 并返回 根据不同使用场景,ES 设计了 4 种类别的 Suggesters...用户输入 “lucen” 是一个错误拼写会到 指定字段 “body” 上搜索,当无法搜索到结果(missing),返回建议词。...仅在搜索词项索引不存在才提供建议词,默认值 popular: Only suggest suggestions that occur in more docs than the original...下面的示例显示了具有两个generator词组 suggest 调用:第一个generator使用包含普通索引字段,第二个generator使用包含使用反向过滤器索引字段(token按相反顺序索引...,请为此字段指定一个特殊映射,为快速完成字段编制索引 1.body字段可以设置索引分词,这些会影响FST编码结果,也会影响查找匹配效果 2.设置查询分词需要在mapping添加才会生效 "type

    5.5K23

    Elastic进阶教程:构建一个基于NLP财经热点分析系统

    而对于数据统计分析,我们可以通过NER(命名实体识别)功能,提取出实体,对实体进行丰富和统计数据存储从天行数据采集来原始数据我们可以存储App search引擎。...本次演示,我们企业搜索创建引擎名为news, 对应索引为.ent-search-engine-documents-news(该索引为默认索引,需要勾选包括隐藏索引才能看到):图片我们可以直接在...Kibana上修改该索引配置,让其每次写入数据,都通过我们刚创建数据处理管理ml_ner提取数据命名实体:图片向引擎添加命名实体字段因为命名实体字段是通过ingest pipeline生成,...因此,App search上我们是看不到这些字段,需要在App search通过修改schema方式进行添加:图片上图中game、government、ner_address, organization...Graph功能,探索热点数据之间关系:图片总结在这个案例,我们只使用elastic search platform完成了整个财经热点分析系统建设。

    3.4K21

    Python中使用Elasticsearch

    我开始访问PythonElastic Search之前,我们来做一些基本东西。 正如我提到ES提供了一个REST API接口,我们将使用它来执行不同任务。...基本示例 你要做第一件事就是创建索引。一切都以索引形式存储。RDBMS概念索引相当于一个数据库,因此不要将它与你RDBMS中学习典型索引概念混淆。使用PostMan来运行REST API。...这里有很多要说事。首先,我们传递了一个包含整个文档结构映射配置变量。映射是模式这一术语Elastic版本。就像我们表格设置特定字段数据类型一样,我们在这里做类似的事情。...由于我们没有我们映射中设置ingredients,因此ES不允许我们存储包含ingredients字段文档。现在你知道事先分配映射优势了。你可以通过这样做避免破坏数据。...我们继续之前,让我们calories字段中发送一个字符串,看看它是如何发生。请记住,我们已将其设置为整数。 在编制索引出现以下错误: ? 所以现在你知道为文档分配一个映射好处了。

    1.4K50

    Python如何使用Elasticsearch?

    但是,由于眼见为实,可以浏览器访问URLhttp://localhost:9200或者通过cURL 查看类似于这样欢迎界面以便你知道确实成功安装了: 我开始访问PythonElastic...RDBMS概念索引相当于一个数据库,因此不要将它与你RDBMS中学习典型索引概念混淆。使用PostMan来运行REST API。...这里有很多要说事。首先,我们传递了一个包含整个文档结构映射配置变量。映射是模式这一术语Elastic版本。就像我们表格设置特定字段数据类型一样,我们在这里做类似的事情。...由于我们没有我们映射中设置ingredients,因此ES不允许我们存储包含ingredients字段文档。现在你知道事先分配映射优势了。你可以通过这样做避免破坏数据。...在编制索引出现以下错误: 所以现在你知道为文档分配一个映射好处了。如果你不这样做,它仍然会工作,因为Elasticsearch将在运行时分配它自己映射。

    8K30

    ELK运维文档

    分片中每个索引操作包含两部分:refresh和flush。 refresh 索引添加、更新和删除document后,并不能立即被search到。...data字段使用now,通常无法进行缓存。 force-merge只读索引。注意不能force-merge可写索引。...无法删除或迁移系统索引 像.geoip_databases这样系统索引主分片状态为unassigned无法通过 Delete /my-index,接口直接删除,可以通过停用然后启用相应功能方式来让系统重新分配索引...重命名已有的NodeSet ECK会创建一个新名NodeSet,并将数据从旧NodeSet转移过来,然后删除旧NodeSet。...Kibana 连接Elasticsearch 当kibana和Elasticsearch同一个ECK集群,ECK会将所需Secret从Elasticsearch所在命名空间拷贝到kibana所在命名空间

    78810

    Python中使用Elasticsearch

    我开始访问PythonElastic Search之前,我们来做一些基本东西。 正如我提到ES提供了一个REST API接口,我们将使用它来执行不同任务。...基本示例 你要做第一件事就是创建索引。一切都以索引形式存储。RDBMS概念索引相当于一个数据库,因此不要将它与你RDBMS中学习典型索引概念混淆。使用PostMan来运行REST API。...这里有很多要说事。首先,我们传递了一个包含整个文档结构映射配置变量。映射是模式这一术语Elastic版本。就像我们表格设置特定字段数据类型一样,我们在这里做类似的事情。...由于我们没有我们映射中设置ingredients,因此ES不允许我们存储包含ingredients字段文档。现在你知道事先分配映射优势了。你可以通过这样做避免破坏数据。...我们继续之前,让我们calories字段中发送一个字符串,看看它是如何发生。请记住,我们已将其设置为整数。 在编制索引出现以下错误: ? 所以现在你知道为文档分配一个映射好处了。

    2.1K00

    初识 Elasticsearch7.x(二)

    映射 Mapping 映射是定义一个文档和它所包含字段如何被存储和索引过程。 默认配置下,ES可以根据插入数据自动地创建mapping,也可以手动创建mapping。...mapping主要包含字段名、文档类型等 文档 Document 文档是索引存储一条条数据。一条文档是一个可被索引最小单元。 ES文档采用了轻量级JSON格式数据来表示。...这是因为一旦修改,那么之前建立索引就变成不能搜索了。一种办法是 reindex 从而重新建立我们索引。如果在之前 mapping 加入新字段,那么我们可以不用重新建立索引。...此查询使用存储 _id 字段文档id。...当你请求突出显示,响应包含每个搜索命中附加突出显示元素,其中包括突出显示字段和突出显示片段。

    2.8K20

    【Elasticsearch系列之五】通过snapshot迁移ES数据

    这意味着,当创建索引快照,Elasticsearch避免复制任何已存储存储库数据作为同一索引早期快照一部分。因此,可以 非常频繁地为集群创建快照。...5)升级之前备份数据,请记住,如果快照包含与升级版本不兼容版本创建索引,则可能导致升级后将无法还原快照。 6)兼容列表如下:1.x创建索引快照可以恢复到2.x。...反例:无法将在1.x创建索引快照还原到5.x或6.x,无法将在2.x创建索引快照还原到6.x或7.x,以及无法将在5.X创建索引快照还原到7.x。 7)要保证还原集群有足够存储容量。...创建快照可以指定索引,也可以指定快照包含内容,具体 api 接口参数可以查阅官方文档:https://www.elastic.co/guide/en/elasticsearch/reference...如果 snapshot_1 包括五个索引,这五个都会被恢复到我们集群里。 可以用附加选项用来重命名索引。这个选项允许您通过模式匹配索引名称,然后通过恢复进程提供一个新名称。

    7.3K52

    第17篇-使用Python初学者Elasticsearch教程

    多个实例和head plugin使用介绍 06.当Elasticsearch进行文档索引,它是怎样工作?...它不仅存储它们,而且索引每个文档内容以使其可搜索。Elasticsearch,您可以对文档进行索引,搜索,排序和过滤。 Elasticsearch使用JSON作为文档序列化格式。...现在让我们开始索引员工文档。 Elasticsearch存储数据行为称为索引编制。 Elasticsearch集群可以包含多个索引,而索引包含多个类型。...无需先执行任何管理任务,例如创建索引或指定每个字段包含数据类型。我们可以直接为文档建立索引。Elasticsearch附带所有内容默认值,因此使用默认值在后台处理了所有必要管理任务。...词组搜索 一个字段查找单个单词很好,但是有时候您想要匹配短语单词的确切顺序。

    1.9K00

    这份​Elasticsearch 工作笔记,值得收藏

    使用_search/template API查询返回结果总量不准 _search/template API处理逻辑,虽然rest_total_hits_as_int设置为了true, trackTotalHitsUpTo...search返回结果_shards.skipped表示了过滤掉了多少shard。...37 . fielddata是堆内存,docvalues是堆外内存;docvalues默认对所有not_analyzed字段开启(index生成),如果要对analyzed字段进行聚合,就要使用...字段唯一值非常多,对该字段进行terms聚合时需要构建Global Ordinals(内部实现),对旧索引只需构建一次也就是首次查询构建一次,后续查询就可以直接使用缓存Global Ordinals...当底层Segment发生变化时,Global Ordinals就失效了,再次查询就需要重新构建;默认构建时机是search查询6.x版本引入了eager_global_ordinals,把构建全局序数放在了

    1.7K61

    干货 | 携程酒店订单Elastic Search实战

    查询,会先查索引,如果索引已经包含所需要列,直接返回数据即可。如果需要额外数据,可以根据分片维度进行二次查询。因为已经能确定具体分片,所以查询也会高效。...每个索引可以被分成多个分片,每个分片可以有多个备份。 两者对比各有优劣。安装和配置方面,得益于产品较新,Elastic Search更轻量级以及易于安装使用。...扫描数据库无法扫描出删除记录,但是订单相关记录都需要保留,所以不存在删除数据场景。 提高Elastic Search吞吐量 ?...由于Elastic Search分布式分区原则默认是对文档id进行哈希和取模决定分片,所以如果把查询场景最高字段设为_routing值就能保证在对该字段查询,只要查一个分片即可返回结果。...灾备实现 Elastic Search本身是分布式创建索引,我们根据未来几年数据总量进行了分片,确保单片数据总量一个健康范围内。

    1.4K41

    Elasticsearch概念及Search和Analyzer简单使用

    JSON文档每个字段,都有自己倒排索引 # 可以指定对某些字段不做索引 # 优点: 节省存储空间 # 缺点: 字段无法被搜索 Analyzer分词 Analysis与Analyzer #...SearchAPI简介 # 分为两大类 # URL Search # URL中使用查询参数 # Request Body Search # 使用Elasticsearch提供,基于JSON格式更加完备...,通过主分片,可以将数据分布集群内所有节点之上 # 一个分片是一个运行Lucene实例 # 主分片数索引创建指定,后续不允许修改,除非Reindex 副本(Replica Shard) 用以解决数据高可用问题...分片设定 对于生产环境中分片设定,需要提前走好容量规划 分片数设置过小 # 导致后续无法增加节点实现水平扩展 # 单个分片数据量太大,导致数据重新分配耗时 分片数设置过大,7.0开始,默认主分片设置成...Mapping定义,用于定义包含文档字段名和字段类型 # Shard体现了物理空间概念: 索引数据分散Shard上 # 索引Mapping与Settings # Mapping

    1.2K30
    领券