Sets
Introduction to Redis Data Structures:
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
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
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
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
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
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
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
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

Introduction to Redis Data Structures: Sets

  • 1.
  • 2.
    What is Redis? OpenSource, 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 RedisSets? 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 Casesfor 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 inRedis 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 internallystores 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 vsRedis 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 storewill 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 fora 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