Heim >häufiges Problem >Welche Datenbank ist Redis?
Redis ist eine Open-Source-Schlüsselwertdatenbank vom Protokolltyp, die in der ANSI-C-Sprache geschrieben ist, Netzwerke unterstützt, speicherbasiert und persistent sein kann und APIs in mehreren Sprachen bereitstellt. Seit dem 15. März 2010 wird die Entwicklung von Redis von VMware gehostet. Seit Mai 2013 wird die Entwicklung von Redis von Pivotal gesponsert.
Empfohlener Kurs: Redis Tutorial.
Redis ist ein Schlüsselwertspeichersystem. Ähnlich wie Memcached unterstützt es relativ mehr gespeicherte Werttypen, einschließlich String (String), Liste (verknüpfte Liste), Set (Satz), Zset (sortierter Satz – geordneter Satz) und Hash (Hash-Typ). Diese Datentypen unterstützen alle Push/Pop-, Add/Remove-, Schnitt-, Vereinigungs-, Differenz- und umfangreichere Operationen und diese Operationen sind alle atomar. Auf dieser Basis unterstützt Redis verschiedene Sortierarten. Wie bei Memcached werden Daten im Speicher zwischengespeichert, um die Effizienz sicherzustellen. Der Unterschied besteht darin, dass Redis regelmäßig aktualisierte Daten auf die Festplatte schreibt oder Änderungsvorgänge in zusätzliche Datensatzdateien schreibt und auf dieser Grundlage eine Master-Slave-Synchronisation (Master-Slave) erreicht wird.
Redis ist eine leistungsstarke Schlüsselwertdatenbank. Das Aufkommen von Redis hat die Mängel der Schlüssel-/Wertspeicherung wie Memcached weitgehend ausgeglichen und kann in manchen Situationen eine sehr gute Ergänzung zu relationalen Datenbanken spielen. Es bietet Java, C/C++, C#, PHP, JavaScript, Perl, Object-C, Python, Ruby, Erlang und andere Clients, was sehr bequem zu verwenden ist.
Redis unterstützt die Master-Slave-Synchronisation. Daten können vom Master-Server mit einer beliebigen Anzahl von Slave-Servern synchronisiert werden, und der Slave-Server kann ein Master-Server sein, der mit anderen Slave-Servern verbunden ist. Dadurch kann Redis eine einstufige Baumreplikation durchführen. Beim Speichern können Daten absichtlich oder unabsichtlich geschrieben werden. Da der Publish/Subscribe-Mechanismus vollständig implementiert ist, kann die Slave-Datenbank, wenn sie den Baum irgendwo synchronisiert, einen Kanal abonnieren und den vollständigen Nachrichtenfreigabedatensatz des Master-Servers empfangen. Die Synchronisierung ist hilfreich für die Skalierbarkeit und Datenredundanz von Lesevorgängen.
Die offizielle Website-Adresse von Redis ist sehr leicht zu merken, sie lautet redis.io. (Ich habe speziell nachgesehen und festgestellt, dass das Domainnamensuffix io zum nationalen Domainnamen gehört, bei dem es sich um das Territorium des Britischen Indischen Ozeans handelt.)
Derzeit finanziert Vmware die Entwicklung und Wartung des Redis-Projekts.
Autor
Der Autor von Redis heißt Salvatore Sanfilippo, stammt aus Sizilien, Italien und lebt jetzt in Catania. Arbeitet derzeit für Pivotal. Er verwendet den Online-Namen Antirez.
Leistung
Das Folgende sind die offiziellen Benchmark-Daten: [1]
Der Test führte 50 gleichzeitige Ausführungen durch 100.000 Anfragen.
Der festgelegte und erhaltene Wert ist eine 256-Byte-Zeichenfolge.
Auf der Linux-Box läuft Linux 2.6, also X3320 Xeon 2,5 GHz.
Die Textausführung verwendet die Loopback-Schnittstelle (127.0.0.1).
Ergebnis: Die Lesegeschwindigkeit beträgt 110.000 Mal/s und die Schreibgeschwindigkeit beträgt 81.000 Mal/s.
Unterstützte Sprachen
Viele Sprachen umfassen Redis-Unterstützung, darunter:
ActionScript
|
Common Lisp | HaxeObjective-C | R | |||||||||||||||||||||||||
C |
Dart | Io | Perl | Ruby | ||||||||||||||||||||||||
C++ |
Erlang | Java | PHP | Scala | ||||||||||||||||||||||||
C# | Los | Knoten .js | Pure Data | Smalltalk | ||||||||||||||||||||||||
Clojure | Haskell | Lua | Python | Tcl |
Das obige ist der detaillierte Inhalt vonWelche Datenbank ist Redis?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!