【问题标题】:Best practise with elasticsearch idelasticsearch id 的最佳实践
【发布时间】:2014-09-02 16:43:41
【问题描述】:

使用 elasticsearch,您可以定义自己的 id 或让 elasticsearch 应用它自己的。

存储 ID 的最佳做法是什么?

我的应用程序将拥有用户,每个用户都可以拥有一个项目,基本上,将其视为一个博客。

以下是否可以接受

id = user23_post1

或者你会使用内部的方式来管理id并创建你自己的id

item_id = user23_post1

来自关系数据库背景,我有我的增量 id 帽子,这不是接近 solr 或 elascticsearch 时的思考方式。所以我正在研究其他人已经做过的事情,并可能从他们的错误中吸取教训。

谢谢

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    我假设您使用 Elasticsearch 作为数据存储,而是作为搜索引擎。

    这意味着,ElasticSearch 不拥有任何数据,它类似于具有非常快速查找的缓存层!

    在这种情况下,我不希望 Elasticsearch 保存任何 ID,至少不会是暴露在外面的东西。将 id 与数据存储区同步将有助于进行原子更新和增量更新。

    不过,elasticsearch 也可以用作 NOSQL 数据存储,在这种情况下,我会在 Elasticsearch 中生成 ID。

    【讨论】:

    • 尽管我有用户的 postgres 数据库,但他们的内容要存储在 ElasticSearch 中。
    • 被索引。它需要是可搜索的。
    • 好的,这就是我的意思,使用 Elasticsearch 作为搜索引擎。我建议对数据进行非规范化,并使用与我相同的数据,以便有一定程度的数据完整性。请注意,由于不是 rdbms 系统,elasticsearch 无法提供类似特性的独特约束
    猜你喜欢
    • 2019-10-22
    • 1970-01-01
    • 2020-01-15
    • 2017-11-16
    • 2017-07-12
    • 1970-01-01
    • 2011-03-07
    • 1970-01-01
    • 2019-03-25
    相关资源
    最近更新 更多