【问题标题】:Can I create an index on maps in Scylla DB?我可以在 Scylla DB 中的地图上创建索引吗?
【发布时间】:2021-10-10 13:18:09
【问题描述】:

Scylla DB https://docs.scylladb.com/getting-started/types/#maps 中有原生地图类型@ 是否可以在其上创建索引?所以它有点像 PostgreSQL 中的 GIN。

【问题讨论】:

    标签: json indexing scylla


    【解决方案1】:

    由于maps 是一种集合,我认为这个 GH 问题几乎总结了它以及支持(或不支持)的内容。 https://github.com/scylladb/scylla/issues/3654#issuecomment-479639450

    GH问题中提到的Validations req:

    • 不允许对非冻结集合使用 FULL 索引
    • 禁止对冻结集合使用非 FULL 索引
    • 不允许在同一个集合上重复创建 FULL 索引
    • 不允许在 WHERE 子句中引用冻结映射条目(只允许完整的映射值)

    我们有什么:

    当前完全不支持非冻结集合并带有适当的错误消息,也不允许冻结集合的非完整索引,默认情况下也禁止任何索引重复创建。 另外,我认为应该允许在 WHERE 子句中引用冻结映射条目,至少在过滤时是这样。

    如果您发现任何不同的行为,请告知我们并提交 GH 问题。

    【讨论】:

    • 谢谢TomerSan!我无法找到解释 FULL 和非 FULL 索引之间区别的文档,但可以从名称中推断出 FULL 索引正是我正在寻找的,而且我的集合是非冻结的。考虑到此类集合的 FULL 索引是不允许的,并且它们不能在 WHERE 子句中被引用,它在我的情况下不起作用。实际上,如果有些人需要将类似 JSON 的文档与列数据一起存储在数据库中,那么 Scylla 似乎不是最佳选择
    猜你喜欢
    • 1970-01-01
    • 2015-04-04
    • 2018-09-13
    • 2019-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    相关资源
    最近更新 更多