Es gibt mehrere Möglichkeiten, mit Diffix zu experimentieren, ohne sich die Mühe zu machen, PostgreSQL einzurichten und die Erweiterung pg_diffix zu installieren. In erster Linie betreibt das Open Diffix Projekt einen PostgreSQL Server mit pg_diffix und mehreren repräsentativen Datenbanken. Es gibt mehrere Möglichkeiten, mit unserem PostgreSQL-Dienst zu interagieren. Alternativ können Sie Diffix Dashboards herunterladen und testen es mit den von uns bereitgestellten CSV-Beispieldatensätzen oder mit Ihrem eigenen CSV-Datensatz.
Schreiben Sie uns (hello@open-diffix.org) wenn Sie Fragen oder Kommentare haben.
Die folgenden Datenbanken mit pg_diffix sind online verfügbar:
Host | Port | Databank | User | Password |
---|---|---|---|---|
db001.gda-score.org | 5432 | banking0 | direct_user | demo |
db001.gda-score.org | 5432 | banking0 | trusted_user | demo |
db001.gda-score.org | 5432 | banking0 | untrusted_user | demo |
db001.gda-score.org | 5432 | taxi | direct_user | demo |
db001.gda-score.org | 5432 | taxi | trusted_user | demo |
db001.gda-score.org | 5432 | taxi | untrusted_user | demo |
db001.gda-score.org | 5432 | census0 | direct_user | demo |
db001.gda-score.org | 5432 | census0 | trusted_user | demo |
db001.gda-score.org | 5432 | census0 | untrusted_user | demo |
db001.gda-score.org | 5432 | scihub | direct_user | demo |
db001.gda-score.org | 5432 | scihub | trusted_user | demo |
db001.gda-score.org | 5432 | scihub | untrusted_user | demo |
demo-pg.open-diffix.org | 5432 | banking | direct_user | demo |
demo-pg.open-diffix.org | 5432 | banking | trusted_user | demo |
demo-pg.open-diffix.org | 5432 | banking | untrusted_user | demo |
db001.gda-score.org | 5432 | moers | hackday | moers |
db001.gda-score.org | 5432 | moers | hackday_direct | moers |
Datenbanken mit trusted_user- und untrusted_user-Benutzern werden mit Diffix geschützt (der Modus untrusted_user hat etwas stärkere Anonymität auf Kosten von weniger flexiblem SQL). Datenbanken mit direct_user-Benutzern haben keine Schutzmaßnahmen und können zum Vergleich der Rohdaten mit den geschützten Daten von Diffix verwendet werden.
Die Datenbanken enthalten die folgenden Tabellen und Daten:
Databank | Beschreibung |
---|---|
banking0 | Die Datenbank banking0 enthält eine Reihe von Bankgeschäften und anderen Daten einer tschechischen Bank. Sie besteht aus sieben verschiedenen Tabellen. " + "Die Transaktionstabelle enthält zum Beispiel über 1,2 Millionen Transaktionen von 5300 Kunden. |
taxi | Die Taxidatenbank enthält vier Stunden an Taxifahrten in New York City (vom 8. Januar 2013, ab 8 Uhr morgens bis 12 Uhr mittags). " + "Die Datenbank enthält 29 Spalten und über 95000 Taxifahrten, die von über 11000 Fahrern durchgeführt wurden. |
census0 | Die Zensus0-Datenbank stammt aus der Volkszählung der USA von 2013. Dieser Datensatz wurde vom US Census Bureau bereits durch Stichproben, Aggregation und andere Mittel anonymisiert. Er enthält 120 Spalten und repräsentiert 250.000 Personen. |
scihub | Die scihub-Datenbank enthält die Downloads einer Woche aus dem Sci-Hub-System zum kostenlosen Herunterladen wissenschaftlicher Arbeiten. Die Woche ist die erste Woche im September 2015. Die Datenbank hat 15 Spalten und enthält über 1,1 Millionen Downloads von rund 160.000 verschiedenen pseudonymisierten IP-Adressen. |
banking | Hierbei handelt es sich um eine vereinfachte Teilmenge der banking0-Daten. |
moers | Die Moerser Datenbank enthält Verkehrsverstöße, die in der deutschen Stadt Moers begangen wurden. Fiktive Nummernschilder sind hinzugefügt worden. |
Der einfachste und beste Weg, um ein schnelles Gefühl für die Funktionsweise von Diffix zu bekommen, ist die Online-Schulungs-App.
Die Trainings-App enthält Beispiele für jede der Diffix-Abfragefunktionen. Sie zeigt anonymisierte und Originaldaten nebeneinander an, um zu verdeutlichen, wie Diffix Daten verzerrt und verschleihert. Mit der Trainings-App können Sie auch Ihre eigenen SQL-Abfragen für die Diffix- und Originaldaten schreiben.
Die Schulungs-App hat Verbindungen zu den Datenbanken banking0, taxi, census0 und scihub. Es dauert nur wenige Minuten, um die grundlegenden Abfragefunktionen von Diffix zu verstehen und etwa 30 Minuten, um jedes Beispiel durchzugehen.
Im Prinzip sollte jeder SQL-Client, der PostgreSQL unterstützt, mit pg_diffix funktionieren. In der Praxis hat jeder SQL-Client seine eigenen Eigenheiten, wie er die Datenbank erkundet, und daher funktionieren nicht alle SQL-Clients mit pg_diffix.
Wir haben mit pg_diffix erfolgreich zwei SQL-Clients eingesetzt: pgAdmin und DBeaver
Jede Software mit einer PostgreSQL-Schnittstelle kann mit pg_diffix arbeiten. Wir haben ein Demo-Notebook vorbereitet (hier erhalten Sie weitere Angaben und Details) unter Verwendung von psycopg2 und ipython-sql, das Sie als Vorlage für die Erstellung Ihres eigenen Notebooks verwenden können.
Wenn Sie mit Ihren eigenen Daten experimentieren möchten, können Sie schnell und einfach mit Diffix Dashboards (Download) loslegen. Diffix Dashboards ist eine eigenständige Anwendung für Windows, die mit einer lokalen CSV-Datei arbeitet.
Diffix Dashboards bündelt das Business Intelligence-Tool Metabase mit pg_diffix. Es erfordert kein SQL, sondern kann mit einem einfachen GUI-Abfragegenerator verwendet werden. Es unterstützt auch das Schreiben von Abfragen in SQL. Wenn Sie keine eigenen Daten haben, mit denen Sie experimentieren können, bieten wir Ihnen eine Reihe von CSV-Beispieldatensätzen zum Herunterladen an.
Metabase ist ein beliebtes Open-Source Business Intelligence Tool zur Datenvisualisierung. Es verwendet SQL für den Datenzugriff und arbeitet mit einer Vielzahl von Backend-Datenbanktechnologien wie PostgreSQL und pg_diffix. Metabase unterstützt Datenvisualisierung und Dashboards.
Wir betreiben einen Metabase-Server, der sich mit der Moers-Datenbank verbindet. Die Anmeldedaten sind:
URL | User | Password |
---|---|---|
metabase.open-diffix.org | participant@moershackday.de | moershackday2022 |
Die Metabase bietet zwei Möglichkeiten zum Schreiben von Abfragen: über einen GUI-Query-Builder und mit SQL. Der Query-Builder setzt die Auswahl des Benutzers in SQL um. Da Diffix eine eingeschränkte Teilmenge von SQL verwendet, funktioniert nicht der gesamte Query-Builder mit dem pg_diffix-Backend. In der Praxis sollte der Benutzer erwarten, dass er SQL-Abfragen schreibt, wenn er Metabase mit Diffix verwendet.
Wir haben eine kurze Anleitung geschrieben , wie man das macht vorbereitet.
Wir haben eine Diffix-Demo in Form einer Heatmap-Visualisierung von Taxidaten aus New York erstellt. (Sie können eine Beschreibung hier erhalten). Diese Demo zeigt die mit Diffix erstellte Heatmap Seite an Seite mit der entsprechenden Heatmap, die aus den Rohdaten erstellt wurde. Sie vermittelt einen konkreten Eindruck von der Leistungsfähigkeit und Genauigkeit der Diffix-Anonymisierung.