Bart Jonk Asked: 2024-02-16 17:48:21 +0800 CST2024-02-16 17:48:21 +0800 CST 2024-02-16 17:48:21 +0800 CST 有没有办法检查使用 BRIN 索引的条件? 772 BRIN 索引在数据在物理存储中捆绑在一起的表上效果最好(或仅)。 除了测试或考虑创建数据的逻辑之外,有没有办法提前检查这一点? 就我而言,我怀疑我的表是根据客户端 ID 排序的,但我不确定这是否足够一致。 postgresql 1 个回答 Voted Best Answer Laurenz Albe 2024-02-16T18:15:31+08:002024-02-16T18:15:31+08:00 没有 100% 安全的方法来确定这一点,但您可以查看统计数据中的相关性: SELECT correlation FROM pg_stats WHERE tablename = 'sometab' AND attname = 'somecol'; 如果该值为 1 或 -1 或非常接近这些值,则 BRIN 索引可能有机会。但请记住,每个块范围的一个远异常值已经可以使索引变得无用。
没有 100% 安全的方法来确定这一点,但您可以查看统计数据中的相关性:
如果该值为 1 或 -1 或非常接近这些值,则 BRIN 索引可能有机会。但请记住,每个块范围的一个远异常值已经可以使索引变得无用。