SQL-Datenbanken
Wann sich Datenkomprimierung lohnt
Auf den ersten Blick könnte man meinen, das Thema Datenkompression sei alles andere als aktuell. Schließlich spielt eingesparter Plattenplatz bei Datenbank-Anwendungen heute dank stetig sinkender Storage-Kosten kaum mehr eine finanzielle Rolle. Plattenkapazitäten von Hunderten von GByte sind billigst zu haben, und Speicherträger können jederzeit leicht an bestehende Systeme angedockt werden. Warum also sollte man Daten noch komprimieren?
Tatsächlich ist Datenkompression bei wenigen GByte Datenaufkommen kaum relevant. Bewegt sich der Storage-Bedarf hingegen – wie in professionellen IT-Umgebungen üblich – in größeren Dimensionen, bedeutet Speicherminimierung durchaus wirtschaftliche Vorteile. Das gilt etwa für Datenbanken mit fünf oder zehn TByte, wie sie heute bei Data-Warehouse-Systemen, aber auch anderen Datenbank-Anwendungen, üblich sind.
Doch reduzierte Speicherkosten sind nur ein Aspekt, warum es sich lohnt, Daten möglichst sparsam abzulegen. Zu bedenken ist auch, dass eine optimierte Datenspeicherung die Ressourcen, die für das Management der Daten verwendet werden, schont. Je weniger Daten gespeichert werden, umso geringer sind beispielsweise die Anforderungen an die Datenbank-Server. Die Performance des Systems wird verbessert, Zugriffzeiten verringert und die IO-Last ganz allgemein minimiert. Kurz gesagt: Je weniger Daten, umso effizienter arbeitet das Datenbank-System.
Der Wunsch von Anwendern ist daher groß, die Fähigkeiten von Datenbank-Systemen zu nutzen, um große Datenmengen durch eine möglichst effiziente Speicherung zu minimieren. Wir stellen Ihnen in diesem Artikel verbreitete Techniken vor, um Daten in SQL-Datenbanken effizient zu speichern. Den Schwerpunkt bildet dabei die Tabellenkompression und im Teil 2 die Indexkompression.