Redis TutorialRedis tutorial provides basic and advanced concepts of Redis Database. Our Redis tutorial is designed for beginners and professionals both. Redis is a No SQL database which works on the concept of key-value pair. Our Redis Tutorial includes all topics of Redis such as what is redis, how to install redis, redis commands, data types, keys, lists, strings, hashes, sets, sorted sets, transaction, scripting, connection, server, interview questions etc. What is RedisRedis is a NoSQL database which follows the principle of key-value store. The key-value store provides ability to store some data called a value, inside a key. You can recieve this data later only if you know the exact key used to store it. Redis is a flexible, open-source (BSD licensed), in-memory data structure store, used as database, cache, and message broker. Redis is a NoSQL database so it facilitates users to store huge amount of data without the limit of a Relational database. Redis supports various types of data structures like strings, hashes, lists, sets, sorted sets, bitmaps, hyperloglogs and geospatial indexes with radius queries. Redis ArchitectureThere are two main processes in Redis architecture:
These client and server can be on same computer or two different computers. Redis server is used to store data in memory . It controls all type of management and forms the main part of the architecture. You can create a Redis client or Redis console client when you install Redis application or you can use Features of RedisFollowing is the list of main features of Redis: Speed: Redis stores the whole dataset in primary memory that's why it is extremely fast. It loads up to 110,000 SETs/second and 81,000 GETs/second can be retrieved in an entry level Linux box. Redis supports Pipelining of commands and facilitates you to use multiple values in a single command to speed up communication with the client libraries. Persistence: While all the data lives in memory, changes are asynchronously saved on disk using flexible policies based on elapsed time and/or number of updates since last save. Redis supports an append-only file persistence mode. Check more on Persistence, or read the AppendOnlyFileHowto for more information. Data Structures: Redis supports various types of data structures such as strings, hashes, sets, lists, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. Atomic Operations: Redis operations working on the different Data Types are atomic, so it is safe to set or increase a key, add and remove elements from a set, increase a counter etc. Supported Languages: Redis supports a lot of languages such as ActionScript, C, C++, C#, Clojure, Common Lisp, D, Dart, Erlang, Go, Haskell, Haxe, Io, Java, JavaScript (Node.js), Julia, Lua, Objective-C, Perl, PHP, Pure Data, Python, R, Racket, Ruby, Rust, Scala, Smalltalk and Tcl. Master/Slave Replication: Redis follows a very simple and fast Master/Slave replication. It takes only one line in the configuration file to set it up, and 21 seconds for a Slave to complete the initial sync of 10 MM key set on an Amazon EC2 instance. Sharding: Redis supports sharding. It is very easy to distribute the dataset across multiple Redis instances, like other key-value store. Portable: Redis is written in ANSI C and works in most POSIX systems like Linux, BSD, Mac OS X, Solaris, and so on. Redis is reported to compile and work under WIN32 if compiled with Cygwin, but there is no official support for Windows currently. Redis IndexPrerequisiteBefore learning Redis, you must have the basic knowledge of SQL. AudienceOur Redis Tutorial is designed to help beginners and professionals. ProblemWe assure that you will not find any problem in this Redis tutorial. But if there is any mistake, please post the problem in contact form. Next TopicRedis vs. RDBMS |