Wie funktioniert die Implementierung von 'Data Masking' auf Storage-Ebene ohne Performance-Einbußen bei Read-Queries?

Die Implementierung von Data Masking auf Storage-Ebene ohne Performance-Einbußen bei Read-Queries erfordert die strikte Trennung von physischer Datenspeicherung und logischer Präsentation. Wir setzen hierbei primär auf zwei Ansätze: Static Data Masking (SDM) und optimiertes Dynamic Data Masking (DDM).

Beim SDM wird eine physische Kopie des Datensatzes erstellt, in der sensible Informationen dauerhaft durch Masken ersetzt werden. Da die Transformation einmalig beim Schreibvorgang oder während eines ETL-Prozesses erfolgt, entfällt jeder Rechenaufwand bei Read-Queries. Die Leseperformance entspricht somit exakt der eines Standard-Datensatzes, da keine On-the-fly-Berechnungen stattfinden.

Für Szenarien, in denen Live-Daten benötigt werden, nutzen wir DDM über eine Policy-Engine, die direkt in den Query-Optimizer oder einen spezialisierten Storage-Proxy integriert ist. Um Latenzen zu vermeiden, implementieren wir folgende Optimierungen:

MethodePerformance-Impact (Read)ImplementierungsortAnwendungsfall
Static MaskingNullStorage / DiskTest- und Dev-Umgebungen
Dynamic MaskingGeringQuery Engine / ProxyProduktionsumgebungen
TokenisierungMittelVault / APIHochsensible PCI-Daten

Um die Performance bei DDM zu maximieren, setzen wir auf Hardware-Beschleunigung (z. B. AES-NI Instruktionen) und das Caching von Maskierungsregeln im Arbeitsspeicher. Anstatt Maskierungslogik in komplexen SQL-Views abzubilden, verschieben wir die Logik in eine spezialisierte Abstraktionsschicht. Dies verhindert, dass der Query-Optimizer ineffiziente Execution Plans erstellt, die bei großen Datenmengen zu Timeouts führen würden.

In komplexen Infrastrukturen integrieren wir diese Mechanismen in eine übergeordnete IT-Consulting & Digitale Strategie, um die Balance zwischen Datensicherheit und Systemdurchsatz zu wahren. Die Wahl des Verfahrens hängt von der erforderlichen Granularität der Zugriffskontrolle und der geforderten Antwortzeit der Applikation ab.

Wir empfehlen für maximale Read-Performance konsequent den Einsatz von Static Data Masking für alle nicht-produktiven Umgebungen und die Nutzung von hardware-beschleunigten Proxy-Layern für produktive Systeme, da softwareseitige Maskierung innerhalb von Datenbank-Views bei hohen Lasten unweigerlich zu CPU-Bottlenecks führt.

Sergej Wiens

Sergej Wiens

Gründer & Software Architekt