bigtables.py
author Radek Brich <radek.brich@devl.cz>
Wed, 20 Jul 2011 10:51:18 +0200
changeset 4 80634cb1c65b
parent 2 efee419b7a2d
child 5 57cf8fdff5ed
permissions -rwxr-xr-x
Merge.

#!/usr/bin/env python3.2

from pgtools import pgbrowser
from common import prettysize
from toolbase import ToolBase


class BigTablesTool(ToolBase):
    def __init__(self):
        ToolBase.__init__(self, name='bigtables', desc='List largest tables.')
        self.init()

    def main(self):
        browser = pgbrowser.PgBrowser(self.pgm.get_conn('target'))

        tables = browser.list_tables()
        for table in sorted(tables, reverse=True, key=lambda x: x['size'])[:20]:
            print(prettysize.prettysize_short(table['size']).rjust(8), table['name'], sep='  ')


tool = BigTablesTool()
tool.main()