Was ist IBM Cloudant?

IBM Cloudant® ist eine JSON-Datenbank auf der Basis von Apache CouchDB, die als vollständig verwalteter, hoch verfügbarer Service bereitgestellt wird. Der Service nutzt selbstbeschreibende JSON-„Dokument“-Speicherschemas und macht damit eine flexible, agile Anwendungsentwicklung möglich. Cloudant wird mit einem Master-Master-Clustering-Framework (auch als „masterlos“ bekannt) erstellt, das mehrere Racks, Rechenzentren, Cloud-Provider oder Geräte umfassen kann.

Im Gegensatz zu traditionellen Datenbanksystemen sind alle Datenrepliken für Lese- und Schreibvorgänge verfügbar. Durch die CouchDB-Replikation und Sync-Funktionalität von Cloudant eignet sich die Lösung ideal für mobile und Webanwendungen, die mit Offline-First-Entwurfsprinzipien erstellt werden – erhalten Sie nativen Zugriff auf Daten auf dem Gerät oder im Browser und überlassen Sie der Datenbank die Synchronisation mit fernen Kopien in der Cloud.   

Cloudant bietet zudem Echtzeit-Indexierung für Online-Analyse, Ad-hoc-Volltextsuche und erweiterte georäumliche Abfragen. Diese Funktionen basieren auf offenen Standards, z. B.: Apache CouchDB, Apache Lucene, GeoJSON etc.

Was erledigt Cloudant für mich?

Cloudant übernimmt Software- und Hardwarebereitstellung, -management und -skalierung sowie Unterstützung. Der Benutzer kann sich auf eine hohe Verfügbarkeit und flexible Möglichkeiten zur Skalierung der Hardware verlassen, falls die bereitgestellte Durchsatzkapazität geändert werden muss.

Was ist Cloudant Local?

Wir empfehlen die Entwicklung mit Apache CouchDB™, das vollständig kompatibel mit Cloudant ist. Das Cloudant-Team trägt alle wichtigen Funktionen zurück in die Open-Source-Community. Entwickeln Sie lokal mit Apache CouchDB™ (Link befindet sich außerhalb von IBM).

Was ist ein Dokumentdatenspeicher?

Dokumentdatenspeicher werden in JSON (JavaScript Object Notation) dargestellt und sind dadurch gekennzeichnet, dass jedes Dokument selbst eine komplexe Datenstruktur ist. Dokumente können verschachtelte Strukturen verschiedener Datentypen enthalten, z. B. andere Objekte. Benutzer einer Dokumentdatenbank können diese komplexen Strukturen abfragen und Teile des Dokuments (oder das gesamte Dokument) abrufen oder aktualisieren, ohne die Datenbank dazu sperren zu müssen. Dokumente werden über einen Primärschlüssel gespeichert und abgerufen, der für jedes Dokument eindeutig ist (ähnlich wie der Schlüssel in einem Schlüssel/Wert-Speicher).

Warum JSON?

Entwickler arbeiten u. a. deshalb gerne mit JSON, weil das zugehörige Schema ohne Eingriffe von Datenbankadministratoren schnell weiterentwickelt werden kann.JSON bietet ein einfaches, elegantes Modell für persistente Java™- oder JavaScript-Objekte (dank der engen Affinität von JSON mit JavaScript). Auf dieser Grundlage können Entwickler eine Datenebenenlösung erstellen, ohne anspruchsvolle, dauerhafte Lösungen wie OpenJPA oder Hibernate zu benötigen. Außerdem stehen bei der Datenmodellierung mit JSON einige komfortable Funktionen zur Verfügung, die relationale Datenbanken nicht bieten: das Speichern eines einzelnen JSON-Dokuments zur Darstellung eines realen Objekts ist wesentlich intuitiver als die Speicherung von N Zeilen in einer relationalen Datenbank als normalisiertes Objekt.

Wie unterscheidet sich Cloudant von CouchDB?

Die APIs in Cloudant sind zwar mit CouchDB kompatibel, der wichtigste Unterschied in der Funktionalität zwischen Cloudant und Apache CouchDB besteht jedoch darin, dass Cloudant über abgestufte, zusätzliche Open Source-Technologien für Volltextsuchen und geografisch-räumliche Indexierungsfunktionen verfügt. IBM hat auch eigene Systeme für Monitoring und Betrieb entwickelt, um für hohe Verfügbarkeit und Leistung zu sorgen. Cloudant-Entwickler übernehmen zudem die gesamte fortlaufende Datenbanküberwachung und Wartung der Infrastruktur. Sie können daher mehr Zeit für die Entwicklung von Anwendungen einplanen und weniger Zeit für die Verwaltung Ihrer Datenbank.  

