Am Mittwoch, 5. Januar 2005 09:20 schrieb Florian Baumann:
Daniel Arnold wrote:
Durch die Umstellung auf Mediawiki 1.4 wurde die Datenbank auf 15% des vorigen Umfangs komprimiert (vorher wurde aus Gründen der Einfachheit und Performance nichts komprimiert), aufgrund des exponentiellen Wachstums bedeutet das jedoch nur eine Verschnaufpause von nur einen halben Jahr, bevor wir wieder das gleiche Problem haben.
Wird in der 1.4 eigentlich immer noch in der History von jeder Version der vollständige Artikel gespeichert?
Dieser Punkt wurde auch von Tim und Brion in ihrem Vortrag angesprochen. In 1.3 wurde in der Tat nicht der Diff, sondern stets immer der gesammte Text einer Version abgespeichert (Einfachheit). In 1.4 verfährt man prinzipiell immer noch genauso. Aber: in 1.4 werden 20 aufeinander folgende Versionen immer zusammen komprimiert, d.h. gleiche Textpasssagen werden eh sehr gut komprimiert. Der Unterschied ob ich jetzt 20 aufeinander folgende Diffs komprimiere oder die entsprechenden 20 kompletten Versionen ist gering (wurde ausprobiert, genauso wie bzip2). Diffs wiederum bedeuten einen Extraaschritt beim Erzeugen des Textes (Zusammenbasteln des Textes aus den einzelnen Diffs, was der Performance auch nicht so zuträglich ist, IMHO).
Das Problem bei Wikipedia ist vor allem, dass Diffs garnicht so viel bringen wie bei Software im Versionskontrollsystem CVS, da die Artikel mit der größten Versionsgeschichte meist aufgrund Editwars entstehen und bei einem Editwar gibt es häufig radikale Löschungen und Einfügungen großer Textpassagen, bis hin zum Extrem des kompletten Leerens und Wiederaufüllens eines Artikels. D.h. Diff ist zwar besser als alle Versionen unkomprimiert einzelnen zu speichern aber doch sehr suboptimal. Jemand aus dem Publikum hatte einen anderen Diff-Algorithmus namens X-Delta vorgeschlagen (und die Entwickler meinten dann, dass sie sich den Tipp mal angucken würden). Ich habe jedoch keine Ahnung was X-Delta genau ist.
Grüße, Daniel Arnold (Arnomane)