【问题标题】:Is there any tool out there for generating elasticsearch mapping是否有任何工具可用于生成弹性搜索映射
【发布时间】:2020-04-22 17:55:19
【问题描述】:

我所做的主要是手工组装映射。自己选择正确的类型。 是否有任何工具可以促进这一点?

例如,它将读取一个类(c#、java..etc)并相应地选择最接近的 ES 类型。

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    我从未见过这样的工具,但我知道 ElasticSearch 有一个基于 HTTP 的 REST API。

    因此,您可以使用 JSON 正文创建一个简单的 HTTP 查询,该查询将使用 your 字段描述 your 对象:字段名称 + 类型(字符串、数字、布尔值) - 漂亮很像您在问题中描述的 Java/C# 类。

    然后您可以要求 ES 将数据存储在不存在的索引中(以 ES 术语“索引”您的文档)。它将索引文档,但它也会创建一个索引,对于您的问题,最重要的是,它将“动态地”为您创建一个映射,以便稍后您将能够查询映射结构(再次通过 REST)。

    Here 是 ES 文档中有关动态创建映射的相关章节的链接

    还有Here可以找到查询映射结构的API

    【讨论】:

      【解决方案2】:

      归根结底,您仍然希望保留对映射生成方式的一些控制权。我建议:

      1. 同步一些不带映射的示例文档
      2. 调查自动生成的映射并
      3. 删除索引并使用 dynamic_templates 在新文档进入时伪自动生成/更新映射。

      这个GUI 也可以提供帮助。

      【讨论】:

        【解决方案3】:

        目前,没有这样的工具可用于为弹性生成映射。 这是一种类似的事情,就像我们必须在 MySQL 中设计一个数据库一样。 但是如果我们想要这样的东西,那么我们使用不需要预定义模式的 Mongo DB。

        但 Elastic 具有非常动态的特性,让我们可以随意使用它。 Elasticsearch 最重要的功能之一是它试图让您摆脱困境,让您尽快开始探索数据,就像可以动态操作的 mongo 模式一样。

        要索引文档,您无需先定义映射或架构,然后定义字段及其数据类型 。 您只需为文档编制索引,就会自动创建索引、类型和字段。

        有关更多详细信息,您可以查看以下文档:

        Elastic Dynamic Mapping

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-04-03
          • 2019-07-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多