ScholarGate
Assistent

Big Data und NoSQL-Systeme

Big Data- und NoSQL-Systeme sind Datenmanagement-Technologien, die für Volumen, Geschwindigkeit und Vielfalt entwickelt wurden, mit denen relationale Datenbanken zu kämpfen hatten. Sie tauschen strikte relationale Garantien gegen horizontale Skalierbarkeit, flexible Schemata und hohe Verfügbarkeit ein.

Thema finden mit PaperMindDemnächstFind papers & topics
Tools & resources
Folien herunterladen
Learn & explore
VideoDemnächst

Definition

Big Data-Systeme sind Datenmanagement-Plattformen, die für Datensätze entwickelt wurden, die zu groß, zu schnell oder zu vielfältig für traditionelle Einzelknoten-Datenbanken sind; NoSQL-Systeme sind nicht-relationale Speicher, die flexible Datenmodelle und gelockerte Konsistenz annehmen, um horizontale Skalierbarkeit und Verfügbarkeit zu erreichen.

Scope

Dieser Bereich umfasst Datensysteme, die für massive Skalierung konzipiert sind: NoSQL-Speicher (Schlüssel-Wert, Dokument, Wide-Column und Graph) und ihre flexiblen Datenmodelle; Daten-parallele Verarbeitungs-Frameworks, die von MapReduce abstammen; die Konsistenz-Verfügbarkeits-Kompromisse, die durch das CAP-Theorem und das Spektrum der Konsistenzmodelle erfasst werden; sowie Data Warehousing und OLAP für groß angelegte Analysen. Es wird behandelt, wie diese Systeme relationale Annahmen für die Skalierung lockern oder neu organisieren. Ausgenommen sind die Interna von verteilten Commits und paralleler Abfrageausführung, die im Bereich der verteilten und parallelen Datenbanken behandelt werden.

Sub-topics

Core questions

  • Welche Skalierbarkeits- und Flexibilitätsanforderungen führten über relationale Datenbanken hinaus?
  • Welche Datenmodelle bieten die wichtigsten NoSQL-Kategorien?
  • Wie verarbeiten datenparallele Frameworks riesige Datensätze über Cluster hinweg?
  • Welche Konsistenz-Verfügbarkeits-Kompromisse beschreibt das CAP-Theorem?
  • Wie unterstützen Data Warehouses und OLAP groß angelegte analytische Abfragen?

Key concepts

  • Schlüssel-Wert-, Dokument-, Wide-Column-, Graph-Speicher
  • horizontale Skalierbarkeit
  • Schemaflexibilität
  • MapReduce und datenparallele Verarbeitung
  • CAP-Theorem
  • eventuelle Konsistenz
  • BASE versus ACID
  • Data Warehousing und OLAP

Key theories

Horizontal skalierbare NoSQL-Speicher
NoSQL-Systeme verlassen das relationale Einzelknoten-Modell zugunsten von Schlüssel-Wert-, Dokument-, Wide-Column- oder Graph-Modellen, die über Commodity-Cluster hinweg sharden und replizieren, wobei Skalierbarkeit und Verfügbarkeit gegenüber umfangreichen Abfragen und starker Konsistenz priorisiert werden.
Datenparallele Verarbeitung
Frameworks, die dem MapReduce-Modell folgen, drücken groß angelegte Berechnungen als parallele Map- und Reduce-Phasen über partitionierte Daten aus, wodurch die Komplexität von Verteilung, Planung und Fehlertoleranz vor dem Programmierer verborgen bleibt.
CAP-Kompromiss
Das CAP-Theorem besagt, dass ein verteilter Datenspeicher Konsistenz, Verfügbarkeit und Partitionstoleranz nicht gleichzeitig garantieren kann, was Designer dazu zwingt, während einer Netzwerkpartition zwischen Konsistenz und Verfügbarkeit zu wählen.

Clinical relevance

Big Data- und NoSQL-Systeme bilden die Dateninfrastruktur des modernen Webs: Schlüssel-Wert- und Wide-Column-Speicher unterstützen Dienste mit hohem Datenverkehr, datenparallele Frameworks verarbeiten Protokolle und Klickströme in großem Maßstab, und Data Warehouses dienen der Geschäftsanalytik, wodurch diese Systeme für das Data Engineering und groß angelegte Anwendungen von zentraler Bedeutung sind.

History

Internet-Skala-Workloads in den 2000er Jahren überstiegen die Kapazitäten von relationalen Einzelknoten-Datenbanken. Googles MapReduce (2004/2008) und das Open-Source-Hadoop-Ökosystem ermöglichten die Datenverarbeitung auf Cluster-Ebene; Amazons Dynamo (2007) und Googles Bigtable inspirierten eine Welle von NoSQL-Speichern; und Brewers CAP-Theorem umrahmte die Konsistenz-Verfügbarkeits-Kompromisse, die diese Systeme verkörpern.

Debates

Starke versus eventuelle Konsistenz
NoSQL-Systeme wählen oft Verfügbarkeit und eventuelle Konsistenz, um bei Partitionen reaktionsfähig zu bleiben; dies verlagert jedoch die Konfliktbehandlung auf die Anwendungen. Es wird diskutiert, wann eventuelle Konsistenz akzeptabel ist und wann neuere Systeme stärkere Garantien wiederherstellen sollten.

Key figures

  • Jeffrey Dean
  • Sanjay Ghemawat
  • Eric Brewer
  • Werner Vogels

Related topics

Seminal works

  • dean2008
  • decandia2007
  • brewer2012

Frequently asked questions

Bedeutet NoSQL überhaupt kein SQL?
Nein. NoSQL wird in der Regel als „not only SQL“ (nicht nur SQL) gelesen. Es bezieht sich auf Datenspeicher, die nicht auf dem relationalen Modell basieren und nicht auf SQL zentriert sind, aber viele NoSQL-Systeme bieten SQL-ähnliche Abfrageschnittstellen, und der Begriff umfasst eine breite Familie – Schlüssel-Wert-, Dokument-, Wide-Column- und Graph-Datenbanken – und nicht eine einzelne Technologie.
Wann sollte ich ein NoSQL-System gegenüber einer relationalen Datenbank wählen?
NoSQL-Systeme sind attraktiv, wenn Sie horizontal über viele Maschinen skalieren, flexible oder sich schnell entwickelnde Daten speichern oder die Verfügbarkeit für einfache Zugriffsmuster maximieren müssen. Relationale Datenbanken bleiben vorzuziehen, wenn Sie umfangreiche Abfragen, komplexe Joins und starke transaktionale Konsistenz über strukturierte Daten benötigen.

Methods for this concept

Related concepts