Was wir haben (Software):
- PostrgeSQL 9.3 mit Basiskonfiguration (keine Änderungen in
postgresql.conf
) - Windows 7 64 Bit
Hardware:
- Intel Core i7-3770 3,9 GHz
- 32 GB RAM
- WDC WD10EZRX-00L4HBAta-Laufwerk (1000 GB, SATA III)
Wir müssen also ungefähr in die DB laden. 100.000.000 Zeilen mit Bytea- Spalte und einfachere 500.000.000 Zeilen (ohne LOBs). Es gibt 2 varchar
Indizes für die 1. Tabelle (mit einer Länge von 13, 19) und 2 varchar
Indizes für die 2. Tabelle (18, 10 Längen). Es gibt auch Sequenzen für die ID-Generierung für jede Tabelle.
Inzwischen werden diese Vorgänge mit 8 Verbindungen parallel zu einer Stapelgröße von 50 JDBC ausgeführt. Das folgende Bild zeigt die Systemlast: postgresql
Prozesse werden nicht belastet . Nach 24 Stunden Laden haben wir nur 10.000.000 Zeilen geladen, was ein sehr langsames Ergebnis ist.
Wir bitten um Hilfe bei der Optimierung der PostrgreSQL
Konfiguration zu folgenden Zwecken:
1) Für das ultraschnelle Laden dieser Datenmenge handelt es sich um eine einmalige Operation, sodass es sich möglicherweise um eine temporäre Konfiguration handelt
2) für den Produktionsmodus zum Durchführen einer moderaten Anzahl von SELECTs in diese 2 Tabellen anhand ihrer Indizes ohne Verknüpfung und ohne Sortierung.
quelle