Apache CouchDB ist ein aktives Open Source-Projekt, das als zuverlässige Alternative zu dokumentorientierten Datenbanken anderer Anbieter dazu beiträgt, die Abhängigkeit von Kunden von einem bestimmten Anbieter zu vermeiden. Mit Cloudant und CouchDB ist der Migrationspfad in beide Richtungen ganz einfach. Die beiden Systeme teilen ein gemeinsames Replikationsprotokoll, durch das Entwickler Kopien ihrer Cloudant-Daten mit einer fernen CouchDB-Instanz (oder umgekehrt) synchronisieren können – mit einem Klick.   

Apache CouchDB wurde im Februar 2008 in Apache Incubator aufgenommen und wurde im November desselben Jahres eines der wichtigsten Apache-Projekte. Besuchen Sie http://couchdb.apache.org/, um Downloads, Dokumentation und Möglichkeiten zur Nutzung von Apache CouchDB zu erhalten.  

In den Dokumenten erfahren Sie mehr über die Unterschiede zwischen den API-Endpunkten von Cloudant und CouchDB.

Was ist die Offline First-Architektur?

Mit der Offline First-Architektur können Sie attraktive Anwendungen entwickeln, bei denen die Benutzer keine Verbindung zum Internet haben müssen. Anstatt davon auszugehen, dass die fehlende Verbindung eine Fehlerbedingung ist, bietet die Anwendung den Benutzern die Möglichkeit, sie auch ohne Verbindung zum Internet zu verwenden. Mit Cloudant Mobile Sync können mobile Anwendungen selbst dann Daten sammeln und lesen, wenn keine Netzwerkverbindung zur Verfügung steht. Sobald die Verbindung wieder besteht, werden die Daten mit IBM Cloudant synchronisiert.  

Cloudant funktioniert nahtlos mit Hoodie und PouchDB. Hoodie ist ein Open Source Node.js Back-End für Offline First-Anwendungen. PouchDB ist eine Open Source JavaScript-Datenbank, die in Web-Browsern aufgerufen und mit Cloudant synchronisiert werden kann. Diese Interoperabilität ermöglicht eine nahtlose Datenreplikation und -synchronisation für alle Datenspeicher, die das CouchDB-Replikationsprotokoll implementieren, und bildet so die Grundlage für unterschiedlichste Offline First-Datenarchitekturen. Lesen Sie hier mehr über Offline First.

Welche Preisstruktur gilt für Cloudant?

Für Cloudant werden zwei Tarife angeboten: Lite und Standard. Das Lite-Angebot ist zeitlich unbegrenzt kostenlos und bietet 1 GB Datenspeicher und begrenzte Durchsatzkapazität. Das Standard-Tarif hat vier Stufen, mit denen die bereitgestellte Durchsatzkapazität differenzierter kontrolliert werden kann. 

Die Cloudant-Preisstruktur basiert auf zwei wichtigen Metriken:

  • Bereitgestellte Durchsatzkapazität
  • Datennutzung

Die bereitgestellte Durchsatzkapazität ist eine Metrik, die pro Sekunde berechnet wird. Sie ist in drei Anforderungsklassen unterteilt: Suchvorgänge, Schreibvorgänge und Abfragen. Suchvorgänge sind Lesevorgänge in einzelnen Dokumenten, Schreibvorgänge beinhalten Schreibprozesse in Dokumenten und Indizes und Abfragen umfassen alle Lesevorgänge in einem Index in Cloudant. Details zu den API-Anforderungen für jede dieser Anfrageklassen finden Sie in der aktuellen Cloudant-Dokumentation. Zur Datennutzung gehören sowohl primäre Daten als auch Indizes.

Stehen für die gängigen Programmiersprachen wie Java, Python und Node.js Client-Bibliotheken zur Verfügung?

Einstieg in die Arbeit mit Cloudant innerhalb weniger Minuten

Ein verwalteter NoSQL-Datenbankservice, der Anwendungsdaten näher an die Positionen verlagert, an denen diese benötigt werden – für einen ununterbrochenen Datenzugriff, offline oder online.