module Elefant::Postgres::SizeQueries

Public Instance Methods

size() click to toggle source
# File lib/elefant/postgres/size_queries.rb, line 19
def size
  exec %Q{
    SELECT
      '#{@connection.db_name}' AS db_name,
      count(oid) AS num_rels,
      pg_size_pretty(pg_database_size('#{@connection.db_name}')) AS dbsize
    FROM
      pg_class
  }
end
top_sizes(limit = 20) click to toggle source
# File lib/elefant/postgres/size_queries.rb, line 5
def top_sizes(limit = 20)
  exec %Q{
    SELECT
      relname AS name,
      relkind AS kind,
      pg_size_pretty(pg_relation_size(pg_class.oid)) AS size
    FROM
      pg_class
    ORDER BY
      pg_relation_size(pg_class.oid) DESC
    LIMIT #{limit}
  }
end