Skip to content

Latest commit

 

History

History
181 lines (143 loc) · 15 KB

README.german.md

File metadata and controls

181 lines (143 loc) · 15 KB

Database Lab Engine (DLE)

⚡ Blitzschnelles Klonen von PostgreSQL-Datenbanken 🐘
Thin Clons von PostgreSQL zum Erstellen leistungsstarker Entwicklungs-, Test-, QA- und Staging-Umgebungen.
Verfügbar für jedes PostgreSQL, einschließlich AWS RDS, GCP CloudSQL, Heroku, Digital Ocean und selbstverwalteter Instanzen.

Neueste Erscheinung

CI pipeline status Go report DepShield Badge

Contributor Covenant Community Slack Twitter Follow

Warum DLE?

  • Sie können Entwicklungs-/QA-/Staging-Umgebungen basierend auf produktionsähnlichen Datenbanken in voller Größe erstellen.
  • Sie können temporäre Datenbankklone in voller Größe für die Analyse und Optimierung von SQL-Abfragen bereitstellen (siehe auch: SQL-Optimierungs-Chatbot Joe).
  • Sie können Datenbankänderungen in CI/CD-Pipelines automatisch testen, um Störungen in der Produktion zu vermeiden.

Zum Beispiel dauert das Klonen einer PostgreSQL-Datenbank mit 1 TiB ca. 10 Sekunden. Dutzende von unabhängigen Klonen laufen auf einem einzigen Computer und unterstützen viele Entwicklungs- und Testaktivitäten, ohne die Kosten für Hardware zu erhöhen.

Probieren Sie es gleich selbst aus:

  • Geben Sie die Database Lab Platform ein, schließen Sie sich der "Demo"-Organisation an und testen Sie das Klonen von ~1 TiB-Demodatenbank, oder
  • Probieren Sie ein anderes Demo-Setup, DLE CE: https://nik-tf-test.aws.postgres.ai:446/instance, verwenden Sie das Token „demo“, um es einzugeben (dieses Setup hat selbstsignierte Zertifikate, ignorieren Sie also die Beschwerden des Browsers).

Wie es funktioniert

Thin Cloning ist schnell, weil es Copy-on-Write (CoW) verwendet. DLE unterstützt zwei Technologien, um CoW und Thin Cloning zu ermöglichen: ZFS (Standard) und LVM.

Mit ZFS erstellt Database Lab Engine regelmäßig einen neuen Snapshot des Datenverzeichnisses und macht eine Reihe von Snapshots, wobei alte und nicht verwendete Snapshots gelöscht werden. Beim Anfordern eines neuen Klons können die Benutzer auswählen, welchen Snapshot zu verwenden.

Weiterlesen:

Wo soll man anfangen

Fallstudien

