Sie sind hier
E-Book

Web-Applikationen entwickeln mit NoSQL

Das Buch für Datenbank-Einsteiger und Profis!

AutorClemens Gull
VerlagFranzis
Erscheinungsjahr2012
Seitenanzahl360 Seiten
ISBN9783645201049
FormatePUB/PDF
KopierschutzWasserzeichen/DRM
GerätePC/MAC/eReader/Tablet
Preis19,99 EUR
Ohne Datenbanken geht nichts mehr im Web! Aber nach einer Phase fast uneingeschränkter Herrschaft der SQL-basierten Datenbanken findet im Moment ein Wandel in der Landschaft der Web-Applikationen statt. Teil dieses Wandels ist die vermehrte Verwendung von NoSQL-Datenbanken. NoSQL-Datenbanken sind nicht relational, können auf verteilten Systemen liegen und verzichten meist auf ACID-Eigenschaften (atomicity, consistency, isolation, durability). Die Vorteile liegen in einer besseren Skalierbarkeit und besserer Performance bei hoher Datenlast bzw. vielen Transaktionen. Für den gelungenen Einstieg wird hier mit CouchDB der angesagteste Vertreter aus der Riege der NoSQLDatenbanken verwendet.

Clemens Gull studierte Informationstechnologie und Systemmanagement. Er arbeitete als Programmierer und Netzwerkadministrator unter anderem für die Salzburger Sparkasse. Heute leitet er das Webdesignunternehmen Byte Brothers, darüber hinaus ist Gull als Dozent für die Fachhochschule Salzburg und andere Institute aktiv. Sein Weblog 'Guru 2.0' zählt zu den meistgelesenen deutschsprachigen Blogs zum Thema Internetprogrammierung.

Kaufen Sie hier:

Horizontale Tabs

Leseprobe

2  Installation

In diesem Kapitel bereiten Sie Ihren Computer für den Einsatz einer NoSQL-Datenbank vor, in unserem Fall Apache CouchDB . Wählen Sie bitte den für Ihr Betriebssystem notwendigen Abschnitt aus, und arbeiten Sie ihn durch. Als Voraussetzung sind für beide beschriebenen Versionen (Mac OS X und Windows) ein fehlerfrei laufendes Betriebssystem und eine funktionierende Internetverbindung notwendig.

Falls Sie als Betriebssystem eine der vielen Unix-Varianten (wie z. B. Linux) verwenden, können Sie den Abschnitt für Mac OS X durcharbeiten. Da wir beim Mac mit dem Terminalfenster auf Shell-Ebene arbeiten, ist der Unterschied nicht groß.

2.1  Mac OS X vorbereiten

Die Entwicklungsumgebung Xcode installieren

Der erste Schritt für die Installation von CouchDB ist das Installieren der Entwicklungsumgebung Xcode. Dazu benötigen Sie eventuell die originale Installations-DVD des Systems. Sobald Sie sie eingelegt haben, wählen Sie den Punkt Optionale Installationspakete mit einem Doppelklick aus. Danach aktivieren Sie das Paket Xcode.mpkg mit einem Doppelklick. Nun folgen Sie den Installationsanweisungen und installieren Xcode.

Bild 2.1  Xcode installieren

Alternativ können Sie Xcode auch aus dem AppStore [1] herunterladen. Falls Sie registrierter Entwickler sind, steht Ihnen der Download kostenlos im Developer-Center[2] zur Verfügung.

MacPorts installieren

Mit dieser freien Software ist es sehr einfach, Open-Source-Software auf ein Mac-OS-X-System zu installieren. Da Sie einige Abhängigkeiten für die CouchDB installieren müssen, verwenden wir diese Software zur Vereinfachung der kommenden Aufgaben. Zuerst können Sie sich das Paket MacPorts [3] herunterladen und danach mit einem Doppelklick die Installation beginnen. Gehen Sie schrittweise durch den Assistenten, um die Software in Ihr System zu integrieren. Es sind keine besonderen Einstellungen vorzunehmen, und Sie können beruhigt die Standardvorgaben übernehmen.

Das Terminalfenster

Da die weitere Installation auf Mac OS X im Terminal mit dem root- Benutzer erfolgen muss, benötigen Sie das Passwort für diesen Benutzer. Haben Sie dieses noch nicht freigeschaltet, folgen Sie bitte der Anleitung in der Apple Knowledge Base [4] . Achten Sie bitte darauf, den für Ihre Version (10.5 beziehungsweise 10.6) entsprechenden Abschnitt durchzuarbeiten.

Als Erstes öffnen Sie ein Terminalfenster. Sie finden es in Programme, Dienstprogramme.

Bild 2.2  Das Terminalfenster

Nun geben Sie den Befehl su ein und bestätigen ihn mit [Return]. Es folgt die Eingabe des Passworts, das Sie ebenfalls mit [Return] bestätigen.

