Zuhause Persönliche Finanzen Hochgeschwindigkeitsschlüsselzugriff mit NoSQL - Dummys

Hochgeschwindigkeitsschlüsselzugriff mit NoSQL - Dummys

Inhaltsverzeichnis:

Anonim

Schlüsselwertspeicher in NoSQL sind alle über Geschwindigkeit. Sie können verschiedene Techniken verwenden, um diese Geschwindigkeit zu maximieren, vom Zwischenspeichern von Daten über das Speichern mehrerer Kopien von Daten bis hin zur Verwendung der am besten geeigneten Speicherstrukturen.

Zwischenspeichern von Daten im Speicher

Da auf Daten im Direktzugriffsspeicher (RAM) leicht zugegriffen werden kann, kann die Auswahl eines Schlüsselwertspeichers, der Daten im RAM zwischenspeichert, den Zugriff auf Daten erheblich beschleunigen, wenn auch zum Preis. höhere Serverkosten.

Oft ist dieser Kompromiss wert. Sie können leicht berechnen, welcher Prozentsatz Ihrer gespeicherten Daten häufig angefordert wird. Wenn Sie wissen, dass im Allgemeinen alle fünf Minuten fünf Prozent angefordert werden, nehmen Sie fünf Prozent Ihrer Datengröße und fügen Sie diese Zahl als freien RAM-Speicher auf Ihren Datenbankservern hinzu.

Beachten Sie, dass das Betriebssystem, andere Anwendungen und der Datenbankserver ebenfalls Speicheranforderungen haben.

Replizieren von Daten auf Slaves

In Schlüsselwertspeichern wird ein bestimmter Schlüssel auf einem der Server im Cluster gespeichert. Dieser Prozess wird als Schlüsselpartitionierung bezeichnet. Dies bedeutet, dass, wenn dieser Schlüssel ständig angefordert wird, dieser Knoten die meisten Anfragen erhält. Dieser Knoten ist daher langsamer als Ihre durchschnittliche Anforderungsgeschwindigkeit und beeinträchtigt möglicherweise die Servicequalität für Ihre Benutzer.

Um dies zu vermeiden, unterstützen einige Schlüsselwertspeicher das Hinzufügen von schreibgeschützten Replikaten, die auch als Slaves bezeichnet werden. Redis, Riak und Aerospike sind gute Beispiele. Durch die Replikation kann der Schlüssel mehrfach auf mehreren Servern gespeichert werden, wodurch die Antwortgeschwindigkeit erhöht wird, jedoch auf Kosten von mehr Hardware.

Einige Schlüsselwertspeicher garantieren, dass die Repliken des Schlüssels immer denselben Wert haben wie der Master. Diese Garantie wird als vollständig konsistent bezeichnet. Wenn auf dem Master-Server, der den Schlüssel enthält, eine Aktualisierung stattfindet, sind alle Repliken garantiert auf dem neuesten Stand.

Nicht alle Schlüsselwert-Geschäfte garantieren diesen Status (z. B. Riak). Wenn es also wichtig ist, millisekundenaktuell zu sein, wählen Sie eine Datenbank, deren Repliken vollständig konsistent sind (z. B. Aerospike).

Datenmodellierung in Schlüsselwert-Speichern

Viele Schlüsselwert-Speicher unterstützen nur grundlegende Strukturen für ihre Werttypen, so dass der Anwendungsprogrammierer die Aufgabe hat, die Daten zu interpretieren. Die einfache Datentypunterstützung umfasst normalerweise Zeichenfolgen, Ganzzahlen, JSON und Binärwerte.

Für viele Anwendungsfälle funktioniert dies gut, aber manchmal ist ein etwas differenzierterer Zugriff auf Daten nützlich.Redis unterstützt zum Beispiel die folgenden Datenwerttypen:

  • String

  • Liste

  • Set

  • Sortiertes Set

  • Hash-Maps

  • Bit-Arrays

  • Hyperlog-Logs

Sortierte Sets können Sie werden nach übereinstimmenden Wertebereichen gefragt - ähnlich wie bei der Abfrage eines Wertindexes, der nach Datum sortiert ist, was sehr nützlich ist, um nach einer Teilmenge von typisierten Daten zu suchen.

Betrieb auf Daten

