This article mainly introduces the five data types of redis and their differences.
String string: (Recommended learning: Redis video tutorial)
The string type is Redis The most basic data storage type in Redis is a sequence of bytes. It is binary safe in Redis, which means that this type can accept data in any format, such as JPEG image data or Json object description information, etc. It is a standard key-value, generally used to store strings, integers and floating point numbers. The maximum data length that Value can hold is 512MB
Application scenario: A very common scenario is used to count the number of website visits, the number of people currently online, etc. incr command (operation)
List list:
Redis' list allows users to push or pop elements from both ends of the sequence. The list is composed of multiple string values. The ordered and repeatable sequence is a linked list structure, so the time complexity of adding elements to both ends of the list is 0(1), and the closer to the two ends of the list, the faster it is to obtain the elements. This means that even for a list with tens of millions of elements, getting the 10 records at the head or tail is extremely fast. The maximum number of elements that can be contained in a List is 4294967295.
Application scenarios: 1. Latest news rankings. 2. Message queue to complete message exchange between multiple programs. You can use the push operation to store the task in the list (producer), and then the thread uses the pop operation to take the task out for execution. (Consumer)
Hash hash:
Hash in Redis can be seen as a map container with String key and String value, and multiple keys can be The value is stored in a key. Each Hash can store 4294967295 key-value pairs.
Application scenarios: such as storing, reading, modifying user attributes (name, age, pwd, etc.)
Collection set:
Redis collection It is unordered and non-repeatable. Like a list, it is very efficient when performing insertion and deletion and determining whether an element exists. The biggest advantage of sets is that they can perform intersection, union, and difference operations. The maximum number of elements that a Set can contain is 4294967295.
Application scenarios: 1. Use intersection to find common friends. 2. Using uniqueness, all independent IPs that visit the website can be counted. 3. When friends recommend, the intersection is found based on the tag. If it is greater than a certain threshold (critical value), the recommendation can be made.
Ordered set sorted set (zset):
is very similar to set. They are both collections of strings and do not allow duplicate members to appear in a set. . The difference between them is that each member of the ordered set has a score associated with it, and Redis uses the score to sort the members of the set from small to large. Although the members of a sorted set must be unique, scores can be repeated.
Application scenario: It can be used for the score ranking list of a large-scale online game. Whenever the player's score changes, zadd can be executed to update the player score (score), and then the top ten points can be obtained through zrange. User Info.
For more Redis-related technical articles, please visit the Introduction to Using Redis Database Tutorial column to learn!
The above is the detailed content of Differences in redis data types. For more information, please follow other related articles on the PHP Chinese website!