Bild 2.3  Terminal mit angemeldetem root-Benutzer

MacPorts überprüfen

Falls Sie MacPorts bereits installiert haben, können Sie die aktuelle Installation überprüfen und auch auf die neueste Version aktualisieren. Geben Sie dazu den Befehl port selfupdate ein, gefolgt von [Return].

Bild 2.4  Installation von MacPorts überprüfen

CouchDB installieren

Der nächste Schritt ist die Installation der NoSQL-Datenbank Apache CouchDB . Wir benutzen dafür MacPorts mit dem Befehl port install couchdb und einem [Return].

Je nachdem, wie Ihr System installiert ist und/oder wie alt es bereits ist, werden die notwendigen Abhängigkeiten – Dateien, die für das fehlerfreie Funktionieren notwendig sind – vom World Wide Web geladen und installiert. Sie dürfen nicht überrascht sein, denn je nachdem, wie schnell Ihre Internetverbindung, wie schnell Ihr Computer und wie groß die Anzahl der abhängigen Dateien sind, kann dieser Vorgang mehr als zwei Stunden in Anspruch nehmen.

Bild 2.5  Ende der Installation von CouchDB

Nun sind zwar alle Abhängigkeiten installiert, aber leider aktualisiert MacPorts vorhandene Dateien nicht. Dies müssen Sie manuell mit dem Befehl port upgrade couchdb durchführen, gefolgt von [Return].

Jetzt können Sie CouchDB mit dem Befehl couchdb –b und [Return] starten. Prüfen Sie mit folgendem Befehl, ob eine Instanz der CouchDB läuft. Normalerweise gibt der Befehl curl http://127.0.0.1:5984 und [Return] eine Willkommensnachricht aus.

Falls Sie eine Fehlermeldung erhalten, liegt das normalerweise an einer falschen Einstellung von MacPorts. Durch diesen Fehler wird Erlang – eine abhängige Programmiersprache – ohne SSL erstellt. Das lässt sich leicht beheben, indem Sie Erlang mit dem Befehl port install erlang +ssl, gefolgt von [Return], nochmals neu erstellen und installieren. Nach der erfolgreichen Installation, sollten Sie Folgendes im Terminalfenster sehen:

Bild 2.6  Erlang wurde mit SSL installiert

Nun können Sie wie oben beschrieben den Datenbankserver starten und mit dem curl -Befehl nochmals die Funktion der CouchDB überprüfen. Sie sollten ein ähnliches Bild wie in der folgenden Abbildung dargestellt sehen.

Bild 2.7  Überprüfen von CouchDB mit dem curl-Befehl

CouchDB automatisch starten

Falls der CouchDB-Server noch läuft, halten Sie ihn mit couchdb –d und [Return] an.

Nun geben Sie launchctl load -w /opt/local/Library/LaunchDaemons/org.apache.couchdb.plist ein und bestätigen den Befehl mit [Return]. Ab jetzt wird der CouchDB-Server automatisch beim Start des Betriebssystems mit gestartet. Dies ist gerade während der Arbeit mit diesem Buch praktisch. Wollen Sie den automatischen Start wieder entfernen, dann verwenden Sie den folgenden Befehl: launchctl unload -w /opt/local/Library/LaunchDaemons/org.apache.couchdb.plist

Jetzt müssen Sie den Server nur einmal starten, indem Sie Ihren Computer neu starten oder den Befehl launchctl start org.apache.couchdb eingeben, gefolgt von [Return].

Als Letztes prüfen wir CouchDB im Browser. Dazu geben Sie in der Adresszeile http://127.0.0.1:5984/_utils ein. In der Folge sehen Sie das Verwaltungsinterface Futon im Browserfenster.

Bild 2.8  Das Verwaltungsinterface von CouchDB im Browser

CouchApp installieren

Nun installieren wir den zweiten notwendigen Teil der CouchDB, die CouchApp. Dazu prüfen Sie, ob die aktuelle Version von distributed install verfügbar ist. Im Terminalfenster geben Sie

curl -O http://python-distribute.org/

distribute_setup.py und [Return] ein.

Sie sollten jetzt die Ausgabe wie in der folgenden Abbildung dargestellt im Terminalfenster sehen.

Bild 2.9  Ausgabe des Befehls cURL

Nun können Sie distributed install auf das System installieren. Dazu ist folgender Befehl notwendig: python distribute_setup.py [Return]. Auch hier erhalten Sie eine komplette Übersicht des Installationsprozesses als Ausgabe im Terminalfenster.

Bild 2.10  Ausgabe der Installation von distributed install

Als Nächstes müssen Sie den Easy-Installer auf Ihr System installieren. Dazu geben Sie easy_install pip und [Return] ein. Auch dieser Befehl zeigt durch die Ausgabe der Log-Einträge den vollständigen Installationsvorgang im...

Blick ins Buch

