Vorratsdatenspeicherung
Der Vortrag von mcnesium "Mit HyperLogLog gegen Vorratsdatenspeicherung" bei den Datenspuren 2023, media.ccc.de/v/ds23-241-mit-hyperloglog-gegen-vorratsdatenspeicherung
Das Symposium Datenspuren des CCC.
- Musik Playlist
-
- Oratrice Mecanique d'Analyse Cardinale youtube.com/watch?v=7SV0ZPdordk
- kyOresu, Foreign by Kidd Keo youtube.com/watch?v=zb_SdqaNYcg
- XG, Woke Up youtube.com/watch?v=5sT20edl02I
- Kodama Boy, Shiki TMNS, Big Gay, Thigh High youtube.com/watch?v=BbN50TscIPo
- Else, Paris youtube.com/watch?v=r8Yqbi4uVUg
Transkription
Hier ist das politopia-magazin, euer gesellschaftspolitisches Magazin bei Radio X, dem Frankfurter Bürgerradio. Schön, dass ihr dabei seid, schön, dass ihr zuhört. Wir hören heute einen Vortrag zum Thema Vorratsdatenspeicherung.
Mit Vorratsdatenspeicherung meint man den Vorgang, dass Daten erhoben, bearbeitet und gespeichert werden, obwohl zu diesem Zeitpunkt noch gar nicht genau klar ist, wofür die Daten überhaupt verwendet werden sollen. Solche Daten können auch verloren gehen durch einen Sicherheitsvorfall. Wenn Daten gestohlen oder kopiert werden, können auch böswillige Angreifer mit solchen Datendingen machen, die eben beim Speichern der Daten erst mal gar nicht vorgesehen waren.
Wir hören heute einen Vortrag von mcnesium. Der Titel lautet mit HyperLogLog gegen Vorratsdatenspeicherung. Den Vortrag hat mcnesium bei den Datenspuren 2023 gehalten.
Vorratsdatenspeicherung ist das Thema heute. Ich habe mir überlegt, ich möchte mal ein bisschen was dazu erzählen, was ich mit meiner Forschungsgruppe zusammen an der TU Dresden in den letzten Jahren so gemacht habe und beziehe mich da auf das Thema Vorratsdatenspeicherung. Wir haben jetzt gerade schon nochmal eine kleine Einführung dazu gehört.
Ich gehe trotzdem nochmal darauf ein, dass Vorratsdatenspeicherung an sich bei uns zumindest in der Nerdkultur und auch im weiteren Sinne als etwas Schlechtes wahrgenommen wird. Unter anderem deswegen, weil es eben immer, wenn man das Wort benutzt, hauptsächlich darum geht, dass wir ja diese Telekommunikationsüberwachung haben. Das wurde schon von allen möglichen Gerichten immer mal wieder für illegal erklärt, gerade erst in den letzten Wochen wieder.
Das ist aber eigentlich nur ein kleiner Teil dessen, was mit dem Begriff Vorratsdatenspeicherung gemeint ist. Wenn man das Ganze mal ein bisschen gröber denkt, dann wäre aber zum Beispiel auch die Kontaktdaten-Nachverfolgung, die wir in Corona-Zeiten hatten, wenn ihr euch noch daran erinnert, dass in Restaurants und so weiter halt immer so diese Listen auslagen, wo man dann irgendwie Namen und Adresse draufschreiben sollte und das eigentlich dafür gedacht war, dass man halt kontaktiert wird, sobald ein Corona-Fall vorlag. Was dann aber dazu geführt hat, dass die Polizei auch hingegangen ist und diese Daten genommen hat, um ihre Ermittlungen durchzuführen.
Und dementsprechend ist die Vorratsdatenspeicherung hier eben auch ein Begriff, den ich dafür verwenden will, weil die Daten auf Vorrat gespeichert wurden und dann hinterher für was anderes verwendet wurden, als sie ursprünglich gedacht waren. Dann gibt es diesen berühmten Spruch, den irgendwann mal ein Richter vom Bundesverfassungsgericht angeblich gesagt haben soll, wo ein Trog ist, sammeln sich die Schweine. So, das fasst ein bisschen gut zusammen, dass halt die Vorratsdatenspeicherung dafür sorgt, dass immer irgendwann irgendein Player kommt, der Interesse an den Daten hat und die zweckentfremden möchte.
So, und es steht jetzt hier schlechte Vorratsdatenspeicherung auf der Folie und ihr werdet es gedacht haben, dass auf der nächsten Folie gute Vorratsdatenspeicherung steht, denn diesen Ansatz gibt es nämlich auch. Also da ist ein Beispiel die Mozilla Location Services. Da werden aus WLAN-Daten und Mobilfunkdaten und vielen anderen Daten auch eben ein Datenpool erzeugt, mit dem wir dann zum Beispiel auch unsere Linux-Betriebssysteme lokalisieren lassen können und nicht auf Google- oder Apple-Daten und deren Richtlinien angewiesen sind und so weiter.
Ist am Ende auch was Gutes und ich meine, die Daten, die erzeugt werden, die sind jetzt auch nicht ursprünglich dafür gedacht gewesen. Ein weiteres Beispiel für gute Vorratsdatenspeicherung, was das technische Hilfswerk macht und da werden jetzt vielleicht einige denken, was machen die denn damit und deswegen möchte ich mal da ein bisschen genauer drauf eingehen. Wir haben ein Konzept, das nennt sich Virtual Operations Support Teams.
Wir wissen ja, das THW macht halt so humanitäre Hilfe im Krisenfall und unter anderem machen die auch Social-Media-Datenanalyse und es werden halt irgendwie Social-Media-Daten genommen und irgendwie analysiert, komme ich gleich noch darauf ein bisschen genauer zu sprechen, und dann werden diese Daten eben an Behörden wie die Feuerwehr oder die Polizei weitergegeben, um denen bei ihren Verfahren dann eben ein bisschen Unterstützung zu leisten. Das Ganze sieht ungefähr so aus, da gibt es halt irgendwie so eine Software, wo eben Keyword Polizei zum Beispiel gesucht wird und dann ergibt sich so eine Karte mit Social-Media-Posts, mit ihren Geokoordinaten und wo die aufgefallen sind, in welcher Stärke und so weiter und so fort. Das wie gesagt als Beispiel, da kommen wir jetzt noch kurz in Einsatzszenarien, also es sind halt hauptsächlich so Naturkatastrophen, zum Beispiel im Ahrtal bei der Flut war dieses Pfost im Einsatz bei Massenveranstaltungen wie zum Beispiel der Tour de France, auf diesem Foto hier habt ihr vielleicht gerade gesehen, dass dort im Hintergrund auf dem Beamer die Tour de France läuft und das gucken die nicht nur nebenbei, sondern es ist explizit deren Aufgabe gewesen, dort halt eben die Vorgänge, die rund um diese Massenveranstaltungen stattfanden, eben in Social-Media abzubilden und dann eben Sachverhalte zu identifizieren.
So Demonstrationen ist zum Beispiel auch noch so ein Thema und da kann man eben auch mal kritisch hinterfragen, wie das jetzt eigentlich ist, wenn ich Kartendarstellungen machen will, die eben Demonstrationen zeigen und sämtliche Social-Media-Daten gespeichert werden und verarbeitet werden und an die Polizei weitergereicht werden. Im weitesten Sinne müssen wir trotzdem sagen, dass diese Social-Media-Datenverarbeitung und Vorratsspeicherung schon eine gute Sache ist, nicht nur für humanitäre Hilfe, sondern zum Beispiel auch für Journalismus. Man könnte ja sagen, okay, wir haben jetzt hier wieder so eine Hochwassersituation und man möchte darüber berichten und die Journalisten und Journalistinnen werden dann eben Social-Media-Daten auswerten und verwenden.
Und außerdem für Forschung und Wissenschaft ist es auch relevant, und da kann ich wirklich aus erster Hand darüber berichten, dass das eine ganze Menge Leute machen, Social-Media-Daten verarbeiten und für ihre Forschung als Grundlage verwenden. Es gibt noch viele weitere Beispiele. Die große Frage ist jetzt eben, was halten eigentlich die User davon? Es ist ja irgendwie nicht unbedingt einfach und im Endeffekt sogar unmöglich, alle nach ihrer Meinung zu fragen, geschweige denn, ihre Einverständniserklärung zu geben und deswegen ist die Antwort auf die Frage, naja, wissen wir halt nicht, findet nicht statt, kann auch nicht stattfinden.
Jetzt haben wir halt das Problem, wir wollen einerseits Daten analysieren, wir wollen andererseits die Privatsphäre der User schützen. So, dann gibt es jetzt hier diesen Spruch, der angeblich von dem englischen Philosophen Isaac Wharton aus ungefähr 1600 herkommt, hier unten ist die Quellenangabe dafür, was ich nicht habe, kann ich nicht verlieren. Ein bisschen moderner ist dieses Privacy-by-Design-Konzept, was eben die Grundlage bilden soll, wenn man Software oder generell irgendwie Methodik entwirft und dabei aber die Privatsphäre der User oder Privatsphäre im weitesten Sinne eben von vornherein mitdenkt und nicht ganz am Ende erst und dann irgendwie auf das, was man gemacht hat, obendrauf stülpt.
Und damit haben wir uns eben ein bisschen genauer beschäftigt. So, jetzt kommen wir nochmal zu dem Szenario Hochwasser. Einige erinnern sich vielleicht daran, 2013 gab es hier ein bisschen viel Wasser in Dresden.
Wir wollen jetzt als Ziel unserer Maßnahme eine Echtzeitkarte haben, wo man eben sieht, wo gerade Hochwasser ist. Die Strategie wäre jetzt, man sammelt Social-Media-Posts mit dem Hashtag Hochwasser und wertet die aus, extrahiert die Geodaten, sofern sie eben verfügbar sind in den Social-Media-Posts und markiert dann die Gebiete auf einer Karte. Die klassische Herangehensweise wäre, man lädt die Daten runter von den APIs, Webscraping und so weiter und so fort, speichert die in der Datenbank und wertet sie dann mit der Software aus, die man so irgendwie zur Verfügung hat.
Und hier sehen wir mal einen Beispiel-Post. Ich weiß nicht, kennt ihr alle, wie das irgendwie so aussieht. Alle wichtigen Daten sind da jetzt irgendwie zu sehen.
Wenn man sich das Ganze mal in der Datenbank anguckt, dann würde es jetzt hier aussehen, dass man eben hier den Inhalt hat, dann hat man hier die Geokoordinaten, das Datum, den User und eine völlig willkürlich ausgewählte ID. Und wir erkennen daran, dass wir eine ganze Menge Informationen in diesem Post haben, nämlich wer und wann und wo und was passiert ist, obwohl wir eigentlich nur wo wissen wollen, weil wir wollen ja eigentlich nur in der Karte darstellen, dass es dort einen Post gegeben hat. Dadurch, dass wir aber all diese Daten gespeichert haben in unserer Datenbank, haben wir eine ganze Menge Probleme, nämlich ein großes Potenzial für Zweckentfremdung, wie ich gerade schon gesagt habe.
Man kann ja jetzt nicht nur zeigen, dass ein Post an der Geokoordinate entstanden ist, sondern man kann zum Beispiel auch sagen, gib mir alle Usernames, die Hashtag Hochwasser gepostet haben. Das ist in dem Fall jetzt vielleicht nur marginal interessant, aber wenn wir jetzt nochmal auf das Beispiel mit einer Demonstration zurückkommen, dann ist es schon interessant, dass Wissenschaftler, Journalisten und so weiter einen Datenbestand irgendwie gescrapet haben und dann in der Lage sind, mal eben schnell alle Usernamen irgendwie, zum Beispiel der Polizei, die vor der Tür steht und dadurch, dass wir eben keine Einwilligung der Social Media User haben, haben wir eine implizite Privatsphäreverletzung. Nochmal das Beispiel mit dem Hochwasser, das könnte ja zum Beispiel sein, dass jemand auf dem Dach sitzt und die einzige Möglichkeit, die da ist, um Hilfe zu holen, ist auf Twitter oder wie auch immer irgendwo zu schreiben, hier, ich sitze auf meinem Dach, ich hätte gerne mal einen Hubschrauber und hier ist übrigens meine Postadresse.
Und dann wurde die Person gerettet und alles ist gut und so weiter und dann geht man wieder in den Social Media Dienst und löscht den Post, weil man ja nicht will, dass bis zum Sankt-Immeleins-Tag die Postadresse da zu sehen ist. Wenn jetzt aber in der Zwischenzeit schon irgendwie jemand von uns die Daten runtergeladen und in der Datenbank gespeichert hat, dann sind die Daten immer noch da, nur halt nicht mehr da, wo die Person sie ursprünglich irgendwie vermutet hat. Und man hat in dem Moment die informationelle Selbstbestimmung der Person massiv verletzt.
Und das Ganze mit der Diskrepanz, dass man die meisten Daten ja eigentlich gar nicht braucht. So, dann kommen wir nochmal zurück zu diesem Privacy-by-Design-Konzept. Was ich nicht habe, kann ich nicht verlieren.
Da haben wir eben nochmal ein bisschen genauer drüber nachgedacht und überlegt, was kann man denn da jetzt irgendwie mitmachen. Und dann haben wir entdeckt, dass es da ja diese Technologie namens Hyper-Log-Log gibt. Ist auch nicht mehr ganz das Neueste, wurde zuerst 2007 drüber publiziert.
Es ist ein sogenannter Cardinality-Estimation-Algorithm, also ein Algorithmus, der die Kardinalität, die Anzahl der verschiedenen Elemente einer Menge, schätzt. Das wird schon ziemlich intensiv verwendet von allen möglichen Datenbanksystemen. Denn es wird hauptsächlich verwendet, um ganz viele große Daten zu verarbeiten.
Log-Files oder sowas, was eben ganz viele Daten erzeugt. Und so viele Daten erzeugt, dass man jedes einzelne gar nicht mehr so richtig handeln kann. Und mit dieser Technologie aber die Möglichkeit hat, ganz viele Daten in einer sinnvollen Zeit zu verarbeiten.
Denn gespeichert werden eben nur statistische Daten und nicht jedes einzelne Datum selber. Entsprechend ist kein Rückschluss auf die ursprünglichen Originaldaten möglich. Und da haben wir uns gedacht, naja, das klingt doch eigentlich nach dem, was wir haben wollen.
Wir verwenden das jetzt eben nur nicht, um Performance-Optimierung zu machen, sondern wir verwenden es zu dem Zweck, Privatsphäre schützen zu können. Und deswegen haben wir uns halt folgendes Szenario ausgedacht. Ich gehe nochmal hier auf diesen Post, den wir vorhin schon gesehen haben, zurück.
Wir haben halt jetzt hier die Post-Daten nochmal extrahiert mit allen wichtigen Informationen. Hier haben wir die Geo-Koordinate. Die Geo-Koordinate wird mit dem Geo-Hashing-Verfahren umgewandelt, damit wir aus diesem einen Punkt eine Fläche haben.
Geo-Hashing ist so ein Geo-Coding-Verfahren, was so ein bisschen so ähnlich funktioniert, wie What3Words kennt ihr vielleicht oder das Plus-Codes von Google. Das sind wiederum halt so proprietäre Verfahren und Geo-Hashing ist halt so ein Public-Domain-Verfahren, was dazu führt, dass man eine Fläche auf der Erde mit so einem Geo-Hash, wie man ihn hier sieht, gut beschreiben kann. Dieser Hash ist jetzt hier genau der, den wir gerade sehen.
U31D ist genau dieses Rechteck, was auf der Karte den westlichen Stadtrand von Dresden einbezieht und der Punkt da ist genau der, den wir auf der Karte sehen. Das war eigentlich doch egal, weil eigentlich geht es ja nur darum, dass ich mir merken will, welche Posts in dieser Gegend hier vorgefallen sind und deswegen speichere ich das hier quasi in meiner Datenbank ab und gehe dann nochmal zurück zu den eigentlichen Postdaten. Und hier sehen wir nochmal die völlig arbiträre ID, die an Social-Media-Posts halt irgendwie von den Diensten immer sowieso schon dran ist.
Man könnte das auch irgendwie anders machen. Wir nehmen jetzt trotzdem mal die ID, weil wir wollen ja eben nur speichern, dass wir oder uns merken, dass wir den Post gesehen haben. Und dann kommen wir jetzt hier mit dieser Funktion, die wird diese ID mit einem Hashing-Verfahren zu einem Hash umwandeln.
Das Hashing-Verfahren ist darauf optimiert, dass man möglichst gleiche Wahrscheinlichkeiten erzeugen kann. Gibt es verschiedene Methoden, wie man das machen kann. Ist jetzt auch egal, welches das hier im Detail ist.
Und dann haben wir eben, wenn wir diesen Hash haben, dann haben wir hier unseren ursprünglichen Datenbank-Eintrag und mit dieser Hyper-Log-Log-Funktion fügen wir diesen Hash dem bestehenden Set hinzu und haben dann hier eben das Set ein bisschen vergrößert. Und das speichern wir in unserer Datenbank an der Stelle zu dem Geo-Hash und können jetzt sagen, dass wir in dieser Region halt diesen Post und alles, was davor schon dran stand, sehen können. Wir können allerdings nicht von diesem Hash auf die Ursprungsdaten zurückgreifen.
Wie der Algorithmus genau funktioniert, will ich jetzt auch mal ganz kurz anreißen, aber da jetzt nicht zu tief ins Detail gehen, damit er nicht alle wegrennt. Also wir haben halt diesen Hash, den ich gerade gezeigt habe, das wird in eine Binärdarstellung umgewandelt. Das heißt, wenn man in die Binärdarstellung umwandelt, haben wir nur Nullen und Einsen.
Das heißt, die Hälfte der Datensätze beginnt mit einer Null, ein Viertel mit einer Null Eins, ein Achtel mit einer Null Eins und so weiter. Und je mehr führende Nullen man findet, dann ist die Wahrscheinlichkeit, je mehr führende Nullen da ist, dass die Menge umso größer ist. Noch komplizierter ist es eigentlich, weil die Hashes noch in Subsets unterteilt werden und dann die einzelnen Subsets nur betrachtet werden mit den führenden Nullen.
Aber am Ende ist es halt so, dass man nur den Eintrag mit der größten Anzahl führender Nullen speichert und eben nicht jedes einzelne Datum. Das führt eben dazu, dass das Ganze auch so schnell funktioniert und dass man so viele Daten auslesen und verarbeiten kann, weil man eben nicht wirklich jedes einzelne Datum anfasst, sondern nur das mit der größten Null. Und beim Auslesen wird dann eben noch ein harmonisches Mittel über die Subsets berechnet und Ergebnis ist dann eben die geschätzte Kardinalität einer Menge, also eine Zahl, die uns ansagt, in dieser Menge, die ich an Social Media Post IDs gesehen habe, sind so und so viele Items drin.
Wenn man das jetzt mal vergleicht mit original wirklich gezählten Daten, dann stellt man fest, okay, es gibt da natürlich eine ganz geringe, aber trotzdem einen vorhandenen Unterschied. Das kann man an dieser Kurve gerade mal sehen. Hier haben wir aus so einem Datensatz von 100 Millionen Flickerfotos alle Fotos genommen, die Geolocation in Dresden haben und die verteilt über die Tageszeit dargestellt.
Und da sieht man eben, dass es schon irgendwie Abweichungen gibt. Allerdings, wenn man sich mal die Kurve insgesamt anguckt, stellt man fest, dass es schon irgendwie doch am Ende nahezu das Gleiche ist. Und wenn man diese Technologie verwendet, um einen Strich oder eine Fläche auf einer Karte darzustellen, dann spielen diese ca.
2% Abweichung eigentlich keine große Rolle. Und wir haben eben stattdessen die Vorteile von Hyper-Log-Log gegenüber dem normalen Zählen, dass wir eben für sehr große Datenmengen diese Technologie haben und das eben deutlich schneller funktioniert und du weniger Daten zu speichern hast, als wenn man alles einzeln speichern würde. Ein weiterer Vorteil ist noch, dass man verschiedene von diesen Sets zusammenfassen kann oder sie verschneiden kann und dann halt die Analysen, die man darauf fahren kann, eben noch ein bisschen konkretisieren kann.
Ich habe jetzt hier mal ein Beispiel, wo ich von Januar bis März 2022 auf Twitter geguckt habe, welche Posts den Term Omikron mit C und Omikron mit K haben. Da sieht man jetzt hier, dass es da durchaus Unterschiede gibt. Wenn man jetzt gerade im deutschen Sprachraum, im niederländischen Sprachraum schreibt man Omikron mit K und den Resten mit C. Wenn man das jetzt aber zusammennimmt, dann hat man ein deutlich besseres Bild davon, weil man eben beide Datensätze zusammenschließen kann.
Und das ist halt jetzt ein Vorteil von dem Hyper-Log-Log-Datensatz zu ich zähle einfach nur alle Daten. Weil wenn ich alle Daten nur zähle, dann habe ich dann am Ende einen Integerwert und weiß nicht mal mehr, was der eigentlich ist. Und dann weiß ich auch nicht, ob ich ein Element schon mal gezählt habe oder nicht.
Und dementsprechend ist das schon ganz optimal. So, hier nochmal eine Folie, wo das HL-Union nochmal beschrieben wird. Wir haben hier, wie gesagt, so einen Post, den haben wir eben schon gesehen.
Dann haben wir hier noch einen zweiten Post. Da wird jeweils eben mit der Hash-Funktion eben dieses eine Datum erzeugt. Und wenn man die zwei miteinander verbindet, dann werden die zusammengefasst.
Und man hat dann eben ein neues HL-Set, was die Kardinalität 2 beinhaltet, weil wir ja gerade zwei Posts zusammengepackt haben. Aber man erkennt, dass es in der Datenbank dann eben auch nur so ein Character-String ist und keine Rückschlüsse auf die Original-Daten ermöglicht. Kommen wir nochmal zur Anwendung.
Ich weiß nicht, ob ihr von dem Mein-Grün-Projekt gehört habt. Das ist so ein Projekt gewesen zusammen von der TU Dresden und dem IÖR und der Uni Heidelberg und noch einigen weiteren, die so ein Projekt gemacht haben, wo man in der Stadt Grünflächen identifizieren kann und auch danach suchen kann und dann irgendwie gucken kann, wo man am besten im Park Fußball spielen kann. Und das Konzept war eben so, dass man aus Social-Media-Daten überhaupt erst mal erfahren hat, wo es denn Grünflächen gibt in der Stadt, indem man eben verschiedenste Hashtags ausgelesen hat und das dann eben gespeichert hat.
Und dieses Projekt ist das erste Projekt, wo diese Hyper-Log-Log-Technologie, die wir da uns eben überlegt haben, zum Einsatz kam. Also könnt ihr euch gerne mal angucken. Ist online und funktioniert, obwohl das Projekt auch schon fertig ist.
Wir haben noch weitere Anwendungsfälle, so Sensordaten, wenn man jetzt mal irgendwie diese dystopische Smart City-Geschichte sich überlegt, wo ja auch viele Leute Probleme sehen bezüglich Datenschutz. Wenn man Sensordaten hat und die auch in so einem HLZ speichert, könnte man eben da viele Probleme auch mit umgehen, umfragen während zum Beispiel auch was, oder eben unter anderem auch das Problem mit den Gesundheitsdaten. Wir haben ja jetzt gerade das Problem, dass in der EU mehr oder weniger demnächst die Verordnung in Kraft treten, oder zumindest erstmal besprochen und beschlossen werden soll, dass Gesundheitsdaten zentral gespeichert werden sollen und da fallen eben auch wieder ganz viele Daten an, die Argumentation ist, ja, wir brauchen ja diese Daten, damit Forschung und Wissenschaft irgendwie darauf zugreifen können und damit arbeiten können.
Und da kommen wir nämlich jetzt eigentlich zu dem Hauptgrund, warum ich diesen Talk hier heute halte, weil ich die Chaos-Radio-Folge Nummer 279 gehört habe, ich weiß nicht, ob ihr die Leute kennt oder vielleicht das auch gehört habt, da ging es nämlich genau darum, um den Zugriff auf Gesundheitsdaten und was daran alles so kompliziert ist und was so schwierig ist und warum es so schwer ist, da jetzt irgendwie gegen zu kämpfen. Und es fiel halt da auch irgendwie der Satz, dass es ja immer mal wieder jemand ankommt mit einer technischen Lösung und dass ja alles schön und gut sei, aber die Problematik ist eigentlich noch viel größer, als nur, dass wir keine technische Lösung dafür haben und dann wurde das auch halbwegs langfristig elaboriert und ich habe mir beim Hören mal die ganze Zeit so gedacht, so ja, aber mit Hyper-Log-Log wäre das jetzt eigentlich kein Problem so richtig. Und ja, da habe ich mir gedacht, so irgendwie, da möchte ich doch mal irgendwann mit Leuten darüber diskutieren, inwiefern das jetzt vielleicht doch eine Sache ist, die man mal noch mal Leuten vorschlagen kann.
Und das ist genau deswegen, warum ich jetzt hier heute stehe, weil ich nicht unbedingt vor laufenden Kameras, aber heute im Laufe des Nachmittags oder morgen oder später noch mit Leuten, die Interesse daran haben, das Thema mal ein bisschen zu vertiefen und möglicherweise dann doch noch mal auf EU-Funktionäre und wie auch immer zugehen zu können und zu sagen, hier, wenn ihr das unbedingt machen wollt oder vielleicht dem Herrn Lauterbach mal sagen kann, hier, wenn ihr das unbedingt machen wollt, dann gäbe es da meiner Meinung nach vielleicht eine Möglichkeit, wie wir das machen können, ohne dass man hinterher von jeder einzelnen Person alles Mögliche an Daten einzeln auslesen kann, wenn doch die Argumentation ist, dass wir nur Statistiken für Forschung und Wissenschaft haben wollen. Und das ist ja schon auch ein hehres Ziel, ihr erinnert euch an gute Vorratsdatenspeicherung, allerdings ohne diesen Nachteil, dass man auf alle einzelnen Daten auch einzeln zurückgreifen kann. Wie ist denn das, du hattest bei Twitter und jetzt diesen ganzen Social Media immer gezeigt, dass da sofort Geodaten mit bei rausfallen.
Dann fallen die direkt aus den APIs raus oder muss man da... Wenn sie da sind, ja. Das mit den APIs ist halt ein bisschen schwierig, weil das, was ich da so als Proof of Concept gebaut habe, das ist jetzt irgendwann über den Sommer plötzlich kaputt gegangen. Ich weiß nicht, ob ihr das mitbekommen habt, dass da halt so ein Typ da sitzt, der versucht Twitter möglichst richtig doll kaputt zu machen und das hat auch gut geklappt.
Also die API, die ich da bisher verwendet habe, die hat erstmal nicht mehr funktioniert und bei Instagram-Daten ist es zum Beispiel auch so, dass es eigentlich keine richtigen Geokoordinaten mehr gibt, sondern nur noch so, wir nennen das arbitrary places, also man kann da ja ein Stichwort eingeben, so wie Altmarkt oder Dynamo-Stadion oder irgendwie sowas oder auch nur Dresden. Und da muss man sich dann das Ganze ein bisschen genauer herleiten, das ist auch Forschungsgegenstand im Moment in der Geo-Community, dass eben aus Social-Media-Posts ohne konkretes Geodatum dann über Inhaltsanalyse oder Bilderkennung oder sowas irgendwie eben doch noch irgendeine Information über das Wo raus zu extrahieren sind. Aber sofern Geodaten vorhanden sind, ist das auch über die API verfügbar, ja.
Weitere Fragen? Da ist eine weitere Frage auf der rechten Seite. Hi, in der allerersten Folie, wo du gezeigt hast, wie der Algorithmus funktioniert, was ist der erste Parameter der Add-Funktion? Das hier? Das HL-Add, genau. Das ist quasi das alte Set, in dem Fall ist es tatsächlich, achso, ich sollte natürlich vielleicht hier auf den Monitor gehen, in dem Fall ist es tatsächlich das leere Set, weil die Add-Funktion funktioniert nur, wenn man ein Set davor tut und nichts.
Und das ist eben die Hyper-Log-Log-Darstellung von einem leeren Set, was wir haben. Aber man könnte da jetzt auch jedes beliebige andere schon verfügbare Set hin tun. Wenn ich jetzt noch einen weiteren Post hinzufügen würde, dann würde quasi dieser Teil hier vorne stehen und dann eben der neue Hash angefügt werden.
Ich hätte noch eine zweite Frage, danke. Bei meinen Grünen, an welcher Stelle kommt das Verfahren da zum Einsatz? Na, die Daten, die zeigen, welche Grünflächen wo sind. Also das ist jetzt theoretisch ja schon in OpenStreetMap usw.
verfügbar, aber das ist ja genau nicht der Sinn, dass wir in OpenStreetMap gucken, wo Grünflächen sind, sondern wir wollen das ja aus Social-Media-Daten extrahieren. Und das muss auch gespeichert werden in der Datenbank und dafür wurde eben auch das Hyper-Log-Log-Konzept zum Einsatz gebracht. Ich habe noch eine Frage zum Hyper-Log-Log und zwar, wie robust ist denn das gegen Outliers, wenn ich jetzt an so Tech-Clouds denke, okay, Hochwasser ist jetzt nicht so wahrscheinlich, aber zum Beispiel jetzt hier auch für das Minecraft, wenn man nach Fußball sucht, es gibt natürlich zigtausend Spam-Bots auf Insta, auf Twitter, die halt die Standard-Tags nehmen, die es so gibt und einfach so ihren Content da reinballern.
Ist das robust dagegen oder muss man da händisch filtern? Das ist eine schwierige Frage. Also bin ich jetzt unvorbereitet, wie ich darauf antworten soll, weil der Punkt ist ja, wenn man Social-Media-Daten verarbeitet, kriegt man einen großen Stream an ganz vielen Daten zumindest der Annahme nach und ob du jetzt dort Bot-Spam drin hast oder nicht, das ist eigentlich ein vorgelagertes Problem zu dem, was wir hier eigentlich machen. Das heißt, du müsstest erstmal dafür sorgen, dass du die Daten sauber bekommst, bevor du die anfängst zu speichern.
Ob du das halt bei dir zuhause machst oder ob das der Dienst macht, auf den du da irgendwie zugreifst, das ist jetzt eine Frage, die ich, das musst du halt selber sehen. Der Punkt ist, wenn du das bei dir zuhause machst, dann sorgt das ja dafür, dass du die Daten trotzdem erstmal zuhause speicherst, bevor du die in dein HL-Set tust und das ist ja genau das, was wir eigentlich nicht haben wollen. Und deswegen musst du dich halt vorher darum kümmern, dass du eben deine Daten oder deine API-Anfrage so konkret stellst, dass du da eben nur das bekommst, was du auch wirklich haben willst.
Und dann kriegst du auch nur das, was du wirklich haben willst. Das ist nämlich der Punkt, dass du, wenn du deine Analysen machen willst und das mit dem MeinGrün oder mit Hochwasser und so weiter und so fort, dann speicherst du ja nur, dass du weißt, ich habe eine Anfrage gestellt mit allen Posts in dem Bereich, zum Hashtag Hochwasser. Und dadurch, dass du das weißt, musst du das ja selber gar nicht nochmal speichern, sondern du hast es ja selber die Anfrage dazu gestellt.
Und deswegen ist das Einzige, was du bekommst, eben die IDs von den Posts, die du zählst. Okay, danke. Haben wir nicht genau das Problem bei den Gesundheitsdaten, bei den Analysen, dass wir gar nicht wissen, wonach wir, was wir untersuchen wollen? Also das ist doch genau das Problem, weshalb wir dafür die Technologie nicht verwenden wollen.
Wir wollen Daten erfassen und irgendwann kommt eine unbekannte Krankheit, die völlig un- am allerliebsten haben wir es für die Untersuchung, für die wissenschaftliche Untersuchung, dass wir jedes noch erdenkliche personenbezogene Datum über diese Person mit diesen Sachen gespeichert haben. Und das ist unser Zielkonflikt mit der Privacy. Also wir wissen es halt dann nicht.
Richtig, das sehe ich nämlich auch so. Und Lauterbach sagt dann, naja, Forschung und Wissenschaft ist wichtiger und deswegen wollen wir das doch haben. Und natürlich, wir wissen nicht, wonach wir suchen werden, aber, das ist das, was ich gerade schon meinte, dass man sich vorher genau überlegen muss, was man jetzt eigentlich sucht.
Wenn man sich vorher überlegt, was man eigentlich genau sucht und wonach man sucht und welche Daten man speichern will, dann kann man eben hinterher auch nur genau das rausfinden mit kleinen Einschränkungen, dass man hinterher, wenn man irgendwie diese Verschneidungen oder Zusammenfassung von verschiedenen Sets machen kann, dass man da ein bisschen flexibel ist. Was man eben aber nicht machen kann, ist, dass man die Datensätze, die man hat, für irgendwas zweckentfremdet, was man vorher entweder noch nicht auf dem Schirm hatte oder eben auch gar nicht wollte. Und wenn du jetzt sagst, okay, ich möchte rausfinden, welche Krankheitsbilder es irgendwie so gibt, naja, dann muss man sich halt irgendwie vorher überlegen, wie man das darstellen kann.
Und das ist unendlich komplex. Also das Mein-Grün-Projekt, wie da das zum Einsatz kam, das ist deutlich komplexer als das, was ich hier jetzt gezeigt habe. Ich habe ja wirklich nur so den ganz kleinen ersten Schritt gezeigt.
Und man hat da hunderte von Sets, die man in verschiedenen Kombinationen zusammenstellen kann oder nicht. Und da muss man sich schon wirklich vorher gut überlegen, was man eigentlich genau will. Und meiner Meinung nach ist genau das der Schutz vor Missbrauch.
Weil wenn man sich gut genug überlegt hat, was man will, dann kann man verschiedene Sachen eben hinterher auch auslesen, aber auch nur genau die, die man sich vorher überlegt hat. Und es ist dann eben nicht möglich, daraus andere Daten abzuleiten, von denen man vorher noch nicht wusste, dass es theoretisch geht. Aber denkst du denn, dass es möglich ist, dass wir uns vorher überlegen, was wir hinterher untersuchen wollen? Weil ich sage mal von... Ich denke schon ja, also, was heißt, ich denke schon.
Also ich setze voraus, dass Leute sich vorher überlegen, was sie mit den Daten anfangen wollen. Weil ansonsten wäre ich ja nicht einverstanden damit, dass sie mit meinen Gesundheitsdaten irgendwo rumrennen und die an irgendwelchen Stellen speichern, von denen ich nicht weiß, wo es ist und so. Und wie gesagt, es ist ein Vorschlag, den ich halt irgendwie da habe.
Und das ist jetzt technisch alles andere als durchkonfiguriert. Und das ist auch noch nicht irgendwie zum morgigen Einsatz bereit. Es ist jetzt wirklich nur so ein Gedanke, den ich hatte, weil wir haben da jetzt halt dran rumgeforscht, weil ich irgendwie dachte, ja, wie ist das mit den Social Media Usern? Die sind doch da sicher nicht mit einverstanden oder haben da vielleicht eine Meinung zu oder nicht.
Und dann kam mir erst hinterher so der Gedanke, naja, gut, das kann man aber eigentlich auch für andere Sachen nutzen als nur für Social Media Daten, nicht wahr? Und das mit den Gesundheitsdaten ist halt in den letzten Jahren ein immer stärker gewordenes Thema geworden. Und da denke ich mir, kann man zumindest mal drüber nachdenken, ob man diese Art von Technologie dort auch zum Einsatz bringen kann. Was auch den Punkt angeht, man verwendet dann die Daten für was, was man vorher nicht wusste.
Gerade bei Gesundheitsdaten riecht das für mich auch sehr hart nach P-Hacking. Dass man erstmal so einen ganzen Datenhaufen hat und dann sucht man irgendein Muster. Und wenn man halt nur lang genug sucht, wird irgendwas finden.
Und das ist dann, wie diese ganzen Studien zustande kommen, die dann im Morgenmagazin reportiert werden. Als Kaffee verursacht Krebs, eine Woche später Kaffee heilt Krebs. Nächste Woche später Kaffee bringt dein Gehirn zum Explodieren oder was auch immer.
Weil dann halt irgendwo mal ein zufälliges Rauschen gefunden wurde in den Daten, was dann halt darauf hindeutet. Und dann wurde das natürlich völlig über Proportionen berichtet. Und ich meine, der aktuelle Stand ist ja, dass wir diese Datensätze gar nicht haben.
Und es ist ja auch nicht so, dass obwohl wir die Datensätze nicht haben, wir dem Untergang geweiht sind. Und jetzt kommt aber Lauterbach und sagt, nee, wir brauchen die Daten aber sowas von unbedingt und die müssen unbedingt zentral gespeichert werden, sonst geht gar nichts. Und da habe ich halt eben den Gegenvorschlag, lass uns doch erstmal mit diesem Setting probieren, irgendwie ein bisschen was zu reißen.
Da kommen wir sicher eine ganze Ecke weiter, als wir momentan sind, ohne dass wir gleich diesen riesen Datensatz da haben, der dann auf jeden Fall zweckentfremdet werden wird. Ihr erinnert euch an, wo der Trog ist, kommen die Schweine. Und bevor wir jetzt sagen, nee, wir machen entweder alles oder gar nichts, könnte man mit dieser Technologie anfangen, mal zu überlegen, ein paar Daten zu speichern, mit der Technologie warm zu werden, genau zu überlegen, was wollen wir eigentlich? Und dann Stück für Stück uns daran entlanghangeln.
Und vielleicht, ich meine, das ist jetzt auch noch nicht der Weisheit letzter Schluss, also das Hyper-Log-Log als Algorithmus ist schon ziemlich abgehangen und da gibt es auch Extensions, die halt irgendwie noch besser sind und so weiter und so fort und wir haben halt nur in unserer Forschung uns darauf bezogen, weil das eben halbwegs gut dokumentiert ist und auch implementiert ist. Und das ist alles an allen Ecken und Enden noch optimierungswürdig. Es ist eben erstmal nur so der Gedanke, man muss nicht unbedingt alle Daten einzeln wieder auslesbar abspeichern, da gibt es auch andere Methoden, wie man Analysen über große Datensätze fahren kann, ohne eben auf einzelne Daten zurückgreifen zu können.
Ja, noch eine weitere Frage, ja. Ja, eine Frage habe ich noch. Gerade bei dem Projekt meingrün.org ist ja die geografische Lokation ein ganz entscheidender Punkt.
Ich kann mir aber gut vorstellen, dass gerade diese Information sehr unscharf ist, weil ich sie vielleicht, was weiß ich, ich sitze später im Bus und sende das von dort oder ich mache das anschließend von zuhause, weil ich unterwegs keine Lust habe, das zu machen. Überschätze ich das Problem, dass man diese geografische Information gar nicht so genau lokalisieren kann oder wäscht sich das durch große Datenmengen aus und diese Bildung dieser Rechtecke, ich hatte jetzt das Gefühl, dass dieses Rechteck, wenn ich das jetzt im Verhältnis zur Stadt Dresden sehe, extrem groß ist und ich damit quasi so ein Projekt, wie es dort ist, so punktgenau gar nicht machen kann? Naja, der Sinn ist ja, ich hatte ja auch die Grafik gezeigt, wo der Vergleich zwischen den echten Daten und den geschätzten Daten da ist, der Sinn ist, wir brauchen eigentlich gar nicht unbedingt die Punktgenauigkeit, wenn man diese Kartendarstellung hier hat, nicht wahr? Und natürlich ist es so, dass man eben durch diese durchschnittlich 2% Abweichung nie zu einem exakten Wert kommt, aber bei vielen Anwendungen ist es auch gar nicht so unbedingt wichtig, dass man punktgenau arbeitet, weil durch die Menge der Daten kommt man schon ungefähr zu einer Richtung, wo man sagt, ja, das reicht mir als Wert, um das zum Beispiel als Kartendarstellung zu verwenden. So, wenn es jetzt keine weiteren Fragen gibt, würde ich sagen, oh ne, es gibt noch eine Frage, sehr gut.
Wir haben die Zeit dafür. Ihr könnt gerne die Chance noch nutzen. Ja, sehr interessanter Vortrag, ich habe eigentlich nicht viel verstanden, aber egal.
Guckst du dir nochmal den Auftrag an? Ich bin noch etwas später dazu gekommen, aber meine Frage ist, weil es gerade um Gesundheitsdaten ging, es war ja auch, glaube ich, jetzt mit Corona wurde das ja jetzt auch so nochmal politisch und so auch gesellschaftlich so hochgespült mit Forschungsdaten und so. Und da war das ja auch aus der Richtung Israel, dass man gesagt hat, okay, Israel ist da sehr, ich sag mal, offen und die, ich sag mal, die Kohorten, was die Impfung angeht, das wird alles erfasst und das geht dann zurück, fließt zurück in die Forschung. Und da hatte ich mir gerade gedacht, naja, wäre das nicht dort auch in dem Fall, man weiß genau, welche empirischen Daten wir dort sammeln, für welchen Zweck und so, aber personenbezogen natürlich.
Und wäre das hier ein guter Anwendungsfall jetzt rückblickend gewesen für dein Modell, zu sagen, okay, damit kann ich sowas in Zukunft auch machen, aber mit der Wahrung des Datenschutzes und da kann ich mit so einem Beispiel dann auch auf so jemand wie Lauterbach zugehen und hier, wir können das in Zukunft auch machen, aber ohne große Verluste, aber mit Wahrung des Datenschutzes. Ja, das hast du nochmal gut zusammengefasst, das ist genau mein Take, den ich hier habe, also ich kann jetzt nicht wissenschaftlich nachweisen, dass es exakt so ist. Ich bin auch in dem Gesundheitsdatenthema jetzt nicht so tief drin, das ist nur meine Annahme, dass das, was ich jetzt hier mit Social-Media-Daten gemacht habe, eben auch für andere Daten möglich sein muss.
Und deswegen suggeriere ich, dass man das eben damit auch machen kann und ja, jetzt müsste man sich eben mal im Detail damit auseinandersetzen mit Leuten, die eben diese Gesundheitsdaten vielleicht schon mal verarbeitet haben und es ist wahrscheinlich so, dass noch nie irgendjemand da mal technisch implementiert hat, was sich der Herr Lauterbach da so vorstellt. Und ich meine, bei dem Chaos-Radio hieß es, naja, Ende des Jahres wird da irgendwie der Rat zu abstimmen und es ist eigentlich schon in Brunnen gefallen, das Kind. Es ist jetzt nur noch eine Frage, wie lange es dauert, bis es tatsächlich umgesetzt wird und möglicherweise ist das deswegen jetzt der Punkt, wo wir nicht mehr über das Ob reden, sondern über das Wie und da wäre eben mein Vorschlag, lass uns doch mal angucken, ob man die Technik nicht dafür verwenden kann, damit man es eben weniger schlimm macht, als es werden wird sonst.
Wir haben eine Meldung. Weil jetzt gerade die Frage kam mit Israel, in Israel haben wir ja die Daten und dementsprechend können wir sie auch dementsprechend exakt auswerten, bitte nagelt mich nicht fest, Israel ist bekannt dafür, dass sie ja alle Daten so gut auflösen können, dass sie festgelegt haben, ich glaube 93 Prozent ihrer Bevölkerung hat die erste Impfung, bitte nagelt mich nicht fest, 87 Prozent haben die zweite Impfung und alle über 60-Jährigen haben sie auf alle Fälle gehabt. Und jetzt haben wir diesen hohen Datenbestand, der ist ja nicht ganz frei zugänglich, aber er ist zugänglich und könnte man jetzt nicht aus den Daten sozusagen nur das Wertvolle rausnehmen, in dem Fall halt du mit deinem Modell, du weißt, die Daten stecken da drin, das steht ja fest und du nimmst jetzt sozusagen nur noch die Basic Daten, die du ja einfach durch Subtraktion der Ursprungsdaten herausnehmen kannst und kannst dann sagen, okay, ich sehe, dass genauso in den selben drei Dörfern, sage ich jetzt mal, dieselben Zahlen rauskommen, wie in den Ursprungsdaten.
Da du ja nur eine Subtraktion der Daten machst, kann ja eigentlich keinerlei Verlust, du hast kein Rauschen drin, du hast kein Multimedia-Gedöns drin und sonst was und dann kannst du sagen, eigentlich bräuchte man um dieselben Aussagen, die ihr jetzt mit Mengen an Daten getroffen habt, kann ich mit denen weniger Daten treffen und damit könnte man doch eine Reduktion der Daten auf das Wesentliche fokussieren und weiß dann trotzdem, dass man da hinkommt. Damit kann man doch genau abschätzen, welche Daten man benötigen würde, falls jetzt wieder eine neue Pandemie kommt. Ist das sozusagen nicht ein wissenschaftlicher Ansatz? Richtig, genau.
Das ist genau so, wie ich mir das vorstelle und war mir jetzt ehrlich gesagt gar nicht bekannt, dass es da irgendwie so einen Datensatz aus Israel gibt, aber genau daran könnte man das als Beispiel bringen, dass man jetzt diese Daten nimmt und sagt, hätten wir die jetzt alle nicht in echt gespeichert, sondern hätten die mit dieser Technologie verwendet, dann kann man da genau so eine Kurve draus machen, wie mit meinem blauen und orange hier und könnte dann sehen oder mal ausprobieren, ob man das, was man mit den Daten darstellen kann, mit diesem Datum auch darstellen könnte, um dann hinterher zu sagen, hätten wir gar nicht so erheben müssen die Daten, wir hätten das auch so hinbekommen. Genau so stelle ich mir das vor eigentlich. Das war jetzt der Vortrag von mcnesium mit HyperLogLog gegen Vorratsdatenspeicherung.
Den hat er gehalten bei den Ladenspuren 2023. Wie immer könnt ihr all unsere Beiträge, alle unsere Sendungen auf unserer Webseite nachhören, politopiamagazin.de. Dort sind neben den Sendungen selbst auch noch Shownotes, also Sendungsnotizen, wo ihr weiterführende Links finden könnt und euch auch selber nochmal zum Thema schlau machen könnt. Wir freuen uns, dass ihr dabei wart.
Wir freuen uns, dass ihr zugehört habt. Wir hören uns wieder nächste Woche, das politopia-magazin, jeden Mittwoch 16 Uhr bei Radio X. Bis dann!