Module: Elefant::Postgres::SizeQueries

Included in:
Stats
Defined in:
lib/elefant/postgres/size_queries.rb

Instance Method Summary collapse

Instance Method Details

#sizeObject



19
20
21
22
23
24
25
26
27
28
# 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) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
# 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