【问题标题】:ElasticSearch Indexing - Selecting java objects for indexing?ElasticSearch Indexing - 选择 java 对象进行索引?
【发布时间】:2016-02-09 08:44:49
【问题描述】:

谁能告诉我,在什么基础上我们应该在 elasticsearch 中选择哪个 java 实体对象应该是“INDEX”类型,哪个对象应该是“TYPE”类型??

让我们有对象 1、2、3

对象 1 具有对象 2 的列表。对象 3 是另一个单独的对象。

在这种情况下,哪个应该是“INDEX”,哪个应该是“TYPE”

【问题讨论】:

    标签: elasticsearch spring-data spring-data-elasticsearch


    【解决方案1】:

    这实际上取决于您。您可以为所有域创建单独的索引,也可以使用您的应用程序名称或其他名称创建index。然后您可以在其中定义类型,其中将包含您的应用程序的域。

    根据您的情况,您可以将 Object1 和 Object3 定义为类型。 由于 Object2 包含在 Object1 中,因此您必须将其定义为 object 字段或 nested 类型内的字段 Object1 。

    所以你的架构会是这样的

    Name Of Index : indexName

    indexName 类型:object1 和 object3

    object1 的 nested 或 object 字段类型为 object2。

    步骤将是..

    • PUT /indexName
    • PUT indexName/object1/_mapping { "properties": { "object2": { "type": "nested" //this can be "object" as well } } }
    • PUT indexName/object3/_mapping { "properties": { ... } }

    希望对你有帮助

    【讨论】:

    猜你喜欢
    • 2023-01-19
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 2018-08-01
    • 2023-03-06
    • 1970-01-01
    相关资源
    最近更新 更多