Inhaltsverzeichnis:
Video: Microsoft Azure OpenDev—June 2017 2024
Wenn Sie unglaublich schnelle Schreibvorgänge benötigen, ist Flash-Speicher erforderlich (im Gegensatz zum Aufruf von Flash Gordon). Das kostet natürlich RAM-Speicher. Das Schreiben in den Arbeitsspeicher wird Ihnen ungefähr die Größe Ihres Arbeitsspeichers bescheren. Daher ist es eine gute Idee, eine sehr schnelle Speicheroption direkt hinter dem RAM Ihres Servers zu haben.
Auf diese Weise löscht die Checkpoint-Operation, um die Daten auf die Festplatte zu schreiben, den Platz im RAM so schnell wie möglich.
Geld für Geschwindigkeit ausgeben
Flash ist teuer - mehr als das traditionelle Drehen von Disk und RAM. Es ist möglich, ohne Flash zu arbeiten, indem man sich drehende Disk-Arrays mit RAID 10 benutzt, aber diese werden euch nur so weit bringen.
Ein logischer Ansatz besteht darin, zu prüfen, wie schnell Daten in Ihre Datenbank übertragen werden. Möglicherweise wird 100% der Größe Ihrer Geschäftsdaten für eine sich drehende Festplatte bereitgestellt, 10% für Flash und 1% für RAM. Diese Zahlen variieren abhängig vom Datenzugriffsprofil Ihrer Anwendung und davon, wie oft auf dieselben Daten zugegriffen wird.
Wenn Sie in einer Branche tätig sind, in der Daten schnell alt werden und Sie unbedingt den Schreibdurchsatz garantieren müssen, könnte eine teure All-Flash-Infrastruktur für Sie bereitstehen.
Um Ihnen eine Vorstellung von der möglichen Skalierung in einem Schlüsselwert-Speicher zu geben, der nativen Flash unterstützt, behauptet Aerospike, dass 99. 9 Prozent der Lese- und Schreibvorgänge in einem einzigen System mit nativem Flash für Daten und RAM für Indizes abgeschlossen werden. Millisekunde.
Context computing
Aerospike unterstützt ein Konzept namens context - aware computing . Bei kontextbezogener Datenverarbeitung haben Sie ein sehr kurzes Zeitfenster, um auf eine Anforderung zu reagieren, und die richtige Antwort wird von bestimmten Eigenschaften des Benutzers bestimmt, z. B. Alter oder gekaufte Produkte. Zu diesen Eigenschaften gehören:
-
Identität: Sitzungs-IDs, Cookies, IP-Adressen
-
Attribute: Demografisch oder geografisch
-
Verhalten: Anwesenheit (Streichen, Suchen, Teilen), Kanäle (Web, Telefon), Dienstleistungen (Frequenz, Raffinesse)
-
Segmente: Einstellungen, Werte, Lebensstil, Geschichte
-
Transaktionen: Zahlungen, Kampagnen
Die allgemeine Idee ist, Daten aus einer transaktionalen System, um die am besten geeignete oder empfohlene Lösung für einen Kunden anhand verschiedener Faktoren zu bestimmen. Sie können dies tun, indem Sie einen Hadoop-Plan / einen Job reduzieren, z. B. für eine relationale Transaktionsrelationaldatenbank.
Die Ausgaben werden dann in Aerospike gespeichert, so dass, wenn ein bestimmter Kunde auf Ihrer Website ankommt und eine Mischung aus der vorhergehenden Liste von Faktoren vorliegt (als zusammengesetzter Schlüssel modelliert), die entsprechende oder Empfehlung sofort an den Kunden gegeben wird.
Aerospike bewerten
Aerospike ist der König der Flash-Unterstützung. Anstatt wie bei anderen Datenbanken die Dateisystemunterstützung des Betriebssystems auf dem Flash zu verwenden (das heißt, sie behandeln im Grunde eine Flash-Disk wie jede andere Festplatte), greift Aerospike nativ auf den Flash zu.
Dieses Verhalten bietet Aerospike einen maximalen Durchsatz, da es nicht darauf warten muss, dass Funktionsaufrufe des Betriebssystems abgeschlossen werden. Es greift einfach direkt auf die Rohblitzblöcke zu. Darüber hinaus kann Aerospike die physikalischen Eigenschaften des Flashspeichers nutzen, um jede Leistung zu optimieren.
Aerospike will Riak in großen Unternehmen und unternehmenskritischen Anwendungsfällen überholen. Es verfügt über Enterprise - level -Features, die in anderen Datenbanken fehlen, einschließlich der folgenden:
-
Vollständige ACID-Konsistenz: Stellt sicher und konsistent Daten sicher.
-
Shared-Nothing-Cluster: Verfügt über eine synchrone Replikation, um Daten konsistent zu halten.
-
Automatisches Rebalancing: Verschiebt automatisch einige Daten zu neuen Knoten, glättet die Lesezeiten und ermöglicht die Skalierung und Skalierung in einem Cluster.
-
Unterstützung für UDFs und Hadoop: Benutzerdefinierte Funktionen können neben den Daten für Aggregationsabfragen ausgeführt werden, und Hadoop Map / Reduce wird für komplexere Anforderungen unterstützt.
-
Sekundäre Indizes: Fügt Indizes zu Datenwertfeldern für die schnelle Abfrage hinzu.
-
Große Datentypen: Unterstützt benutzerdefinierte und große Datentypen; ermöglicht komplexe Datenmodelle und Anwendungsfälle.
-
Automatisches Löschen der Speicherebene bei Schreibvorgängen: Löscht RAM in Flash-Speicher (SSDs) und Festplatte, wenn der Speicherplatz auf der schnelleren Ebene fast aufgebraucht ist.
Unabhängig davon, ob Sie blitzschnelle Flash-Unterstützung benötigen oder nicht, sollten diese anderen Funktionen Menschen mit unternehmenskritischen Anwendungsfällen wirklich interessieren. Wenn Sie Riak für ein unternehmenskritisches System bewerten, sollten Sie auch Aerospike evaluieren.