Die Redis-Datenbank enthält fünf Datenstrukturen: Zeichenfolge, Hash-Wörterbuch, Liste, Satz und sortierter Satz.
Diese fünf Datenstrukturen haben unterschiedliche Nutzungsszenarien. Im Folgenden stellen wir ihre Nutzungsszenarien vor.
1. String
Die String-Datenstruktur ist ein einfacher Schlüsselwerttyp werden in sdshdr als String gespeichert). Mit dem String-Typ können die aktuellen Funktionen von Memcached vollständig und effizienter realisiert werden. Sie können auch die geplante Persistenz von Redis (Sie können den RDB-Modus oder AOF-Modus wählen), das Betriebsprotokoll und die Replikation sowie andere Funktionen nutzen. Redis bietet nicht nur die gleichen Get-, Set-, Incr-, Decr- und anderen Vorgänge wie Memcached, sondern auch die folgenden Vorgänge:
1.LEN niushuai:O(1)获取字符串长度 2.APPEND niushuai redis:往字符串 append 内容,而且采用智能分配内存(每次2倍) 3.设置和获取字符串的某一段内容 4.设置及获取字符串的某一位(bit) 5.批量设置一系列字符串的内容 6.原子计数器 7.GETSET 命令的妙用,请于清空旧值的同时设置一个新值,配合原子计数器使用
2, Hash
In Memcached packen wir häufig einige strukturierte Informationen in HashMap. Nach der Serialisierung auf der Client wird es als Zeichenfolgenwert (normalerweise im JSON-Format) gespeichert, z. B. der Spitzname, das Alter, das Geschlecht usw. des Benutzers. Wenn Sie zu diesem Zeitpunkt eines der Elemente ändern müssen, müssen Sie normalerweise die Zeichenfolge (JSON) herausnehmen, sie dann deserialisieren, den Wert eines bestimmten Elements ändern und sie dann in eine Zeichenfolge (JSON) serialisieren und speichern es zurück. Das einfache Ändern eines Attributs, um so viele Dinge zu tun, muss sehr teuer sein und ist nicht für Situationen geeignet, in denen gleichzeitige Vorgänge möglich sind (z. B. erfordern zwei gleichzeitige Vorgänge eine Änderung des Alters). Mit der Hash-Struktur von Redis können Sie nur einen bestimmten Attributwert ändern, genau wie beim Aktualisieren eines Attributs in der Datenbank. (Speichern, Lesen und Ändern von Benutzerattributen)
Liste
Liste ist einfach eine verknüpfte Liste (Redis verwendet eine doppelendige verknüpfte Liste, um Liste zu implementieren). Struktur. Mithilfe der Listenstruktur können wir problemlos Funktionen wie das Ranking der neuesten Nachrichten (z. B. TimeLine von Sina Blog) implementieren. Eine weitere Anwendung von List ist die Nachrichtenwarteschlange. Sie können die Push-Operation von List verwenden, um Aufgaben in der Liste zu speichern, und dann verwendet der Arbeitsthread die PoP-Operation, um die Aufgabe zur Ausführung herauszunehmen. Redis bietet auch eine API zum Betreiben eines bestimmten Elementsegments in der Liste. Sie können ein bestimmtes Elementsegment in der Liste direkt abfragen und löschen.
(Lernvideo-Sharing: Redis-Datenbank-Tutorial)
4. SetSet ist eine Kombination aus einer Reihe sich nicht wiederholender Werte. Einige Sammeldaten können mithilfe der von Redis bereitgestellten Set-Datenstruktur gespeichert werden. In der Weibo-Anwendung können beispielsweise alle Follower eines Benutzers in einer Sammlung und alle Fans in einer Sammlung gespeichert werden. Da Redis sehr benutzerfreundlich ist und Operationen wie Schnittmenge, Vereinigung und Differenz für Sammlungen bereitstellt, kann es für alle oben genannten Sammlungsoperationen sehr praktisch sein, Funktionen wie gemeinsame Aufmerksamkeit, gemeinsame Präferenzen und Freunde zweiten Grades zu implementieren. Sie können auch verschiedene Befehle verwenden, um auszuwählen, ob die Ergebnisse an den Client zurückgegeben oder in einer neuen Sammlung gespeichert werden sollen.1.共同好友、二度好友 2.利用唯一性,可以统计访问网站的所有独立 IP 3.好友推荐的时候,根据 tag 求交集,大于某个 threshold 就可以推荐
Redis-Datenbank-Tutorial
Das obige ist der detaillierte Inhalt vonEinführung in Nutzungsszenarien der Redis-Datenstruktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!