Der Treffpunkt für Sun-Fans seit 2001
Übersicht
Forum
Hilfe
Suche
Einloggen
Registrieren
Suche
Geben Sie Ihre Suchbegriffe ein
Web
sonnenblen.de
Suchformular senden
Erweiterte Suche
Benutzer
Willkommen
Gast
. Bitte
einloggen
oder
registrieren
.
24. Mai 2012, 18:26:02
1 Stunde
1 Tag
1 Woche
1 Monat
Immer
Einloggen mit Benutzername, Passwort und Sitzungslänge
ShoutBox!
Letzte 5 Shouts:
TomcatMJ
09. April 2012, 22:24:40
Genau! dir auch noch knappe 35 Minuten Rest-Ostern
und denen dies noch vor 0 Uhr lesen ebenso ein frohes Rest-Ostern
Polymestor
08. April 2012, 12:25:29
Falls heute noch jemand hier vorbei schaut: Frohe Ostern! :-)
TomcatMJ
14. März 2012, 02:18:10
Wet,Wetter,abgesoffen?
*scnr*
escimo
21. September 2011, 17:02:09
USENET? - Tolles Ding!
escimo
11. September 2011, 15:09:12
Super Wetter!
Zeige Ältere 50
Spenden
Downloads
Link-Manager
Gewusst wie...
Links (alt)
sonnenblen.de Shop
Haftungsausschluss
Impressum
Anzeige
Berechtigungen
Anzeige
sonnenblen.de - Das unabhängige Sun User Forum
>
Forum
>
Betriebssysteme
>
Solaris/x86 und OpenSolaris
>
Kompression funktioniert nicht (richtig)
Seiten: [
1
]
2
Nach unten
« vorheriges
nächstes »
Drucken
Autor
Thema: Kompression funktioniert nicht (richtig) (Gelesen 2051 mal)
Bentsch
Gast
Kompression funktioniert nicht (richtig)
«
am:
02. Januar 2009, 10:58:58 »
Hallo,
ich bin noch ein ziemlicher Solaris-Neuling und habe seit einigen Monaten einen OpenSolaris-Server laufen, auf den mit Windows- und Mac-Systemen zugegriffen wird. Und ich habe es bisher nicht geschafft, dass die Kompression mit ZFS richtig funktioniert.
Derzeit habe ich auf meinem System (OpenSolaris 2008.11, Asus P5W DH Deluxe-Mainboard, Core 2 Duo 5300, 4 GB RAM) mit einem RAID-Z1 aus 5 Platten mit je einem 1 TB eine Kompressionsrate von 1.00 bis 1.01. Die Kompression ist also aktiviert, aber der Kompressionsfaktor ist immer in einem niedrigen einstelligen Prozentbereich. Ich habe alle Optionen getestet, ob Standard-lzjb oder gzip, das Ergebnis sieht immer ähnlich schlecht aus. So sehe ich zwar, dass das System mit der Kompression bei gzip-9 deutlich mehr beschäftigt ist als wenn ich mit lzjb komprimiere, aber dann bekomme ich beispielsweise einen Faktor von 1.03 statt 1.02 mit gzip.
Und natürlich versuche ich nicht, bereits komprimierte Dateien noch einmal zu komprimieren und bekomme deshalb einen so schlechten Wert. Den meisten Platz brauchen unkomprimierte Audio- und Videodateien, und auch beim Rest der mehreren 10.000 Dateien handelt es sich um "Standarddateien" wie Textdateien, Bilder, pdfs ...
Als Beispiel habe ich eben einen Ordner mit 600 MB an Audiodateien im .wav-Format einmal mit lzjb und einmal mit gzip-9 komprimiert. Mit lzjb hat er gar nicht komprimiert und einen Faktor von 1.00, mit gzip-9 habe ich eine Kompression von 1.02 erreicht. (In Windows bekomme ich mit WinRAR die halbe Dateigröße)
Es ist mir also ein Rätsel, warum ich die Kompression aktivieren kann, sie dann aber trotzdem nicht funktioniert. Ich habe die Sache mit der Kompression mit RAID-Z1 und RAID-Z2 getestet, auf OS 2008.5 und OS 2008.11, mit Dutzenden file systems und allen Kompressionsoptionen, bekomme aber immer das gleiche Ergebnis. Hat jemand nen Vorschlag, was ich noch versuchen könnte oder woran es liegen könnte?
Danke im Voraus,
Beni
Gespeichert
sonnenblen.de - Das unabhängige Sun User Forum
Kompression funktioniert nicht (richtig)
«
am:
02. Januar 2009, 10:58:58 »
Gespeichert
linus83
Sobl Bachelor
Offline
Beiträge: 144
Re: Kompression funktioniert nicht (richtig)
«
Antworten #1 am:
15. Januar 2009, 08:39:10 »
komprimiert zfs auch nachträglich alles, wenn man auf einen vorhandenen Dateisystem die Kompression anschaltet? Das müsste mal ausprobieren. Wenn ich Zeit habe, werde ich es mal machen, aber leider nur auf USB-Sticks, das sollte aber kein Unterschied sein.
Gruß
Gespeichert
dominik
Sobl Bachelor
Offline
Beiträge: 182
Me, myself & I
Re: Kompression funktioniert nicht (richtig)
«
Antworten #2 am:
15. Januar 2009, 11:45:51 »
linus:
Nein, tut es nicht. Allerdings macht ZFS ein copy-on-write, das heisst wenn Du die Kompression einschaltest, werden alle neu geschriebenen Blöcke komprimiert.
Gruss
Dominik
Gespeichert
erisch
Moderatoren
Sobl Guru
Offline
Beiträge: 758
TurboSPAAAAAG
Re: Kompression funktioniert nicht (richtig)
«
Antworten #3 am:
15. Januar 2009, 13:18:32 »
gzip und Konsorten sind Entropiecodierer, damit lassen sich auch unkomprimierte Video/Audidaten nicht effektiv komprimieren. Dafuer braucht man Kodiersysteme mit Dekorrelationsalgorithmen (JPEG fuer Bilder z.B.). Das laesst sich aber in ne Disk-Compression nicht einbauen.
Wenn RAR das besser macht liegt das vielleicht daran, dass die quasi-intelligent kodieren, allerdings glaube ich nicht, dass das fuer on-the-fly compression geeignet ist (jedes mal 100% CPU last beim Diskzugriff)
Mfg. Erisch
Gespeichert
linus83
Sobl Bachelor
Offline
Beiträge: 144
Re: Kompression funktioniert nicht (richtig)
«
Antworten #4 am:
15. Januar 2009, 14:54:26 »
Also dann kann das "Problem" darin liegen, das die Kompression evtl. zu einen spätern Zeitpunkt eingeschaltet wurde und schon Daten auf den Datenträger waren. Dann braucht es sehr viele neue Blöcke, damit was merkt.
Ich habe zumindest gelesen, dass bis zu einen Faktor von 5 bei log-Files drin ist. Ein Kumpel macht das und ist eigenlich sehr zufrieden. Was er erreicht muss ich mal erfragen. Gut reiner Text lässt sich auch mit einfachen Verfahren recht gut komprimieren.
Gespeichert
sonnenblen.de - Das unabhängige Sun User Forum
Re: Kompression funktioniert nicht (richtig)
«
Antworten #4 am:
15. Januar 2009, 14:54:26 »
Amazon.de Widgets
Gespeichert
erisch
Moderatoren
Sobl Guru
Offline
Beiträge: 758
TurboSPAAAAAG
Re: Kompression funktioniert nicht (richtig)
«
Antworten #5 am:
15. Januar 2009, 15:22:45 »
mein Post bezog sich eher auf den Ursprungs-Post
Gespeichert
Bentsch
Gast
Re: Kompression funktioniert nicht (richtig)
«
Antworten #6 am:
18. Januar 2009, 09:56:39 »
Die Kompression habe ich immer aktiviert, bevor ich die Dateien kopiere, daran kann es also nicht liegen.
erisch: Dass ich bei solchen Dateien keinen Faktor 2,3 oder 5 erwarten kann, weiß ich, aber die Kompression macht ja fast gar nichts, egal bei welchen Dateien. Ich habe wie gesagt nicht nur Audio- und Videodateien im file system, und trotzdem zeigt er mir bei der compressratio einen Wert von 1.00 an. Weil er selbst Dateien, die sich ziemlich gut komprimieren lassen sollten, mit nur wenigen Prozent komprimiert. Gibt es vielleicht so was wie ne gut geeignete Testdatei zum Download, mit der ich meine Kompressionsrate mit jemand anderem vergleichen könnte?
Gespeichert
dominik
Sobl Bachelor
Offline
Beiträge: 182
Me, myself & I
Re: Kompression funktioniert nicht (richtig)
«
Antworten #7 am:
19. Januar 2009, 08:23:15 »
Zitat
root@sbsubs170 # zfs get compressratio zonedata_sbsubs170/ubs175_oradata
NAME PROPERTY VALUE SOURCE
zonedata_sbsubs170/ubs175_oradata compressratio 2.36x -
Das sind die Werte einer Oracle 10 OLTP Datenbank mit eingeschalteter ZFS compression.
Und hier noch das Zone-Root (Sol10U6) der gleichen Installation:
Zitat
root@sbsubs170 # zfs get compressratio zonehome_sbsubs170/ubs175_zone
NAME PROPERTY VALUE SOURCE
zonehome_sbsubs170/ubs175_zone compressratio 1.57x -
Gruss
Dominik
Gespeichert
erisch
Moderatoren
Sobl Guru
Offline
Beiträge: 758
TurboSPAAAAAG
Re: Kompression funktioniert nicht (richtig)
«
Antworten #8 am:
21. Januar 2009, 16:52:13 »
Zitat von: Bentsch am 18. Januar 2009, 09:56:39
Gibt es vielleicht so was wie ne gut geeignete Testdatei zum Download, mit der ich meine Kompressionsrate mit jemand anderem vergleichen könnte?
dd if=/dev/zero of=/path/to/testfile bs=1024 count=1048576
gibt dir ne 1GB grosse Datei voll mit Nullen, laesst sich also prima komprimieren.
Mfg. Erisch
Gespeichert
Bentsch
Gast
Re: Kompression funktioniert nicht (richtig)
«
Antworten #9 am:
02. Februar 2009, 08:50:36 »
erisch, danke für den Tipp. Ich habe für diesen Test drei neue Dateisysteme erstellt, ein unkomprimiertes, eines mit der Standardkompression und eines mit gzip-5. Mit zfs get compression bekomme ich entsprechend die Werte compression=off, "on" und "gzip". Ich habe die Testdatei im unkomprimierten Dateisystem erstellt und danach in die zwei anderen kopiert. Und jeweils zeigt er mir eine compressratio von 1.00 an ...
Gespeichert
sonnenblen.de - Das unabhängige Sun User Forum
Re: Kompression funktioniert nicht (richtig)
«
Antworten #9 am:
02. Februar 2009, 08:50:36 »
Gespeichert
dominik
Sobl Bachelor
Offline
Beiträge: 182
Me, myself & I
Re: Kompression funktioniert nicht (richtig)
«
Antworten #10 am:
02. Februar 2009, 09:01:15 »
Bentsch:
Hast auch was reinkopiert? Nur eine dumme Frage, weil ohne was reinzukopieren zeigt er immer 1.00x an
Zitat
# zfs create tank/test
# zfs set compression=on tank/test
# zfs get compression tank/test
NAME PROPERTY VALUE SOURCE
tank/test compression on local
# zfs get compressratio tank/test
NAME PROPERTY VALUE SOURCE
tank/test compressratio 1.00x -
Gruss
Dominik
Gespeichert
Bentsch
Gast
Re: Kompression funktioniert nicht (richtig)
«
Antworten #11 am:
02. Februar 2009, 12:42:34 »
Keine dumme, eine absolut berechtigte Frage :-) Ja, ich habe die Testdatei in jedes Filesystem einmal kopiert. Hier noch mal die Schritte dieses Tests:
1. Drei Dateisysteme erstellt, eines ohne Kompression, eines mit Standardkompression, eines mit gzip. zfs get compression zeigt die richtigen Werte, also off, on und gzip.
2. Die Testdatei mit dem Befehl dd if=/dev/zero of=/path/to/testfile bs=1024 count=1048576 im unkomprimierten Filesystem erstellt.
3. Von dort per Kopieren und Einfügen in die anderen zwei Dateisysteme eingefügt
4. zfs get compressratio zeigt für alle drei Dateisystem 1.00x an
Gespeichert
dominik
Sobl Bachelor
Offline
Beiträge: 182
Me, myself & I
Re: Kompression funktioniert nicht (richtig)
«
Antworten #12 am:
02. Februar 2009, 14:17:00 »
Seltsame Sache. Kann das hier so nachvollziehen (Solaris 10 Update 6):
Zitat
# dd if=/dev/zero of=/tmp/test.dmp bs=1024 count=1048576
1048576+0 records in
1048576+0 records out
# cp /tmp/test.dmp /tank/test
# zfs get compressratio tank/test
NAME PROPERTY VALUE SOURCE
# ls -al
total 7
drwxr-xr-x 2 root root 3 Feb 2 14:10 .
drwxr-xr-x 3 root root 3 Feb 2 08:58 ..
-rw-r--r-- 1 root root 1073741824 Feb 2 14:10 test.dmp
root@sbsubs180 # du -sh
2K .
# tar cf test.tar /usr/openwin
# zfs get compressratio tank/test
NAME PROPERTY VALUE SOURCE
tank/test compressratio 1.28x -
# rm test.tar
# zfs get compressratio tank/test
NAME PROPERTY VALUE SOURCE
tank/test compressratio 1.00x -
Vielleicht liegt es daran, dass das leere File so stark komprimiert werden kann, dass die Anzeige "unsinnige" Werte ausgeben würde? Evtl. kann da ein Blick in den Sourcecode helfen.
Gruss
Dominik
Gespeichert
batschul
Sobl Newbie
Offline
Beiträge: 21
Ich mag keine Signaturen!
Re: Kompression funktioniert nicht (richtig)
«
Antworten #13 am:
03. Februar 2009, 18:46:30 »
Zitat von: Bentsch am 02. Februar 2009, 12:42:34
Keine dumme, eine absolut berechtigte Frage :-) Ja, ich habe die Testdatei in jedes Filesystem einmal kopiert. Hier noch mal die Schritte dieses Tests:
1. Drei Dateisysteme erstellt, eines ohne Kompression, eines mit Standardkompression, eines mit gzip. zfs get compression zeigt die richtigen Werte, also off, on und gzip.
2. Die Testdatei mit dem Befehl dd if=/dev/zero of=/path/to/testfile bs=1024 count=1048576 im unkomprimierten Filesystem erstellt.
3. Von dort per Kopieren und Einfügen in die anderen zwei Dateisysteme eingefügt
4. zfs get compressratio zeigt für alle drei Dateisystem 1.00x an
pfiffiges beispiel ;-), /dev/zero ist hier der schluessel
also wenn kompression nicht angeschaltet ist wird ZFS all die bloecke fuer die 0en allokieren und schreiben
aber, wenn kompression angeschaltet ist (per default nur fuer meta daten an) dann ist mit diesem
beispiel alles anders.
Die komprimierung findet im SPA (storage pool allocator) statt, in der write I/O pipeline,
dh. wir nehmen den write, komprimieren den block and da alles 0en sind, kehren wir sofort
wieder zurueck mit einem zero block pointer (kein block allociert/zu schreiben),
dies passiert fuer alle bloecke in dieser 'testfile' datei.
Das resultat ist das wir eine dnode fuer die datei ondisk anlegen welche keine data blocks hat.
die "groesse" der datei ist im data teil znode_phys innerhalb der dnode gespeichert.
hth
frankB
Gespeichert
Kaurik
Global Moderator
Sobl Guru
Offline
Beiträge: 858
Holidays in the Sun
Re: Kompression funktioniert nicht (richtig)
«
Antworten #14 am:
03. Februar 2009, 21:09:59 »
Da ich zwar überhaupt keine Ahnung von ZFS habe, aber neugierig bin, möchte ich mal was fragen:
Heisst das, dass die Kompression gar nicht stattfindet, weil das File gar nicht geschrieben, sondern lediglich der Platz allokiert wird?
Claus
Gespeichert
Computer sind doof. Aber sie schaffen Arbeit.
Seiten: [
1
]
2
Nach oben
Drucken
« vorheriges
nächstes »
Gehe zu:
Bitte wählen Sie ein Ziel:
-----------------------------
Allgemein
-----------------------------
=> Allgemeines
=> sonnenblen.de Content Wettbewerb 2006
=> Neuvorstellungen
=> News
=> Kritik
-----------------------------
Hardware
-----------------------------
=> Sun SPARC
=> Sun x86
=> Sun
=> Andere
=> Hardware-Tips
-----------------------------
Betriebssysteme
-----------------------------
=> Solaris
=> Solaris/x86 und OpenSolaris
=> Linux
=> NetBSD
=> FreeBSD
=> Sonstige
=> Betriebssystem-Tips
-----------------------------
Software
-----------------------------
=> Vorschlag
=> Datenbanken
=> Speichermanagement
=> Freeware
=> Programmieren, Kompilieren
-----------------------------
Marktplatz
-----------------------------
=> Wertanfragen
=> Jobbörse
-----------------------------
Off-Topic
-----------------------------
=> OT Diskussionen
=> Computer-Humor
Lade...