【问题标题】:Can RethinkDB efficiently handle lots of sparseness?RethinkDB 能否有效处理大量稀疏性?
【发布时间】:2015-12-21 12:17:40
【问题描述】:

用例:作为数据基础设施的一部分,我正在考虑在同一个 RethinkDB 表中存储许多 * 各种 schema.org 类型的实体。

鉴于 schema.org 固有的类型层次结构,一些属性由所有类型共享,一些属性仅适用于一种类型,以及介于两者之间的所有类型。

例如:Person,Organization,LocalBusiness,共享属性如namedescriptionpostalAddress等,而有些是仅供Person使用的,如firstName

将此映射到 RethinkDB 表将导致许多实体的许多属性(Rethink-speak 中的字段)为空。作为一种猜测,我会说一个字段平均大约 90% 的时间是空的。大约有 150 个字段存在。

RethinkDB 能否有效处理如此稀疏的布局?这是我意识到的一个广泛的问题,但我正在寻找以下细节:

  • 如果我要在这些字段中的一些(不是全部)上建立索引,空值会占用这些索引中的空间吗?
  • 如果这些字段都被允许为多值,性能损失(cpu 和 mem)会是多少?即:数组?

*) 一两百万开始

【问题讨论】:

    标签: schema rethinkdb


    【解决方案1】:

    RethinkDB 可以很好地处理稀疏数据。索引目前始终是稀疏索引,因此您的索引不会被没有索引字段的文档弄乱。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-02
      • 2013-06-09
      • 2013-03-02
      • 2019-05-29
      相关资源
      最近更新 更多