Database Reference
In-Depth Information
Version 2.0: Datenbanken ( create/deleteDatabase , getAllDatabases , setDatabase , replica-
te , compact ), Dokumente ( get/put inkl. Update, copy , getAllDocs[iclude_docs, limit, star-
tKey, endKey, keyA] , setAttachment , bulk ) und allgemeine Funktionen ( setTimeout , gene-
rateIDs ).
PHP CouchDB Extension
Diese Extension ist als Quelltext erhältlich und muss per PECL, phpize oder direkt in das
PHP kompiliert werden [10]. Das Projekt ist immer noch als „experimental“ bezeichnet
und somit nicht für den produktiven Einsatz geeignet. Die Dokumentation besteht aus eini-
gen Beispielen, die leicht verständlich sind, sich aber im Kern nicht von anderen grundle-
genden Funktionen der hier vorgestellten Wrapper unterscheidet.
Fazit
Das Motto der CouchDB ist „relax“, und dieses Motto sollte man ernst nehmen. Die hier
vorgestellten Tools für die Verwendung von CouchDB vereinfachen in erster Linie die
Kommunikation per GET/PUT. Angenehm wird es, wenn ein Wrapper beim Speichern ei-
nes Dokuments dieses auf Updates prüft, oder wenn - wie im Fall von PHPillow - View-
Dokumente in PHP definiert werden können. Der Vorteil von CouchDB besteht darin,
so wenig Funktionen wie nötig bereitzustellen und dem Anwendungsprogrammierer freie
Hand zu lassen. Ob ein Wrapper, der den Programmierer dann wieder auf vorgegebene
Funktionen festlegt, da der richtige Weg ist, muss jeder für sich entscheiden. Die eigentli-
che Kraft der CouchDB steckt in den Views und in den hier nicht angesprochenen weiteren
Möglichkeiten, Ergebnisse zu Transformieren (Lists, Shows).
Die hier gezeigten Wrapper sind leicht zu verstehen, und auf der Heft-CD finden Sie eine
Menge Beispiele zum Nachvollziehen. Ihre Energie sollten Sie auf das Entwickeln in der
CouchDB stecken. JavaScript ist als Standard implementiert, allerdings kann jede Sprache,
die auf dem Server läuft und über die Standardkonsole kommuniziert, eingebunden wer-
den. So ist es möglich, alle Map/Reduce-Funktionen in PHP zu programmieren.
CouchDB sollte man nicht nur als Datenbankmanagementsystem sehen, sondern als Öko-
system von Servern, Daten und Anwendungen. So ist es möglich, gänzlich ohne weitere
serverseitige Sprachen komplette Anwendungen in einer CouchDB zu entwickeln. Ob Da-
tendokumente, Designdokumente, HTML-Templates oder JPG-Attachments, alles kann in
einer CouchDB gespeichert und damit auch auf andere Datenbanken repliziert werden. So
erreicht man eine schnelle und sichere Verteilung der Anwendung auf viele Server.
Links & Literatur
Search WWH ::




Custom Search