Video: Datenaufbereitung – der Schlüssel zu erfolgreichem Datenmanagement | SAS Webinar 2024
Bei weitem die einfachste der NoSQL-Datenbanken (nicht nur SQL) in einer Big-Data-Umgebung sind solche, die das Schlüssel-Wert-Paar-Modell (KVP-Modell) verwenden. KVP-Datenbanken benötigen kein Schema (wie RDBMSs) und bieten große Flexibilität und Skalierbarkeit.
KVP-Datenbanken bieten keine ACID-Fähigkeit (Atomicity, Consistency, Isolation, Durability) und erfordern, dass die Implementierer über die Platzierung, Replikation und Fehlertoleranz von Daten nachdenken, da sie nicht ausdrücklich von der Technologie selbst gesteuert werden. KVP-Datenbanken werden nicht typisiert. Infolgedessen werden die meisten Daten als Zeichenketten gespeichert.
Taste | Wert |
---|---|
Farbe | Blau |
Libation | Bier |
Held | Soldat |
Dies ist ein sehr vereinfachter Satz von Schlüsseln und Werte. In einer großen Datenimplementierung werden viele Menschen unterschiedliche Vorstellungen über Farben, Trankopfer und Helden haben.
Schlüssel | Wert |
---|---|
FacebookUser12345_Color | Rot |
TwitterUser67890_Color | Bräunlich |
FoursquareUser45678_Libation | "Weißwein" |
Google + User24356_Libation | "Trockener Martini mit einem Twist " |
LinkedInUser87654_Hero | " Top-Verkäufer " |
Mit steigender Benutzeranzahl kann es schwierig sein, genaue Schlüssel und verwandte Werte zu verfolgen. Wenn Sie die Meinungen von Millionen von Benutzern verfolgen müssen, kann die Anzahl der Schlüsselwertpaare, die damit verknüpft sind, exponentiell ansteigen. Wenn Sie die Auswahl für die Werte nicht einschränken möchten, bietet die generische String-Darstellung von KVP Flexibilität und Lesbarkeit.
Möglicherweise benötigen Sie zusätzliche Hilfe beim Organisieren von Daten in einer Schlüsselwertdatenbank. Die meisten bieten die Möglichkeit, Schlüssel (und ihre zugehörigen Werte) in einer Sammlung zusammenzufassen. Sammlungen können aus einer beliebigen Anzahl von Schlüssel / Wert-Paaren bestehen und erfordern keine exklusive Kontrolle der einzelnen KVP-Elemente.
Eine weit verbreitete Open Source Schlüssel-Wert Paar Datenbank heißt Riak. Es wird von einer Firma namens Basho Technologies entwickelt und unterstützt und steht unter der Apache Software License v2 zur Verfügung. 0.
Riak ist eine sehr schnelle und skalierbare Implementierung einer Schlüsselwertdatenbank. Es unterstützt eine hochvolumige Umgebung mit sich schnell ändernden Daten, da es leichtgewichtig ist. Riak ist besonders effektiv bei der Echtzeitanalyse des Handels mit Finanzdienstleistungen. Es verwendet "Buckets" als Organisationsmechanismus für Sammlungen von Schlüsseln und Werten.
Riak-Implementierungen sind Cluster von physischen oder virtuellen Knoten, die auf Peer-to-Peer-Weise angeordnet sind. Da kein Master-Knoten vorhanden ist, ist der Cluster robust und hochgradig skalierbar.Alle Daten und Operationen sind über das Cluster verteilt. Größere Cluster arbeiten besser und schneller als Cluster mit weniger Knoten. Die Kommunikation im Cluster erfolgt über ein spezielles Protokoll namens Gossip. Klatsch speichert Statusinformationen über den Cluster und teilt Informationen über Buckets mit.
Riak verfügt über viele Funktionen und ist Teil eines Ökosystems, das aus folgenden Komponenten besteht:
-
Parallele Verarbeitung: Mit MapReduce unterstützt Riak eine Funktion zum Zerlegen und Neuzusammenstellen von Abfragen im gesamten Cluster für Echtzeitanalyse und -berechnung.
-
Links und Link-Gehen: Riak kann so konstruiert werden, dass eine Graph-Datenbank mit Links nachgebildet wird. Ein Link kann als eine einseitige Verbindung zwischen Schlüssel-Wert-Paaren betrachtet werden. Wenn Sie den Links folgen, erhalten Sie eine Zuordnung der Beziehungen zwischen Schlüsselwertpaaren.
-
Suche: Riak Search verfügt über eine fehlertolerante, verteilte Volltextsuchfunktion. Buckets können indiziert werden, um den Wert schnell auf Schlüssel aufzulösen.
-
Sekundäre Indizes: Entwickler können Werte mit einem oder mehreren Schlüsselfeldwerten markieren. Die Anwendung kann dann den Index abfragen und eine Liste der übereinstimmenden Schlüssel zurückgeben. Dies kann bei Big-Data-Implementierungen sehr nützlich sein, da die Operation atomar ist und Echtzeitverhalten unterstützt.
Riak-Implementierungen eignen sich am besten für
-
Benutzerdaten für soziale Netzwerke, Communities oder Spiele
-
Umfangreiche, medienreiche Datenerfassung und -speicherung
-
Caching-Layer zum Verbinden von RDBMS- und NoSQL-Datenbanken
-
Mobile Anwendungen, die Flexibilität und Zuverlässigkeit erfordern