Open-Source-Datenanonymisierung und synthetische Daten für Postgres und Mysql
(github.com/nucleuscloud)Hallo Hada-News-Community, wir freuen uns, Neosync vorstellen zu können!
Neosync ist eine Open-Source-Plattform, die Entwicklerinnen und Entwicklern dabei hilft, anonymisierte und synthetische Versionen von Produktionsdaten zu erstellen, um lokales Testen, Debugging und die Developer Experience zu verbessern — ohne Datenschutz- oder Sicherheitsrisiken.
Die meisten Entwickler und Teams haben Datenbank-Seed-Skripte, die einige Mock-Daten für lokale und Staging-Datenbanken erzeugen. Das Problem, von dem wir von Entwicklerinnen und Entwicklern gehört haben, ist: Lokal scheint eine Funktion gut zu funktionieren, aber in der Produktion treten Bugs und Edge Cases auf, weil die Seed-Daten die Produktionsdaten nicht repräsentieren. Ein zweites Problem war, dass es beim Debuggen von Fehlern in der Produktion keine gute Möglichkeit gibt, an produktionsnahe Daten zu kommen.
Produktionsdaten direkt zu verwenden, könnte diese Probleme lösen, aber die meisten Teams können das aus zwei Gründen nicht: 1. Datenschutz-/Sicherheitsprobleme und 2. Größenordnung.
Deshalb haben wir uns mit Neosync vorgenommen, genau diese beiden Probleme zu lösen.
Wir lösen Datenschutz- und Sicherheitsprobleme mit Anonymisierung und synthetischen Daten. Mit mehr als 40 vorgefertigten Transformern (oder selbst geschriebenem Code) können Sie PII oder sensible Daten anonymisieren, damit sie lokal sicher verwendet werden können. Alternativ können Sie statt der Anonymisierung synthetische Daten erzeugen, die von Grund auf wie Produktionsdaten aussehen und an das bestehende Schema der Datenbank angepasst sind.
Das zweite Problem ist die Größenordnung. Manche Produktionsdatenbanken sind zu groß, um lokal zu passen, oder enthalten mehr Daten als benötigt. Außerdem möchte man manchmal die Daten eines bestimmten Kunden debuggen und braucht eine Möglichkeit, nur diese Daten zu filtern. Das lösen wir mit Subsetting. Sie übergeben eine SQL-Abfrage zum Filtern von Tabellen, und Neosync übernimmt die ganze Komplexität.
Der Kern von Neosync ist die Fähigkeit, mit referenzieller Integrität umzugehen. Bei relationalen Datenbanken gibt es Primärschlüssel, Fremdschlüssel, Unique Constraints, zirkuläre Abhängigkeiten innerhalb und zwischen Tabellen, Sequenzen und mehr.
Egal also, ob Sie Daten anonymisieren oder synthetische Daten erzeugen: Es braucht eine Möglichkeit, diese Constraints und Beziehungen zu erhalten, sonst bricht das Schema.
Neosync übernimmt das transparent. Wenn es Probleme mit Constraints gibt — etwa gebrochene Fremdschlüssel, neue Spalten, die Mapping brauchen, oder NOT-NULL-Fremdschlüssel — werden Sie informiert, damit Sie Maßnahmen ergreifen und das Problem beheben können.
So funktioniert es:
-
Verbinden Sie die Quell- und Zieldatenbanken.
-
Definieren Sie den Aufgabentyp und entscheiden Sie, ob er nach einem Zeitplan ausgeführt werden soll. Synchronisationsaufgaben synchronisieren Daten von der Quelle zum Ziel, und Datengenerierungsaufgaben erzeugen synthetische Daten von Grund auf und streamen sie zum Ziel.
-
Definieren Sie die Schemas und Tabellen, die synchronisiert und transformiert werden sollen. Wählen Sie Transformer aus, die auf Spaltenebene festlegen, wie Daten anonymisiert oder synthetische Daten erzeugt werden, oder verwenden Sie KI-generierte synthetische Daten, um Daten in der Zieldatenbank zu erzeugen.
-
Abschließend können Sie ein Subset definieren. So filtern Sie die Daten, die an das Ziel übertragen werden. Dazu können Sie eigene SQL-Abfragen oder Filter angeben.
Das ist alles! Die Aufgabe wird gemäß dem von Ihnen festgelegten Zeitplan ausgeführt. Wir kümmern uns über die gesamte Datenbank hinweg um Retries, Backoff und referenzielle Integrität. Außerdem bieten wir eine API, CLI und Github-Aktionen, sodass Sie Neosync in CI-Pipelines verwenden können, um CI-Datenbanken zu befüllen.
Neosync ist ein Open-Source-Projekt, das in Go und Typescript geschrieben ist und mit Helm oder Docker Compose ausgeführt werden kann. Wir bieten außerdem eine gehostete Plattform mit einem großzügigen kostenlosen Tarif.
Wir freuen uns auf Feedback und heißen Beiträge jederzeit willkommen.
Noch keine Kommentare.