Bachelorarbeit, 2015
54 Seiten, Note: 1,7
1 Einleitung
2 Einführung in die NoSQL-Datenbanken
2.1 Definition NoSQL-Datenbanken
2.2 Historischer Rückblick
2.3 Typen von NoSQL-Datenbanken
3 Apache CouchDB
3.1 Dokumentbasiert
3.2 Attachment
3.3 RESTful JSON API
3.4 Futon
4 Installation von CouchDB
4.1 Installationsanleitung
4.2 Installation von cURL
5 CRUD-Operationen
5.1 Anzeigen der Datenbanken
5.2 Anlegen einer Datenbank
5.3 Anlegen von Dokumenten
5.4 Anzeigen von Dokumenten
5.5 Update von Dokumenten
5.6 Löschen eines Dokuments
5.7 Weitere CRUD-Tests
6 Importieren der Videodatenbank
6.1 Aktuelles Datenformat
6.2 Bereinigung der Daten
6.3 Laden der Daten in die Zieldatenbank
6.4 Weitere Importtests
7 Standardabfragen
7.1 UND- sowie ODER-Operationen
7.2 Array-Abfragen
7.3 Anzeigen von Datentypen
8 MapReduce
8.1 Daten summieren
8.2 Daten zusammenzählen
8.3 Ermittelung von Durchschnitten
8.4 Stats-Funktion
9 Fazit
Die Bachelorarbeit hat zum Ziel, die praktische Anwendung und Implementierung einer Videodatenbank unter Verwendung der NoSQL-Datenbank Apache CouchDB zu demonstrieren und zu testen. Im Zentrum steht dabei die Analyse des Umgangs mit unstrukturierten Daten, die Durchführung von CRUD-Operationen mittels cURL sowie die Auswertung der Datenbestände durch MapReduce-Abfragen.
3.1 Dokumentbasiert
Alle Daten in CouchDB werden in sogenannte Dokumente abgelegt. Jedes Dokument besitzt für die Indexierung eine Dokumenten_id und eine Revisions_id. Wenn ein Dokument durch einen Befehl verändert wird, dann wird für dieses Dokument eine neue Revisions_id erzeugt. Durch die Revisions_id können Veränderungen an den Daten nachvollzogen werden. Da Dokumente keinerlei Beziehungen untereinander besitzen, bringen das Erweitern sowie Löschen von Daten keinerlei Probleme mit sich. Hieran wird der Aspekt der Schemafreiheit sichtbar.
Alle Daten, die in einem Dokument gespeichert werden, besitzen das Format ‚JSON‘. Wie die Daten im JSON-Format dargestellt werden, soll anhand eines Auszuges aus der Test-Videodatenbank darstellt werden:
{ "cass_nr":1, "aufnahme_nr":1, "cass_marke":"kodak", "cass_laenge":240, "cass_typ":"HS", "film_titel":"Ueber den Daechern von Nizza", "genre":"gauner", "schauspieler":"C. Grant", "film_laenge":120, "laenge_ings":0, }
Damit sichtbar wird, wie die JSON-Daten in einem Dokument aussehen, habe ich anhand dieser Daten ein Dokument erzeugt und für die Visualisierung ein Screenshot aus Futon erstellt (Futon-Erklärung siehe Kapitel 3.4):
1 Einleitung: Einführung in die Relevanz von Datenmengen im Zeitalter von Big Data und Vorstellung des Themas der Arbeit.
2 Einführung in die NoSQL-Datenbanken: Erläuterung der Definition, des geschichtlichen Hintergrunds und der verschiedenen Typen von NoSQL-Systemen.
3 Apache CouchDB: Vorstellung des dokumentenbasierten Datenmodells, der RESTful API und des Administrations-Tools Futon.
4 Installation von CouchDB: Detaillierte Schritt-für-Schritt-Anleitung zur Einrichtung von CouchDB und der cURL-Kommandozeilenumgebung.
5 CRUD-Operationen: Praktische Erprobung und Dokumentation der Erstellungs-, Anzeige-, Update- und Löschvorgänge für Datenbanken und Dokumente.
6 Importieren der Videodatenbank: Prozessbeschreibung zur Datenbereinigung und Transformation von CSV-Daten in ein validiertes JSON-Format für den Import.
7 Standardabfragen: Anwendung von Abfragen mittels JavaScript und Funktionen in Futon, inklusive UND/ODER-Operationen sowie Array-Analysen.
8 MapReduce: Untersuchung der Aggregations- und Gruppierungsmöglichkeiten von CouchDB zur Datenanalyse.
9 Fazit: Zusammenfassende Bewertung der Flexibilität von CouchDB und der praktischen Ergebnisse der durchgeführten Implementierung.
CouchDB, NoSQL, Datenbank, CRUD-Operationen, JSON, Big Data, MapReduce, Datenmigration, cURL, Futon, Schemafreiheit, Datenbereinigung, Web 2.0, Datenanalyse, IT-Infrastruktur.
Die Arbeit behandelt die praktische Implementierung und den Test einer kleinen Videodatenbank auf Basis der NoSQL-Datenbank Apache CouchDB.
Zentrale Schwerpunkte sind das NoSQL-Datenmodell, die Nutzung der REST-Schnittstelle, Datenimport-Prozesse und die Datenanalyse durch MapReduce.
Das Ziel ist die Dokumentation des gesamten Prozesses, von der Installation der Software über die Datenverwaltung bis hin zur komplexen Abfrage von Daten.
Es handelt sich um eine praxisorientierte Arbeit, die auf empirischer Erprobung, technischer Dokumentation und der Anwendung von Datenbankfunktionen basiert.
Der Hauptteil gliedert sich in die Installation von CouchDB und cURL, die Durchführung von CRUD-Operationen, den Import externer Daten und die Implementierung von MapReduce-Abfragen.
Wesentliche Begriffe sind Apache CouchDB, NoSQL, CRUD-Operationen, JSON, Datenbereinigung und MapReduce-Abfragen.
CouchDB erfordert ein syntaktisch korrektes JSON-Format. Da Quelldaten (wie CSV) oft nicht diesem Standard entsprechen, ist eine Bereinigung essenziell, um die Validität der Datenbank zu gewährleisten.
Während relationale Datenbanken SQL und Tabellen nutzen, verwendet CouchDB das MapReduce-Verfahren, um Beziehungen über Dokumente hinweg durch Schlüssel-Wert-Paare abzubilden.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