Merkmale

  • Blitzschnelles Klonen von Postgres-Datenbanken. Es wird ein paar Sekunden gebraucht, um einen neuen Klon zu erstellen, der bereit ist, Verbindungen und Abfragen zu akzeptieren, unabhängig von der Datenbankgröße.
  • Die theoretische maximale Anzahl von Snapshots und Klonen beträgt 264 (ZFS, Standard).
  • Theoretische maximale Größe des PostgreSQL-Datenverzeichnisses: 256 Billiarden Zebibyte oder 2128 Byte (ZFS, Standard).
  • Unterstützte Hauptversionen von PostgreSQL: 9.6–17.
  • Zwei Technologien werden unterstützt, um Thin Cloning zu ermöglichen (CoW): [ZFS](https://en.wikipedia.org/wiki/ ZFS) und LVM.
  • Alle Komponenten sind in Docker-Containern verpackt.
  • UI macht die manuelle Arbeit bequemer.
  • API und CLI zur Automatisierung der Arbeit mit DLE-Snapshots und Clones.
  • Standardmäßig enthalten PostgreSQL-Container viele beliebte Erweiterungen (docs).
  • PostgreSQL-Container können angepasst werden (docs).
  • Die Quelldatenbank kann sich überall befinden (selbstverwaltetes Postgres, AWS RDS, GCP CloudSQL, Azure, Timescale Cloud usw.) und erfordert KEINE Anpassungen. Es gibt KEINE Anforderungen, ZFS oder Docker in den Quelldatenbanken (Produktionsdatenbanken) zu installieren.
  • Die anfängliche Datenbereitstellung kann entweder auf physischer (pg_basebackup, Sicherungs-/Archivierungstools wie WAL-G oder pgBackRest) oder auf logischer Ebene (Dump/Wiederherstellung direkt von der Quelle oder von Dateien, die in AWS S3 gespeichert sind) erfolgen.
  • Für den logischen Modus wird der partielle Datenabruf unterstützt (bestimmte Datenbanken, bestimmte Tabellen).
  • Für den physischen Modus wird ein kontinuierlich aktualisierter Status ("Sync-Container") unterstützt, was DLE zu einer spezialisierten Version von Standby-Postgres macht. – Für den logischen Modus wird die regelmäßige vollständige Aktualisierung von DLE unterstützt, automatisiert und gesteuert. Es ist möglich, mehrere Datenträger mit unterschiedlichen Versionen der Datenbank zu verwenden, sodass eine vollständige Aktualisierung keine Ausfallzeit erfordert.
  • Fast Point-in-Time-Recovery (PITR) zu den Punkten, die in DLE-Snapshots verfügbar sind.
  • Nicht verwendete Klone werden automatisch gelöscht.
  • Das Flag "Löschschutz" kann verwendet werden, um das automatische oder manuelle Löschen von Klonen zu blockieren. – Snapshot-Aufbewahrungsrichtlinien werden in der DLE-Konfiguration unterstützt.
  • Dauerhafte Klone: ​​Klone überleben DLE-Neustarts (einschließlich vollständiger VM-Neustarts).
  • Mit dem Befehl „reset“ kann auf eine andere Version der Daten umgeschaltet werden.
  • Die Komponente DB Migration Checker sammelt verschiedene Artefakte, die für DB-Tests in CI nützlich sind (docs).
  • SSH-Portweiterleitung für API- und Postgres-Verbindungen.
  • Docker-Container-Konfigurationsparameter können in der DLE-Konfiguration angegeben werden.
  • Ressourcennutzungskontingente für Klone: ​​CPU, RAM (Containerkontingente, unterstützt von Docker)
  • Postgres-Konfigurationsparameter können in der DLE-Konfiguration angegeben werden (getrennt für Klone, den „Sync“-Container und den „Promote“-Container).
  • Überwachung: auth-freier /healthz API-Endpunkt, erweitertes /status (erfordert auth), Netdata module.

Beitrag leisten

Geben Sie dem Projekt einen Stern

Der einfachste Weg, einen Beitrag zu leisten, besteht darin, dem Projekt einen GitHub/GitLab-Stern zu geben:

Stern hinzufügen

Weitersagen

Posten Sie einen Tweet mit der Erwähnung von @Database_Lab oder teilen Sie den Link zu diesem Repo in Ihrem bevorzugten sozialen Netzwerk.

Wenn Sie DLE aktiv nutzen, erzählen Sie anderen von Ihren Erfahrungen. Sie können das unten referenzierte und im Ordner „./assets“ gespeicherte Logo verwenden. Sie können sie gerne in Ihre Dokumente, Präsentationen, Anwendungen und Website-Schnittstellen einfügen, um zu zeigen, dass Sie DLE verwenden.

HTML-Snippet für hellere Hintergründe:

<a href="http://databaselab.io">
  <img width="400" src="https://postgres.ai/assets/powered-by-dle-for-light-background.svg" />
</a>

Für dunklere Hintergründe:

<a href="http://databaselab.io">
  <img width="400" src="https://postgres.ai/assets/powered-by-dle-for-dark-background.svg" />
</a>

Schlagen Sie eine Idee vor oder melden Sie einen Fehler

Weitere Informationen finden Sie in unserem Contributing Guide.

Beteiligen Sie sich an der Entwicklung

Weitere Informationen finden Sie in unserem Contributing Guide.

Übersetze die README

Database Lab Engine für Ingenieure auf der ganzen Welt zugänglicher zu machen, ist eine große Hilfe für das Projekt. Einzelheiten finden Sie im Übersetzungsabschnitt des Contributing Guide.

Referenzhandbücher

Anleitungen

Weitere Informationen finden Sie im Abschnitt „Anleitungen“ der Dokumentation.

Sonstig

Lizenz

Der DLE-Quellcode ist unter der vom OSI genehmigten Open-Source-Lizenz Apache 2.0 lizenziert.

Wenden Sie sich an das Postgres.ai-Team, wenn Sie eine Test- oder kommerzielle Lizenz wünschen, die die GPL-Klauseln nicht enthält: Kontaktseite.

Gemeinschaftliche Unterstützung

Contributor Covenant