Quelle est la manière la plus compacte de stocker les diffs dans une database?

Je veux mettre en œuvre quelque chose de similaire à l'historique de révision de Wikimedia? Quelles seraient les meilleures fonctions / bibliothèques / extensions / algorithms PHP à utiliser?

J'aimerais que les diffs soient aussi compacts que possible, mais je suis content de limiter le fait de ne montrer que la différence entre chaque révision et son freres et ne pouvoir rétrograder une seule révision à la fois.

Dans certains cas, seuls quelques caractères peuvent changer, alors que dans d'autres cas, toute la string pourrait changer, alors je suis désireuse de comprendre si certaines techniques sont meilleures pour les petits changements que pour les grands, et si, dans certains cas, il est plus efficace de simplement stocker des copys complètes.

Le fait de soutenir l'set du système avec quelque chose comme Git ou SVN semble un peu extrême, et je ne veux vraiment pas stocker de files sur le disque.