How do I restore?

Hi users,

I am new here and to SQL. I currently downloaded a large dataset of over 137gb for research purposes. The manual mentions that it can only be restored using postgresSQL (see here https://files.usaspending.gov/database_download/usaspending-db-setup.pdf).

I have followed through to install postgressql but I am stuck on what to do next to restore the files as this is an entirely new thing and this data is required for a time bound reserach.

I will appreciate your help very much. I look forward to your help. Thank you in advance.

Hi KobeAA, welcome in this forum.
It’s a german speaking forum, so let’s switch to German.

Hast Du wie empfohlen die 10er Version von Postgres installiert?
Ich habe die Anleitung überflogen und hier wird empfohlen, mit root zu arbeiten. Das würde ich nach Möglichkeit vermeiden.
Ansonsten ist das Script dort aufgeführt. Welches konkrete Problem hast Du? Wo bist Du stecken geblieben?

Hallo Pogomis,
Vielen Dank für Ihre prompte Antwort. Ja, ich habe Postgres 6.1 installiert (das ist die neueste Version). Meine Herausforderung besteht darin, dass ich mit Postgressql völlig neu bin und daher keine Ahnung habe, wie ich wiederherstellen kann und welchen Teil der pgAdmin4-Schnittstelle ich überhaupt starten soll.

Entschuldigung, wenn mein Wissen als grundlegend erscheint.

Danke

Hast Du das von Dir verlinkte PDF gelesen?

The database archive can be restored to a PostgreSQL database using pg_restore which is
bundled with PostgreSQL. It has been tested with PostgreSQL 10.6

Du meinst sicher die 16.1?
Das ist 6 Versionen neuer als die in der Doku empfohlene Version.

Welches Betriebssystem verwendest Du?

Man würde wahrscheinlich lieber eine neuere(aktuelle) DB Version nehmen- entgegen der verlinkten Dokumentation -, andererseits kann das auch zu Problemen führen. Bei einer DB dieser Größe vertrödelt man dann vielleicht Zeit, die man nicht hat. Eine aktuelle Version hätte natürlich einige Vorteile bei Performance und Funktionalität. Ob das wirklich von 10 nach 15 oder 16 geht, dazu hab ich keine Erfahrungswerte. Im Prinzip kann ein älterer Dump aber auf einer neueren Major Version eingespielt werden.

Um den Restore Prozess mit Extensions möglichst schnell in den Griff zu kriegen (Benutzer, Owner, Rollen, Rechte, …) könnte man nur die Objekte anlegen, also auf den Datenimport selbst verzichten.

Restore Option:

–schema-only

Das dann weglassen, wenn es fehlerfrei läuft. (und die Gehversuche wieder gelöscht sind)

Um IO auf dem Server Storage Device zu entzerren, kann vielleicht das Backup von einer externen USB Platte oder übers Netz gezogen werden. Falls jenseits des DB Storage noch andere Medien zugreifbar sind, muss es natürlich keine externe Platte sein.

Wenn Du andere Restore Parameter verwendest, solltest Du darauf achten, die Dokumentation zur Version 10 (Deine installierte Postgres Version zu verwenden)

Die Postgres Dokumentation gibt es in allen Versionen bequem mit einem Klick zur Auswahl, hier ein Link auf die 10er:

Das gilt auch, für den späteren Betrieb/ Einsatz der DB und die in der Version verfügbaren Befehle (SQL, Tools, usw.).

Ich denke, pg_admin brauchst Du nicht. Zumindest steht davon nichts in der Doku und wenn wäre es dann analog zur alten 10er Version auch eine viel ältere Version.

In der Doku ist aufgeführt

Database Restore Script …

Was folgt, ist das Restore Script. Vermutlich ist es ebenfalls in dem Download enthalten oder liegt separat bereit. Wenn nicht, musst Du aus dem Abschnitt ein Skript erstellen (copy/paste in ausführbare Script Datei).

Kurzfassung:
Es beginnt mit geeignetem OS,
dann die richtige DB Version,
dann vielleicht mal testen, ob die DB nach der Installation betriebsbereit und nutzbar ist
dann Dump bereitstellen (idealerweise auf einem anderen Device, als die DB liegt
dann die Userfrage klären (root oder anderer)
dann Trockenübung machen (Import ohne Daten)

Hallo. Vielen Dank für Ihre ausführliche Antwort. Ich werde es pragmatisch auf Basis Ihrer Lösungsvorschläge angehen. Ich verwende es auf einem Mac OS. Ist das geeignet?
Wenn das der Fall ist, werde ich die gesamten 137 GB der heruntergeladenen Datei auf ein externes Laufwerk verschieben, da ich erfahren habe, dass für die Wiederherstellung mehr als 1,5 TB erforderlich sind.

Sobald ich das getan habe, werde ich Ihrem Verfahren folgen, um zu sehen, ob es funktioniert. Vielen Dank für Ihre Wegbeschreibung. Ich werde mich bei Ihnen melden, wenn ich Herausforderungen habe.

Viele Macs die ich kenne, haben nicht mal ein (1) TB storage. Ich selbst besitze keinen und habe damit wenig Erfahrung, dementsprechend sind meine Hinweise dazu zu bewerten.

  • die in der Doku genannten 1,5 TB sind vielleicht veraltet, der tatsächliche Platzbedarf noch größer
  • ein Mac ist wahrscheinlich besser geeignet als ein Windows System
  • unabhängig von der Plattform sollte klar sein, dass die Hardware eine gute Leistung haben sollte für das Vorhaben
  • als root User würde ich es auf einem Mac noch weniger machen
  • bei Mac sind die homebrew Installationen für PG 10 und 11 nicht mehr “online” (gesperrt/ abgekündigt)
  • wenn Du Dich mit Deinem Mac besser auskennst, als mit Postgres, kannst Du es versuchen

Dieses Thema wurde automatisch 60 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.