TaffyDB – Datenbank für JavaScript

In vielen Fällen läuft es heutzutage so, das Daten in Tabellen zum Beispiel nicht mehr direkt eingesetzt, sondern mittels AJAX nachgeladen werden. Gerade bei großen Datenmengen macht das durchaus Sinn, da man nicht mehr die gesamte Seite neu laden muss, sondern nur noch ein recht kleines Objekt das zum Beispiel bei einer Paginierung die neuen Daten enthält. Dieser Konstrukt wird bereits häufig umgesetzt und zwar auf eine ziemlich komische Art & Weise: jQuery ruft mittels Ajax eine PHP-Seite auf, die MySQL aufruft und dann ein JSON-Objekt zurückgibt. Bei einem solchen Konstrukt gerät man sehr schnell an den Punkt, wo das Nachladen von Daten mehr Arbeit macht, als die direkte Anzeige der Daten.

Screenshot der TaffyDB Homepage

Der Datenbankserver TaffyDB ist darauf ausgerichtet mittels AJAX direkt mit JavaScript zu sprechen, also kein PHP, kein MySQL. Dafür spricht es zu 100% JSON, ist furchtbar schnell und für viele Anwendungen ausreichend. Natürlich hat MySQL auch seine Vorzüge, aber man könnte zum Beispiel auch TaffDB als Caching-Faktor einsetzen, indem ein in PHP geschriebenes Backend sowohl in MySQL als auch in TaffyDB speichert. Vielleicht ein wenig Overkill, aber durchaus ein Performance-Faktor. Das einfügen von Daten in TaffyDB ist dabei übrigens recht einfach:

// Create DB and fill it with records
var friends = TAFFY([
	{"id":1,"gender":"M","first":"John","last":"Smith","city":"Seattle, WA","status":"Active"},
	{"id":2,"gender":"F","first":"Kelly","last":"Ruth","city":"Dallas, TX","status":"Active"},
	{"id":3,"gender":"M","first":"Jeff","last":"Stevenson","city":"Washington, D.C.","status":"Active"},
	{"id":4,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"}	
]);

Ebenso wie das Abfragen von Daten:

// Find all the friends in Seattle
friends({city:"Seattle, WA"});
 
// Find John Smith, by ID
friends({id:1});
 
// Find John Smith, by Name
friends({first:"John",last:"Smith"});

An der Stelle stellt sich natürlich die Frage nach der Stabilität des Servers, die jeder für sich selbst beantworten sollte. Auch stellt sich die Frage nach MongoDB, aber für wirklich kleine Sachen lässt sich TaffyDB sicherlich gut einsetzen, und wer weiß was die Zukunft für das kleine Open Source Tool noch bringt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.