GZIP Komprimierung Aktivieren?

Grave-Digger

Banned
Registriert
Juni 2005
Beiträge
253
Hallo,

ich würde für mein Newsscript gerne die Gzip Komprimierung verwenden damit meine Datenbank nicht alzugroß wird.

Ist das irgendwie möglich? In meinem PHP Buch steht darüber nichts :-(

Was muss ich beachten? :king:
 
PHP:
<?php
if(extension_loaded('zlib')) {
    ob_start("ob_gzhandler");
} else {
    ob_start();
}

Eventuell noch kucken ob der client komprimierten Inhalt unterstützt.

Edit: Sorry falsch gelesen - du willst deine Datenbank verkleinern ... ... blödsinn. Ich denke nicht, dass du mehr als ein paar hundert Kilobyte reinen Text in der DB haben wirst. Also das was du vor hast ist sicher keine gute Lösung platz zu sparen.
 
Zuletzt bearbeitet:
ICH HAB JETZT SCHON 50 KB REINEN TEXT IN DER DATENBANK ;) DAS LIEGT AN MEINEM NEWSSCRIPT... wegen den ganzen HTML zeichen

Ich inserte ja Teilweise direkt HTML code und deswegen isse sogroß... :p :freak:

// EDIT

ich habs mal mit:

$compressed = gzcompress($blabalbal, 9); versucht un in datenbank eingefügt

dann macht er leider keinen insert mehr :-( woran könnte das liegen?
 
Zuletzt bearbeitet:
Also 50kb sind nichts. Wenn deine Datenbank mal 100MB hat dann kannst du dir anfangen gedanken darüber langsam zu machen.

Ich rate dir weiterhin davon ab, den Text zu komprimieren, aber wenn du es unbedingt willst - mach es doch gleich in der Datenbank:
Code:
INSERT INTO foo (bar) VALUES ( COMPRESS("String") );

SELECT UNCOMPRESS(bar) FROM foo;

Edit: Ich bitte um eine Gedenkminute für die die verschwendete Rechenzeit.
 
Zuletzt bearbeitet:
Hallo,

ich schließe mich da Enigma vollkommen an. 50KB sind ja wirklich noch als nichts zu betrachten. ;) Auch Datenbanken mit mehreren GB sind für MySQL kein Problem.
Von einer Kompremierung der Daten würde ich vollkommen abraten.
Die dabei hinzukommende Rechenzeit steht in keinem Verhältnis zur Platzersparnis.
Da es sich ja auch noch um einen News-Script handelt soll, mag ich mir erst gar nicht vorstellen, wie recourcenfressend sich dann eine Suchabfrage auf die Datenbank auswirkt. ;)

MfG mh1001
 
Mal angenommen ich komprimier 100%. Wie würde sich das auf die Rechenzeit auswirken? :D

Bzw. Wird meine Db auch nich langsamer wennse mal so 40- 50 mb hat? :evillol:
 
Datenbanken sind dafür ausgelegt, so grosse Daten zu verarbeiten.
Da sie aber meistens eher CPU statt Festplattenlastig sind würde ich prsönlich kompression vermeiden, ausser du willst 10 MB grosse BMP Dateien oder so speichern, da du die CPU sonst noch mehr belastest.
Wir haben oft Datenkbanken von Kunden mit mehreren GB, die Abfragen laufen rasend schnell.
DU musst nur deine Queries so anpassen, dass wenn du was abrufst nicht die ganze Datenbank durch den PHP Interpretor gejagt werden muss, aber ich denke mal, dass das ja klar ist :p

MfG,
Baumi
 
Also wie ich weis ist da ein dual athlon xp 2800 drinne un 1 gb ram :D
 
Schreib ein Testprogramm!
100.000 inserts mit und ohne Kompression, dann haste vl nen Vergleich!
MfG,
Baumi
 
ähm und wie bitteschön??? 100000 insert befehle auf einen schlag ?! Oder Nacheinander mit ner While schleife ?! :lol:
 
Hallo,

erstelle einfach eine Schleife und gerneriere dort zum Beispiel einfach Zufallswerte einer bestimmten Länge und schreibe diese in eine Datenbank.
100.000 müssen es natürlich nicht gleich sein. ;)
Ermittle dann einfach vor der Schleife mit microtime() die entsprechende Zeit und ziehe diese dann von der aktuellen Zeit nach durchlauf der Schleife ab. Wenn du dies dann einmal mit Komprimierung und einmal ohne durchlaufen lässt hast du einen direkten Vergleich bzgl. der INSERT-Zeit. ;)

MfG mh1001
 
MOINSEN ERSTMA,

ufffff, jetzt muss ich erstma wach werden. Dann guck mich mal :p
 
Zurück
Oben