10 Vorteile von NoSQL über RDBMS

NoSQL-Datenbanken sind nicht ein direkter Ersatz für ein relationales Datenbank-Managementsystem (RDBMS). Für viele Datenprobleme, obwohl, ist NoSQL ein besseres Spiel als ein RDBMS.

Weniger Bedarf für ETL

NoSQL-Datenbanken unterstützen die Speicherung von Daten # 147-wie. # 148- Key Wertspeicher geben Ihnen die Möglichkeit, einfache Datenstrukturen zu speichern, während Dokument NoSQL-Datenbanken Sie die Möglichkeit bieten, eine Reihe von flachen oder verschachtelte Strukturen zu handhaben.

Die meisten Daten zwischen Systemen fliegend tut dies als eine Nachricht. Typischerweise nimmt die Daten eines der folgenden Formate:

  • Ein binäres Objekt werden durch eine Reihe von Schichten weitergegeben

  • Ein XML-Dokument

  • Ein JSON-Dokument

Die Möglichkeit, diese Formate nativ in einem Bereich von NoSQL-Datenbanken verringert die Menge an Code zu handhaben Sie aus der Quelldatenformat in das Format zu konvertieren, die Speicherung benötigt. Das nennt man extrahieren, transformieren und laden (ETL).

Mit diesem Ansatz reduzieren Sie erheblich die Menge an Code erforderlich mit einer NoSQL-Datenbank zu starten. Darüber hinaus, weil Sie müssen, um diese für Updates nicht bezahlen # 147-Sanitär # 148- Code, die laufenden Wartungskosten sind deutlich gesunken.

Unterstützung für unstrukturierte Text

Die überwiegende Mehrheit von Daten in Enterprise-Systemen ist unstrukturiert. Viele NoSQL-Datenbanken Indexierung von unstrukturiertem Text verarbeiten kann entweder als native Funktion (Marklogic Server) oder einen integrierten Satz von Dienstleistungen, einschließlich Solr oder Elasticsearch.

Die Möglichkeit, unstrukturiertem Text zu verwalten stark erhöht Informationen und können Unternehmen bessere Entscheidungen zu treffen. Zum Beispiel umfassen fortgeschrittene Anwendungen Unterstützung für mehrere Sprachen mit facettierten Suche, Schnipsel Funktionalität und Wort ergeben Unterstützung. Erweiterte Funktionen auch Unterstützung für Wörterbücher und Thesauri enthalten.

Darüber hinaus suchen Warnaktionen auf Daten aufnehmen, können Sie Entitäten aus Verzeichnissen wie diese Auflistung Menschen, Orte Extrakt genannt, und Organisationen, die Textdaten ermöglicht werden, besser kategorisiert, verschlagwortet und gesucht.

Entity Anreicherung Dienstleistungen wie Smartlogic, OpenCalais, NetOwl und TEMIS Luxid, die mit anderen Informationen extrahierten Informationen kombinieren, um eine reiche verschachtelte Informationen Web zur Verfügung stellen und eine effiziente Analyse und Nutzung zu verbessern.

Die Fähigkeit, Veränderungen im Laufe der Zeit zu handhaben

Wegen des Schemas Agnostiker Art von NoSQL-Datenbanken, sind sie durchaus in der Lage Veränderung der Verwaltung - Sie müssen nicht ETL-Routinen, wenn der XML-Nachrichtenstruktur zwischen den Systemen Änderungen neu zu schreiben.

Einige NoSQL-Datenbanken nehmen einen Schritt weiter und bieten einen universellen Index für die Struktur, Werte und Text in Daten gefunden. Microsoft DocumentDB und Marklogic Server bieten sowohl diese Fähigkeit.

Wenn eine Dokumentstruktur ändert, lassen Sie diese Indizes Organisationen sofort die Informationen zu verwenden, anstatt mehrere Monate warten, bevor Sie Systeme testen und schreiben können.

Keine Abhängigkeiten von SQL Magie

Structured Query Language (SQL) ist die vorherrschende Sprache verwendet relationale Datenbankverwaltungssysteme abzufragen. Die Möglichkeit, Abfragen so zu strukturieren, dass sie eine gute Leistung hat über die Jahre ein heikles Kunst geworden. Komplexe Multitable-Joins sind nicht einfach aus dem Speicher zu schreiben.

Obwohl mehrere NoSQL-Datenbanken SQL-Zugriff unterstützen, tun sie so für die Kompatibilität mit bestehenden Anwendungen wie Business Intelligence (BI) Tools. NoSQL-Datenbanken unterstützen, ihre eigenen Zugriffs Sprachen, die die Daten gespeichert werden, anstatt erfordern ein relationales Modell innerhalb der zugrunde liegenden Datenbank interpretieren kann.

Diese mehr Entwickler-centric Mentalität auf das Design von Datenbanken und deren Zugang Application Programming Interfaces (API) sind der Grund, NoSQL-Datenbanken unter Anwendungsentwickler sehr populär geworden sind.

Anwendungsentwickler brauchen nicht das Innenleben und Launen der Datenbanken zu wissen, bevor Sie sie verwenden. NoSQL Datenbanken befähigen Entwickler zu arbeiten, was in den Anwendungen benötigt wird, anstatt zu versuchen, relationale Datenbanken zu zwingen, zu tun, was erforderlich ist.

