In this overview of Redis Data Sets, we'll present:
What is Redis?
What are Redis sets?
Common use cases for Redis sets
Set operations in Redis
Internal implementation
Redis Sets vs. Redis Bitmaps
2. What is Redis?
Open Source, NoSQL Database
Used by: Twitter, Pinterest, GitHub
Stores Advanced Data Structures
Client Support: Java, C, Node.js etc
Introduction to Redis Data Structures: Sets
3. What are Redis Sets?
Unordered collection of Strings
Provides constant time addition, removal and membership checks
Supports reasonably fast union, intersection, subtraction operations between
sets
Does not allow repeated values
Introduction to Redis Data Structures: Sets
4. Common Use Cases for Sets
Used to track unique items
Can be used to denote as “belongs to” or
similar relationship
Sets can only be used to combine
relationships, i.e.
union/intersection/subtraction of sets
Introduction to Redis Data Structures: Sets
5. Set Operations in Redis
SADD SMEMBERS
SCARD SMOVES
SDIFF SPOP
SINTER SUNION
The complete list of set related Redis commands can be found here.
Introduction to Redis Data Structures: Sets
6. Internal Implementation
Redis internally stores Sets as dictionaries
Certain small sets (radix 10 in the range #
of 64 bit signed integers) called IntSets
Searches within the array are performed
through binary search
Introduction to Redis Data Structures: Sets
7. Redis Sets vs Redis Bitmaps
Sets are easier to manage,
program & debug
Work well for most apps
Small to medium size data
structures
> 232 Bits Domain SizeIntroduction to Redis Data Structures: Sets
Bitmaps are suitable over a large
number of keys
Depends on size & performance
of keys
8. Summary
The in-memory store will lead to really fast access so that the front-end feels
snappy
Redis set operations are either constant time or linear
Great for creating sets for other things you may wish to expose as filters in your
Visual Profiler like tags, price ranges, etc
Introduction to Redis Data Structures: Sets
9. Sign Up for a free 30 day Trial
Thanks for reading! Full Article here
Hosting & management for MongoDB® and Redis®. NoSQL management Simplified.
Click here for more information on Redis Hosting