Datenbankübersicht rowcount pro Tabelle

Hallo zusammen,

ich beabsichtige eine Unify Datenbank nach PostgreSQL zu migrieren. Bei der bestehenden DB gibt es eine einfache Möglichkeit sich eine Übersicht über alle Tabellen (z.B. Anzahl der Datensätze) zu verschaffen.

Gibt es eine solche Möglichkeit auch unter PostgreSQL ? Ein Script mit vielen “select count(*) from tabelle” wäre zwar eine Möglichkeit, bei einer >20GB Datenbank aber sicherlich weder schnell noch elegant.

Ich habe bereits eifrig gesucht, aber nichts verwertbares gefunden.

bin gespannt …

Stefan

hi,

naja das was du willst macht ja der select count :wink: das ist ja DIE funktion dafür :wink:

wenn du einen index auf die db legst (was bei dieser datenmenge ja ein muss ist) sollte das auch recht zügig gehen…

cu tb.

naja das was du willst macht ja der select count > :wink: > das ist ja DIE funktion dafür > :wink:

wäre ja möglich das PostgreSQL solche Daten in irgendwelche Systemtabellen triggered …

wenn du einen index auf die db legst (was bei dieser datenmenge ja ein muss ist) sollte das auch recht zügig gehen…

das ist jetzt wahrscheinlich eine saublöde Frage, aber wie sieht der Index aus der ein

select count(*) from adresse;

beschleunigt ?

hi,

wüsste ich jetzt nichts das da schon was vorgehalten wird. las mich da aber gerne eines besseren belehren…


ähm da hab ich wieder mehr gedacht wie du wolltest :wink: der index bringt dir natürlich nur was wenn du das dann mit where weiterverarbeitest. sprich dein “counting” einschränkst :wink:

cu tb

ich will mir einfach nur einen Überlick über die Belegung der Tabellen in meinem Projekt verschaffen. Ich werde mir jetzt ein Tool schreiben das dies dynamisch für alle ca. 180 Tabellen erledigt und bin mal gespannt wie lange das dauert - ich schätze mal > 20 minuten.

Falls noch jemand eine Idee hat wie das eleganter und schneller zu lösen ist : ich würde mich freuen :smiley:

cu, stm

hm,

ne fällt mir jetzt nichts auf die schnelle ein. wie oft willst du das den laufen lassen? wenn das ne einmalige sachen zum kontrollieren nach der migration ist, dann sollten die 20 mins doch auch kein problem sein. selbst wenn es 30 oder 40 mins dauert…

geh in der zwischenzeit halt in die mittagspause :wink:

cu tb.

hallo nochmal,

habe gerade in meinem JavaPGMonitor eine kleine Klasse geschrieben um mir die RowCounts pro Tabelle anzuzeigen.

Das ganze dauert dann doch nur 41 sec bei insgesamt 24 Mio Datensätzen.

Ist dann wohl Essig mit der Mittagspause - wird wohl nur zu einem Snickers reichen :smiley:

cu, Stefan

Es geht noch wesentlich einfacher, postgres hat diese Informationen bereits.

select relname, reltuples
from pg_class where relname = ‘’;