Postgresql 是否有任何方法可以获得ActiveRecord/Rails/Postgres的查询进度(例如75%)?

Postgresql 是否有任何方法可以获得ActiveRecord/Rails/Postgres的查询进度(例如75%)?,postgresql,rails-activerecord,Postgresql,Rails Activerecord,是否有任何方法可以获得ActiveRecord/Rails/Postgres的查询进度估计值(例如75%)?或者,如果我要关闭ActiveRecord,有没有办法做到这一点?对于Postgres,没有直接的方法可以做到这一点 可以使用Hadoop集群中的配置单元查询来完成,特别是当存在大量映射器和还原器时,因为这是一个分区查询,当它的各个部分完成时,它可以对其进度有一些了解(尽管进度并不总是平稳的,因为并非所有数据都必须均匀分布) 在Postgres中,由于只有一个查询,所以(目前)没有分区来完

是否有任何方法可以获得ActiveRecord/Rails/Postgres的查询进度估计值(例如75%)?或者,如果我要关闭ActiveRecord,有没有办法做到这一点?

对于Postgres,没有直接的方法可以做到这一点

可以使用Hadoop集群中的配置单元查询来完成,特别是当存在大量映射器和还原器时,因为这是一个分区查询,当它的各个部分完成时,它可以对其进度有一些了解(尽管进度并不总是平稳的,因为并非所有数据都必须均匀分布)

在Postgres中,由于只有一个查询,所以(目前)没有分区来完成逐段查询和报告进度。如果你真的想知道,我所知道的大概进度的唯一方法是对运行你的查询的postgres进程进行扫描,看看它正在读取哪些文件。由于磁盘上的表的布局,这可以根据读取的内容提供某种进度感。然而,这是一个间接的关系,可以肯定,以完成百分比,一般不值得的麻烦,国际海事组织

一般来说,最好的办法是确保相关表中的统计信息是最新的,然后查看查询计划,并根据它推断出相对复杂度/潜在执行时间