: Oliver Kurowski
: CouchDB mit PHP
: entwickler.press
: 9783868026078
: 1
: CHF 17.10
:
: Informatik
: German
: 240
: kein Kopierschutz/DRM
: PC/MAC/eReader/Tablet
: PDF/ePUB
Das Thema NoSQL ist durch Vertreter wie CouchDB auch für den produktiven Masseneinsatz attraktiv geworden. Beim Einstieg in NoSQL müssen Datenbankentwickler herkömmlicher relationaler Datenbanken viele ihrer Gewohnheiten und Denkweisen ändern. CouchDB belohnt sie dafür mit einer Fülle an neuen und ungeahnten Möglichkeiten, die weit über die reine Datenhaltung hinausgehen. Dieses Buch führt schrittweise in das Thema NoSQL ein und erläutert Vor- und Nachteile dieses Schemas. In unterhaltsamer Weise lernen Sie in ausführlichen Kapiteln die Funktionen der CouchDB schrittweise kennen. Nicht nur die reine Syntax, auch die Denkweise hinter den Funktionen sowie mögliche Einsatzszenarien werden dargestellt und anhand vieler Beispiele erläutert. Zusätzlich zu den allgemeingültigen Informationen wird Kapitel für Kapitel ein kleines PHP-Framework für die CouchDB entwickelt und in einem Praxisteil angewandt. Da alle Beispiele kommentiert sind, können sie problemlos auch für andere Programmiersprachen angepasst werden.

Oliver Kurowski, Diplominformatiker (FH), erlernte das Programmieren mit 15 Jahren auf seinem Apple II. Im Jahre 1998 begann er mit den ersten Programmierungen von Datenbanken für die Automobilbranche, der er bis heute in einer innovativen produzierenden Firma treu geblieben ist. Verschiedenste Herausforderungen auf diesem Gebiet verlangten schon immer besondere Lösungen und manchmal neue Wege, sodass es nur eine Frage der Zeit war, wann auch der NoSQL-Funke übersprang. Oliver Kurowski ist vielleicht nicht der typische Agenturprogrammierer, sondern vereint die Liebe zum Programmieren mit dem praktischen Wissen aus der Industrie, das er in diesem Buch einfließen lässt. Er ist Autor von Fachartikeln und lebt in Berlin.

2 Voraussetzungen

Was braucht man nun alles, um sich mit dem ThemaCouchDBmit PHP auseinanderzusetzen? Nun, in erster Linie CouchDB und PHP. Dieses Buch ist hauptsächlich für PHP-Entwickler geschrieben worden (auch wenn die Beispiele schnell an andere Sprachen angepasst werden können), sodass ich davon ausgehe, dass Sie ein lauffähiges PHP 5.3 samt Webserver (Apache o. ä.) auf Ihrem Computer installiert haben. In CouchDB ist ein HTTP-Server integriert, der die Anfragen an die CouchDB entgegennimmt und ausgibt. Auch ein Administrationstool mit grafischer Oberfläche ist vorhanden, es wird also kein extra HTTP-Server benötigt. Allerdings schreiben wir Beispielcode in PHP, der die Ergebnisse der Abfragen in dem Browser ausgibt. Und für diese Beispiele brauchen wir den Webserver, den ich als bereits installiert und laufend voraussetze. Der Webserver muss dabei nicht auf dem gleichen System wie die CouchDB installiert sein, sondern dort, wo Sie die Beispielcodes testen möchten.

Natürlich brauchen Sie eine CouchDB, mit der Sie die Beispiele ausprobieren können. Im folgenden Abschnitt finden Sie mehrere Möglichkeiten, an eine lauffähige Version zu kommen.

Zu guter Letzt ist es auch sehr angenehm, einige schnelle Aufgaben direkt in der Kommandozeile Ihres Betriebssystems ausführen zu können. Um HTTP-Anfragen an eine Adresse zu schicken, gibt es den Befehlcurl, der bei Linux und OS X bereits vorhanden ist. Sollte es auf Ihrem System fehlen, so kann es mit(sudo) apt-get install curl in den meisten Distributionen hinzugefügt werden. Unter Windows musscurl nachträglich installiert werden, die Informationen dazu gibt es im letzten Abschnitt dieses Kapitels.

Hier in Kurzform noch einmal alle Vorbedingungen für die Beispiele in diesem Buch:

  • PHP 5.3 mit aktivierterlibcurl
  • CouchDB, mind. Version 1.1
  • Webserver (Apache o. ä)
  • curl als Kommandozeilentool (Installation nur bei Windows nötig)

2.1 Installation der CouchDB

Das Hauptmotto von CouchDB ist„relax“, und genau nach diesem Motto werde ich auch die Installationen in diesem Buch beschreiben. Unterhttp://wiki.apache.org/couchdb/Installation finden Sie ausführliche Informationen rund um die Installation von CouchDB.

Prinzipiell besteht immer die Möglichkeit, CouchDB durch das Kompilieren der Quellcodes auf dem eigenen System zu installieren. Dabei sind die Abhängigkeiten von Erlang, Spidermonkey als JavaScript-Engine und CouchDB zu beachten. Wer Spaß am manuellen Installieren der Quellen hat, wird mit seiner Suchmaschine schnell fündig.

Es bestehen für die wichtigsten Systeme (der PHP-Entwickler) auch bereits vorgefertigte Binaries, also Pakete zur einfachen Installation. Das sind nicht immer die tagesaktuellen Versionen, aber für den Einstieg in das Thema und alle Kapitel in diesem Buch völlig ausreichend. Schelten Sie mich, aber meiner Meinung nach sollte die Einstiegshürde für ein neues Thema so gering wie möglich sein. Sind Sie erst einmal vom CouchDB-Virus infiziert, haben Sie durch die aktive Community und zahlreiche Informationen im Internet die Möglichkeit, sehr tief in das Thema Installation einzusteigen. Daher fange ich mit der leichtesten Möglichkeit an, der kostenlosen Nutzung eines CouchDB Hosters.

2.1.1 CouchDB als Service

Die einfachste Möglichkeit, sofort loszulegen, ist die Nutzung von Hosting-Diensten für die CouchDB. Erfreulicherweise gibt es auch kostenlose Angebote für kleinere Aufgaben. Bei dieser Möglichkeit ist die Adresse der Datenbank dann der URL des Dienstes (und Ihrer Instanz) anstelle des lokalen Servers. Auch ist der Port hier nicht 5984, sondern meist Port 80 (Standard HTTP).

Ans Herz legen kann ich Ihnen zwei Anbieter, deren Mitarbeiter auch aktiv in der Community tätig sind:

1. Iris Couch

Iris Couch ist aus dem Couchbase-Projekt1 entstanden und war zwischenzeitlich auch unter CouchOne bekannt. Die Hauptseite von Iris Couch2 besagt: Wer seinen Namen buchstabieren kann, kann auch eine CouchDB zum Laufen bringen. Gesagt, getan: nach Klick aufSign Up Now kommen wir auf eine Seite