Die Fähigkeit, horizontal auf handelsüblicher Hardware zu skalieren

NoSQL-Datenbanken verarbeiten Partitionierung (sharding) Einer Datenbank über mehrere Server. Also, wenn Sie Ihre Datenspeicheranforderungen zu viel wachsen, können Sie weiterhin auf kostengünstige Server hinzufügen und schließen Sie sie an Ihre Datenbank-Cluster (horizontale Skalierung) So dass sie als eine einzige Datendienst arbeiten.

Vergleichen Sie das mit der relationalen Datenbank Welt, wo Sie neue kaufen müssen, leistungsfähiger und damit teurer Hardware zu skalieren (vertikale Skalierung). Wenn Sie die Datenmenge zu verdoppeln, waren Sie speichern, würden Sie bequem die Kosten für die Hardware vervierfachen Sie benötigen.

Die Bereitstellung Haltbarkeit und eine hohe Verfügbarkeit einer NoSQL-Datenbank durch kostengünstige Hardware und Speicher mit ist einer der wichtigsten Vermögenswerte des NoSQL. Die Möglichkeit, so zu tun, während großzügige Skalierbarkeit für viele Anwendungen auch nicht schaden bietet!

Breite der Funktionalität

Die meisten relationalen Datenbanken unterstützen die gleichen Funktionen, aber in einer etwas anderen Weise, so sind sie alle ähnlich.

NoSQL-Datenbanken im Gegensatz dazu gibt es in vier Kerntypen: Schlüssel-Wert, säulen, Dokument und Dreifachgeschäfte. Innerhalb dieser Arten können Sie eine Datenbank finden Sie Ihre besondere (und eigentümlich!) Zu entsprechen braucht. Bei so viel Auswahl, sind Sie verpflichtet, eine NoSQL-Datenbank zu finden, die Ihre Anwendung Leiden zu lösen.

Unterstützung für mehrere Datenstrukturen

Viele Anwendungen benötigen einfache Objektspeicher, während andere erfordern hoch komplexen, miteinander verknüpften Speicherstruktur. NoSQL-Datenbanken bieten Unterstützung für eine Reihe von Datenstrukturen.

  • Einfache binäre Werte, Listen, Karten und Strings mit hoher Geschwindigkeit in Schlüssel-Wert-Shops abgewickelt werden.

  • Verwandte Informationen Werte können in der Spalte Familien, die innerhalb Bigtable Klone gruppiert werden.

  • Hoch komplexe Eltern-Kind-hierarchischer Strukturen innerhalb Dokumentendatenbanken verwaltet werden.

  • Ein Netz von miteinander verknüpften Informationen lassen sich flexibel und in Dreier- und Graph speichert im Zusammenhang beschrieben.

Vendor Wahl

Die NoSQL-Industrie ist voll mit Datenbanken, obwohl viele für weniger als zehn Jahren gewesen sind. Zum Beispiel, IBM, Microsoft und Oracle tauchte erst vor kurzem ihre Zehen in diesen Markt. viele Anbieter zielen insbesondere auf das Publikum mit ihrem eigenen Gebräu aus Innovation daher.

Öffnen # 8208- # 93-Source-Varianten sind für die meisten NoSQL-Datenbanken, die es Unternehmen ermöglicht, zu erforschen und zu starten NoSQL-Datenbanken bei minimalem Risiko verwenden. Diese Unternehmen können dann nehmen ihre neue Methoden zu einer Produktionsplattform von Enterprise-Angebote verwenden.

Kein Legacy-Code

Weil sie so neu sind, NoSQL-Datenbanken nicht Legacy-Code haben, was bedeutet, dass sie keine Unterstützung für alte Hardware-Plattformen zur Verfügung stellen müssen oder halten seltsam und selten verwendete Funktionen aktualisiert.

NoSQL-Datenbanken genießen einen schnellen Tempo in Bezug auf die Entwicklung und Reifung. Neue Funktionen sind die ganze Zeit veröffentlicht, und neue und bestehende Funktionen werden häufig aktualisiert (so NoSQL-Anbieter müssen keine sehr großen Codebasis zu erhalten). Tatsächlich treten neue Major-Releases jährlich statt alle drei bis fünf Jahre.

Ausführen von Code neben dem Daten

NoSQL-Datenbanken wurden in der Ära von Hadoop erstellt. Hadoop hoch verteiltes Dateisystem (HDFS) und Batch-Verarbeitungsumgebung (Map / Reduce) signalisiert Veränderungen in der Art und Weise Daten gespeichert, abgefragt und verarbeitet werden.

Abfragen und Verarbeitung Arbeit gehen nun auf mehrere Server, die einen hohen Grad an Parallelisierung für beide Ingest und Abfrageauslastungen bietet. Die Möglichkeit, Aggregationen zu berechnen neben die Daten auch zur Norm geworden.

Sie müssen nicht mehr über ein separates Data-Warehouse-System, das über Nacht aktualisiert. Mit schnellen Aggregationen und Abfrage Handhabung wird die Analyse an die Datenbank übergeben zur Ausführung neben den Daten, was bedeutet, dass Sie nicht über eine Menge Daten, um ein Netzwerk versenden müssen lokal kombinierten Analyse zu erreichen.

Menü