Weitere E-Books zum Thema: Internet - Intranet - Webdesign - Security

Internet für Psychologen

E-Book Internet für Psychologen
Format: PDF

Das Internet kurz zu erklären und gleichzeitig einen aktuellen Überblick über psychologische Themen und Forschungsschwerpunkte zu geben, ist wohl ein hoffnungsloses Unterfangen. Zu…

Internet für Psychologen

E-Book Internet für Psychologen
Format: PDF

Das Internet kurz zu erklären und gleichzeitig einen aktuellen Überblick über psychologische Themen und Forschungsschwerpunkte zu geben, ist wohl ein hoffnungsloses Unterfangen. Zu…

Internet für Psychologen

E-Book Internet für Psychologen
Format: PDF

Das Internet kurz zu erklären und gleichzeitig einen aktuellen Überblick über psychologische Themen und Forschungsschwerpunkte zu geben, ist wohl ein hoffnungsloses Unterfangen. Zu…

Internet für Psychologen

E-Book Internet für Psychologen
Format: PDF

Das Internet kurz zu erklären und gleichzeitig einen aktuellen Überblick über psychologische Themen und Forschungsschwerpunkte zu geben, ist wohl ein hoffnungsloses Unterfangen. Zu…

Texten für das Web

E-Book Texten für das Web
Erfolgreich werben, erfolgreich verkaufen Format: PDF

Dieses Buch bietet das nötige Handwerkszeug, um die Qualität der eigenen Web-Texte zu verbessern bzw. eingekaufte Texte sicherer beurteilen zu können. Es liefert klare Kriterien für die Textanalyse,…

Texten für das Web

E-Book Texten für das Web
Erfolgreich werben, erfolgreich verkaufen Format: PDF

Dieses Buch bietet das nötige Handwerkszeug, um die Qualität der eigenen Web-Texte zu verbessern bzw. eingekaufte Texte sicherer beurteilen zu können. Es liefert klare Kriterien für die Textanalyse,…

Texten für das Web

E-Book Texten für das Web
Erfolgreich werben, erfolgreich verkaufen Format: PDF

Dieses Buch bietet das nötige Handwerkszeug, um die Qualität der eigenen Web-Texte zu verbessern bzw. eingekaufte Texte sicherer beurteilen zu können. Es liefert klare Kriterien für die Textanalyse,…

TCP/IP-Praxis

E-Book TCP/IP-Praxis
Dienste, Sicherheit, Troubleshooting Format: PDF

Netzwerke modernen Standards verlangen weniger nach Rezepten für Neu - Design als vielmehr nach Wegen, Maßnahmen zur Integration in eine bestehende Infrastruktur aufzuzeigen. Diesem Aspekt trägt TCP/…

E-Learning

E-Book E-Learning
Einsatzkonzepte und Geschäftsmodelle Format: PDF

Der vorliegende Band ist dem Lernen und Lehren auf der Basis moderner Informations- und Kommunikationstechnologien gewidmet. Das Buch fasst die wichtigsten Ansätze zur Einführung, Umsetzung und…

E-Learning

E-Book E-Learning
Einsatzkonzepte und Geschäftsmodelle Format: PDF

Der vorliegende Band ist dem Lernen und Lehren auf der Basis moderner Informations- und Kommunikationstechnologien gewidmet. Das Buch fasst die wichtigsten Ansätze zur Einführung, Umsetzung und…

Weitere Zeitschriften

Arzneimittel Zeitung

Arzneimittel Zeitung

Die Arneimittel Zeitung ist die Zeitung für Entscheider und Mitarbeiter in der Pharmabranche. Sie informiert branchenspezifisch über Gesundheits- und Arzneimittelpolitik, über Unternehmen und ...

Ärzte Zeitung

Ärzte Zeitung

Zielgruppe:  Niedergelassene Allgemeinmediziner, Praktiker und Internisten. Charakteristik:  Die Ärzte Zeitung liefert 3 x pro Woche bundesweit an niedergelassene Mediziner ...

DER PRAKTIKER

DER PRAKTIKER

Technische Fachzeitschrift aus der Praxis für die Praxis in allen Bereichen des Handwerks und der Industrie. “der praktiker“ ist die Fachzeitschrift für alle Bereiche der fügetechnischen ...

ea evangelische aspekte

ea evangelische aspekte

evangelische Beiträge zum Leben in Kirche und Gesellschaft Die Evangelische Akademikerschaft in Deutschland ist Herausgeberin der Zeitschrift evangelische aspekte Sie erscheint viermal im Jahr. In ...

IT-BUSINESS

IT-BUSINESS

IT-BUSINESS ist seit mehr als 25 Jahren die Fachzeitschrift für den IT-Markt Sie liefert 2-wöchentlich fundiert recherchierte Themen, praxisbezogene Fallstudien, aktuelle Hintergrundberichte aus ...