postgresql - JSONB GIN索引上的Postgres CLUSTER?
问题描述
我正在尝试使用带有一个 JSONB 列的 Postgres 与更传统的关系模型(每个字段为一列)进行评估。我最近发现,对关系模型中的索引(在本例中为一列上的索引)进行聚类有助于读取性能,这是可以理解的。
据我了解,运行 CLUSTER ON 实际上会根据指定的索引对表的物理存储方式进行重新排序。我希望知道的是,如果我运行 CLUSTER ON ,该表将如何重新排序?在我实际执行命令之前有什么方法可以知道,还是这更像是一个试一试的场景?
如果有帮助,我们将使用 jsonb_path_ops 运算符。
谢谢!
解决方案
我怀疑您可以在 GIN 索引上进行聚类,因为索引中没有自然排序。对索引的顺序进行集群物理重新排序,而 gin 索引本身并没有排序。
因此,如果这有效,我会感到非常惊讶。我认为您需要一个 btree 索引。
现在,我认为您可以对 jsonb 的属性和集群进行功能索引。
推荐阅读
- ubuntu - json.cpp:474:23:致命错误:curl/curl.h:没有这样的文件或目录
- magento2 - 如何在自定义模块模板 phtml 文件中调用静态块?
- facebook - 提要更新未触发 Facebook 网络挂钩
- android - 在固定宽度 LinearLayout 中对齐子项
- javascript - 在javascript es5中计算数组的特定位置
- php - 在根节点内插入一组新节点
- ios - iOS MapKit 获取地点信息和评论
- typescript - 在 typescript 中声明类成员时使用 '=' 和 ':' 的区别
- reactjs - 我如何在反应中改变我的状态
- asp.net-mvc - 禁用 Azure AppFabric 缓存 Asp.Net MVC