Redis enthält Operationen, um Schlüsselwerte direkt zu inkrementieren und zu dekrementieren, ohne eine Reihe von Schritten zum Lesen, Modifizieren und Aktualisieren (RMU) ausführen zu müssen. Sie können dies innerhalb einer einzigen Transaktion tun, um sicherzustellen, dass keine andere Anwendung den Wert während einer Aktualisierung ändert. Diese datentypspezifischen Operationen umfassen das Hinzufügen und Entfernen von Elementen zu Listen und Sets.

Sie können sogar die Funktion zur automatischen Vervollständigung in der Benutzeroberfläche einer Anwendung bereitstellen, indem Sie den Befehl Redis ZRANGEBYLEX verwenden. Dieser Befehl ruft einen Schlüsselsatz ab, der teilweise mit einer Zeichenfolge übereinstimmt. Wenn Sie also "NoSQL for" in der Suchleiste einer Anwendung eingeben, die auf Redis basiert, würden Sie den Vorschlag "NoSQL for Dummies" sehen. "

Evaluierung von Redis

Redis ist stolz darauf, ein sehr leichter, aber extrem schneller Schlüsselwert-Speicher zu sein. Ursprünglich wurde es als In-Memory-Key-Value-Store konzipiert, verfügt aber jetzt über datenträgerbasierte Datenspeicherung.

Sie können Redis zum Schutz von Daten verwenden, indem Sie den AOF-Modus (Append only file) aktivieren und Redis anweisen, Daten bei jeder Abfrage auf die Festplatte zu zwingen (bekannt als fsync flushing ). AOF verlangsamt natürlich die Schreibvorgänge, bietet jedoch eine höhere Haltbarkeit für Daten. Beachten Sie jedoch, dass Sie noch bis zu einer Sekunde Befehle verlieren können.

Außerdem hat Redis erst kürzlich Unterstützung für das Clustering hinzugefügt. In der Tat, zum Zeitpunkt dieses Schreibens, ist Redis Clustering-Unterstützung in der Beta-Testphase. Glücklicherweise verwendet Redis ein Shared-Nothing-Clustermodell mit Mastern für bestimmte Schlüssel und Slaves, die niemals direkt von einem Client geschrieben werden. nur der Meister tut es. Die Bereitstellung von Shared-Nothing-Clustern sollte es Redis erleichtern, zuverlässiges Clustering zu implementieren, als für Datenbanken, die Schreibvorgänge für alle Replikate ermöglichen.

Wenn Sie eine Caching-Schicht mit sehr hoher Geschwindigkeit im Arbeitsspeicher vor einer anderen Datenbank verwenden möchten - normalerweise werden MongoDB oder Riak zusammen mit Redis verwendet -, dann bewerten Sie Redis als Option. Da sich die Unterstützung für Clustering und die Datenhaltbarkeit weiterentwickelt, kann Redis möglicherweise andere Backend-Datenbanken überholen.

Hochgeschwindigkeitsschlüsselzugriff mit NoSQL - Dummys

Die Wahl des Herausgebers

Web Marketing: Warum Suchmaschinen existieren - Dummies

Web Marketing: Warum Suchmaschinen existieren - Dummies

Wenn Sie verstehen, warum Suchmaschinen existieren, können sie für Sie in Ihrem Web-Marketing-Geschäft arbeiten. Also, hier ist eine kurze Lektion, warum Suchmaschinen existieren und wie Sie sie nutzen können, um Geld zu verdienen. Suchmaschinen liefern Relevanz. Relevanz bedeutet, dass Besucher auf Suchergebnisse klicken und zufrieden sind mit ...

Was sind Tür- und Informationsseiten? - dummies

Was sind Tür- und Informationsseiten? - dummies

Eine Doorway-Seite wird nur als Zugang von einer Suchmaschine zu Ihrer Website erstellt. Doorway-Seiten werden manchmal als Gateway-Seiten und Geisterseiten bezeichnet. Die Idee besteht darin, hoch optimierte Seiten zu erstellen, die von Suchmaschinen aufgenommen und indiziert werden und die mit etwas Glück gut ranken und somit den Traffic auf eine ...

Was ist eine Weiterleitung bei der Suchmaschinenoptimierung? - Dummies

