热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Elasticsearch中的映射和模板之间有什么区别?

如何解决《Elasticsearch中的映射和模板之间有什么区别?》经验,为你挑选了1个好方法。

ES中有两个概念映射和模板。我阅读了有关这两个概念的官方解释。我对此仍然感到困惑。

    在模板中,我们可以定义映射。在这种情况下,为什么我们需要映射?

    如果我想更新映射,是否可以在模板中对其进行修改?

Ryan Widmaie.. 6

Templatesmappings是两个不同的东西。更让人困惑的是,短语模板在两个不同但相关的功能中使用。

制图

索引的映射是所有数据存储到该索引的架构定义。认为它真正存在。

索引模板

Index Templates用于简化mappings新索引的定义。如果要定义许多共享某些常用映射或设置的索引,则可以Index Template使用这些共享设置定义一个,并使其自动为您应用。在您的模板中,您告诉ElasticSearch它可以将那些模板应用于哪些索引。

索引模板参考

映射中的dynamic_templates

为了完整起见,ElasticSearch中还有另一个模板显示位置。在声明新索引的映射时,您还可以定义一个dynamic_templates部分。这使您可以让ElasticSearch根据新的字段类型或名称定义字段映射。例如,您可以创建一个条目,说明名称以“ _date”结尾的任何字段都应被视为日期字段。这些使您可以按照约定定义字段,而无需为每个字段显式指定其字段映射。

动态模板参考

值得一提的是,对于Index Templates和本dynamic_templates节,仅在首次创建索引/字段时才应用值。在mapping定义中,如果您明确指定与模板不同的内容,它将使用您的值。

因此,回到您的问题:

    在模板中,我们可以定义映射。在这种情况下,为什么我们需要映射?

Index Templates在创建映射到多个索引时非常有用。如果您不创建多个相同的索引,则可能只是手动定义映射。

dynamic_templates索引中的in对于通过命名约定定义字段类型很有用。对此所做的任何更改只会影响添加到索引的新字段。

    如果我想更新映射,是否可以在模板中对其进行修改?

不会,一旦创建索引,对的更新Index Templates将不会影响该索引。它们仅适用于新索引。另外,更新为dynamic_templates只会影响索引中的新字段。



1> Ryan Widmaie..:

Templatesmappings是两个不同的东西。更让人困惑的是,短语模板在两个不同但相关的功能中使用。

制图

索引的映射是所有数据存储到该索引的架构定义。认为它真正存在。

索引模板

Index Templates用于简化mappings新索引的定义。如果要定义许多共享某些常用映射或设置的索引,则可以Index Template使用这些共享设置定义一个,并使其自动为您应用。在您的模板中,您告诉ElasticSearch它可以将那些模板应用于哪些索引。

索引模板参考

映射中的dynamic_templates

为了完整起见,ElasticSearch中还有另一个模板显示位置。在声明新索引的映射时,您还可以定义一个dynamic_templates部分。这使您可以让ElasticSearch根据新的字段类型或名称定义字段映射。例如,您可以创建一个条目,说明名称以“ _date”结尾的任何字段都应被视为日期字段。这些使您可以按照约定定义字段,而无需为每个字段显式指定其字段映射。

动态模板参考

值得一提的是,对于Index Templates和本dynamic_templates节,仅在首次创建索引/字段时才应用值。在mapping定义中,如果您明确指定与模板不同的内容,它将使用您的值。

因此,回到您的问题:

    在模板中,我们可以定义映射。在这种情况下,为什么我们需要映射?

Index Templates在创建映射到多个索引时非常有用。如果您不创建多个相同的索引,则可能只是手动定义映射。

dynamic_templates索引中的in对于通过命名约定定义字段类型很有用。对此所做的任何更改只会影响添加到索引的新字段。

    如果我想更新映射,是否可以在模板中对其进行修改?

不会,一旦创建索引,对的更新Index Templates将不会影响该索引。它们仅适用于新索引。另外,更新为dynamic_templates只会影响索引中的新字段。


推荐阅读
author-avatar
mobiledu2502862707
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有