【问题标题】:Elastic search get document by type and index vs only index弹性搜索按类型和索引获取文档与仅索引
【发布时间】:2023-03-05 12:13:01
【问题描述】:

http://localhost:9200/corp/_doc/1/?pretty

有效

http://localhost:9200/corp/employee/_doc/1/?pretty

它不起作用。

当我将_doc 替换为_search 时,这两种情况都有效。我确实理解搜索和通过 id 获取文档之间的区别。

我怀疑什么时候应该同时指定类型和索引。在我的第一种情况下,我们不需要类型,因为同一索引中的另一种类型可以具有相同的 id。

我对 ELK 完全陌生,并通过权威指南进行探索。请指教。

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    索引类型(在您的情况下为employee)为deprecated。现在习惯上每个索引都有一种类型 (_doc)。

    • GET corp/_doc/1 将为您提供 id#1 的公司文档。
    • GET corp/_doc/_searchGET corp/_search 弃用
    • GET /corp/employee/_doc/1 无效,因为 employee_doc 都是类型。在旧 ES 版本中使用 /corp/employee/1 或在新版本中使用 /corp/_doc/1

    【讨论】:

    • 你是说每个索引只能有一种类型?
    • 没错。索引名称应该明确类型。
    • 脱离这个上下文。所以 index 只是一个命名空间。如果是这样,我们可以拥有索引/类型之一。不是吗?有什么特别的用例吗? this 中的最高投票答案是否不再完全正确?
    猜你喜欢
    • 2015-12-18
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-12
    • 2015-09-05
    相关资源
    最近更新 更多