Was ist eine Weiterleitung bei der Suchmaschinenoptimierung? - Dummies

Eine Weiterleitung ist das automatische Laden einer Seite ohne Benutzereingriff. Sie klicken auf einen Link, um eine Webseite in Ihren Browser zu laden, und innerhalb von Sekunden verschwindet die geladene Seite, und eine neue wird angezeigt. Designer erstellen häufig Seiten für Suchmaschinen - optimierte, schlüsselwortreiche Seiten -, die Besucher auf die ...

Die Wahl des Herausgebers

Behandeln Probleme mit dem Kundenservice über Social Media - Dummies

Behandeln Probleme mit dem Kundenservice über Social Media - Dummies

, Wenn Kunden wissen, dass sie direkt mit ein Geschäft in den sozialen Medien, können sie aus einer beliebigen Anzahl von Gründen mit ihnen in Verbindung treten. Aber sobald sie merken, dass ein Problem mit dem Kundenservice oder einer Produktfrage über einen einzigen Tweet oder Beitrag angesprochen werden kann, ist es wahrscheinlicher, dass sie mit dem Unternehmen Geschäfte machen.

Acht Möglichkeiten, Social Media Feedback zu erhalten - Dummies

Acht Möglichkeiten, Social Media Feedback zu erhalten - Dummies

Die heutige Technologie verändert die Art und Weise, wie wir Geschäfte machen blitzschnell. Auch der Social-Media-Handel bewegt sich blitzschnell, aber durch die Beobachtung von Erwähnungen und Fragen an die Community können Sie einen Eindruck davon bekommen, wie Ihr Markt über bevorstehende Veränderungen denkt. Auch andere Posts können Ihnen helfen, kritisches Feedback aus der Öffentlichkeit zusammenzustellen ...

Manage Social Media Commerce mit HootSuite - dummies

Manage Social Media Commerce mit HootSuite - dummies

HootSuite ist ein Social Media Management System zur Umsetzung von Outreach und Überwachung in sozialen Netzwerken über ein einziges webbasiertes Dashboard. Für Unternehmen wird HootSuite am häufigsten von Social-Media-Teams mit mehreren Agenten verwendet, aber auch viele Einzelanwender mögen es. Wenn Sie auf der Suche nach einer robusten Plattform sind, die alles an einem Ort hält, ...

Die Wahl des Herausgebers

Die 5 Kornsterne der Mittelmeer - Dummies

Die 5 Kornsterne der Mittelmeer - Dummies

Die Mittelmeerdiät ist in der Praxis des Habens begründet ein Vollkorn zu jeder Mahlzeit. Und nein, das bedeutet nicht, eine ganze Platte Vollkornspaghetti mit Fleischsauce zum Abendessen zu essen. Stattdessen machen die Menschen im Mittelmeerraum ihr Getreide zur Beilage oder schaffen durch die Zugabe von magerem Eiweiß mehr Gleichgewicht ...

Strebe nach Gesundheit mit 7 bis 10 Portionen Obst und Gemüse - Schnuller

Strebe nach Gesundheit mit 7 bis 10 Portionen Obst und Gemüse - Schnuller

Der Verzehr von sieben bis zehn Portionen Obst und Gemüse pro Tag, wie sie für die mediterrane Ernährung empfohlen werden, mag sehr viel erscheinen, aber es muss keine so große Herausforderung sein. Wenn Sie nicht die Früchte und das Gemüse lieben, die spezifisch mit der Mittelmeerdiät verbunden sind, ist das okay! Essen Sie jede Art von Obst oder Gemüse, die Sie ...

Die gesundheitlichen Vorteile von mediterranen Kräutern und Gewürzen - Dummies

Die gesundheitlichen Vorteile von mediterranen Kräutern und Gewürzen - Dummies

Sie haben vielleicht gedacht, dass der Oregano und Basilikum in Ihrer Spaghetti-Sauce lieferte nur einen deutlichen italienischen oder mediterranen Geschmack, aber diese kleinen Kräuter sind Pflanzen, was bedeutet, dass sie alle Arten von gesundheitlichen Vorteilen haben, die einen großen Einfluss auf Ihre allgemeine Gesundheit haben können. Einfache Gewürze wie Ingwer und Oregano enthalten Phytochemikalien, ...