Veröffentlichung von DBMS immudb 1.0, das Schutz vor Datenbeschädigung bietet

Es wurde eine bedeutende Version des DBMS immudb 1.0 eingeführt, die die Unveränderlichkeit und Bewahrung aller jemals hinzugefügten Daten garantiert, außerdem Schutz vor rückwirkenden Änderungen bietet und einen kryptografischen Nachweis des Dateneigentums ermöglicht. Ursprünglich wurde das Projekt als spezialisierter NoSQL-Speicher entwickelt, der Daten im Schlüssel/Wert-Format manipuliert. Ab Version 1.0 ist immudb jedoch als vollwertiges DBMS mit SQL-Unterstützung positioniert. Der Projektcode ist in Go geschrieben und wird unter der Apache 2.0-Lizenz vertrieben.

Informationen in immudb werden mithilfe einer Blockchain-ähnlichen Struktur gespeichert, die die Integrität der gesamten Kette vorhandener Datensätze garantiert und keine Änderung bereits gespeicherter Daten oder das Ersetzen/Einfügen eines Eintrags in den Transaktionsverlauf zulässt. Der Speicher unterstützt nur das Hinzufügen neuer Daten, ohne die Möglichkeit, bereits hinzugefügte Informationen zu löschen oder zu ändern. Ein Versuch, Datensätze im DBMS zu ändern, führt lediglich zum Speichern einer neuen Version des Datensatzes; alte Daten gehen nicht verloren und bleiben im Änderungsverlauf verfügbar.

Darüber hinaus ermöglicht immudb im Gegensatz zu typischen Blockchain-basierten Lösungen eine Leistung auf dem Niveau von Millionen von Transaktionen pro Sekunde und kann zum Starten einfacher Dienste oder zum Einbetten seiner Funktionalität in Anwendungen in Form einer Bibliothek verwendet werden.

Veröffentlichung von DBMS immudb 1.0, das Schutz vor Datenbeschädigung bietet

Eine hohe Leistung wird durch die Verwendung eines LSM-Baums (Log-Structured Merge-Tree) mit einem Protokoll von Werten erreicht, der einen schnellen Zugriff auf Datensätze mit einer hohen Intensität der Datenzugabe ermöglicht. Um die Integrität des Speichers aufrechtzuerhalten, wird zusätzlich eine Merkle-Tree-Baumstruktur verwendet, bei der jeder Zweig alle zugrunde liegenden Zweige und Knoten durch gemeinsames (Baum-)Hashing überprüft. Mit dem endgültigen Hash kann der Benutzer die Richtigkeit des gesamten Betriebsverlaufs sowie die Richtigkeit der vergangenen Zustände der Datenbank überprüfen (der Root-Verifizierungs-Hash des neuen Zustands der Datenbank wird unter Berücksichtigung des vergangenen Zustands berechnet). ).

Kunden und Auditoren erhalten einen kryptografischen Nachweis des Dateneigentums und der Datenintegrität. Die Verwendung der Public-Key-Kryptografie erfordert nicht, dass der Client dem Server vertraut, und die Verbindung jedes neuen Clients mit dem DBMS erhöht das allgemeine Vertrauensniveau im gesamten Speicher. Öffentliche Schlüssel und Schlüsselsperrlisten werden in der Datenbank gespeichert, und Intel SGX-Enklaven können bei der Durchführung von Verschlüsselungsvorgängen verwendet werden.

Zu den Funktionen des DBMS gehören SQL-Unterstützung, Schlüssel-/Wertspeichermodus, Indizes, Datenbanksegmentierung (Sharding), Erstellung von Snapshots des Datenstatus, ACID-Transaktionen mit Unterstützung für Snapshot-Isolation (SSI), hohe Lese- und Schreibleistung, Optimierungen für Erwähnt werden ein effizienter Betrieb auf SSD. Laufwerke, Unterstützung für die Arbeit in Form eines Servers und einer eingebetteten Bibliothek, Unterstützung für REST API und das Vorhandensein einer Webschnittstelle zur Verwaltung. Zu den typischen Anwendungen, in denen DBMS wie immudb gefragt sind, gehören Kreditkartentransaktionen, die Speicherung öffentlicher Schlüssel, digitaler Zertifikate, Prüfsummen und Protokolle sowie die Erstellung von Backup-Speichern für wichtige Felder in herkömmlichen DBMS. Client-Bibliotheken für die Arbeit mit immudb sind für Go, Java, .NET, Python und Node.js vorbereitet.

Wichtige Verbesserungen in der Version 1.0 von immudb:

  • SQL-Unterstützung mit der Möglichkeit, Zeilen vor versteckten Änderungen zu schützen.
  • TimeTravel-Modus, der es ermöglicht, den Zustand der Datenbank auf einen bestimmten Zeitpunkt in der Vergangenheit zu versetzen. Insbesondere kann die Datenschneidezeit auf der Ebene einzelner Unterabfragen eingestellt werden, was die Analyse von Änderungen und den Datenvergleich vereinfacht.
  • Unterstützung für das PostgreSQL-Client-Protokoll, das es Ihnen ermöglicht, vorhandene Anwendungen und Bibliotheken, die für die Arbeit mit PostgreSQL entwickelt wurden, mit immudb zu verwenden. Zusätzlich zu den nativen Client-Bibliotheken können Sie die Standard-Client-Bibliotheken Ruby, C, JDBC, PHP und Perl verwenden.
  • Webkonsole für interaktive Datennavigation und DBMS-Verwaltung. Über die Weboberfläche können Sie Anfragen senden, Benutzer anlegen und Daten verwalten. Zusätzlich steht die Playground-Lernumgebung zur Verfügung.
    Veröffentlichung von DBMS immudb 1.0, das Schutz vor Datenbeschädigung bietet
    Veröffentlichung von DBMS immudb 1.0, das Schutz vor Datenbeschädigung bietet


    Source: opennet.ru

Kommentar hinzufügen