This is not a Wikipedia article: It is an individual user's work-in-progress page, and may be incomplete and/or unreliable. For guidance on developing this draft, see Wikipedia:So you made a userspace draft. Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
Developer(s) | Redis Labs |
---|---|
Stable release | 4.5.0
/ May 2017[1] |
Written in | ANSI C Golang |
Operating system | Cross-platform See below |
Available in | English |
Type | Data structure store / Distributed Key-Value / Operational data store |
Website | redislabs |
Redis Enterprise Pack is an in-memory database server implementing a fully distributed, in-memory key-value with additional durability, clustering, and High Availability (HA) options. Just like Redis Open Source that this is based on, Redis Enterprise Pack supports multiple abstract data structures, such as strings, lists, maps, sets, sorted sets, hyperloglogs, bitmaps and geo-spatial indexes. Redis Enterprise Pack is also used by Redis Labs for their managed Redis services Redis Enterprise Cloud and Redis Enterprise Cloud Private.
Architecture
editPersistence
editWhile Redis Enterprise Pack supports the standard persistence models of Redis (RDB and AOF), it adds an additional AOF persistence type to be able to sync to storage on every database write. This gives it the ability to keep data on disk more up to date than other implementations of Redis.[2]
Replication
editIntercluster Replication
editReplicaOf[3] allows designating a database to be a replica (destination) of one or more databases (sources) hosted in Redis Enterprise Pack. Once you have set this up and the initial data load is completed, all write commands are synchronized from the source(s) to the destination. This allows you to keep a database (destination) that is an exact replica of other databases.
Intracluster Replication
editIntracluster replication requires there to be at least two nodes in the cluster to separate the master from the slave for a given shard. The slave shard is constantly synchronized with the master shard at the speed of memory/network. If the master node fails, an automatic failover occurs and the slave node is promoted to be the new master node. When the old master node recovers, it becomes the slave node of the new master node. This auto-failover mechanism guarantees data is served with minimal to no interruption.[4]
Clustering
editTo overcome these limitations of Redis Open Source, Redis Enterprise Pack supports database clustering. A database cluster is a set of Redis processes, in which each process manages a subset of the database’s keyspace. This allows you to overcome scaling challenges through horizontal scaling by using the RAM resources of multiple cores and multiple servers.[5]
Redis Enterprise Flash
editTypically a Redis database is an in memory database, but with Redis Enterprise Flash a database can span RAM and dedicated flash memory (e.g. NVMe SSDs). This enables a Redis database to have much larger datasets with RAM-like latency and performance, but at dramatically lower cost than an all-RAM database. All while staying 100% compatible with Redis and Redis clients.[6]
Licensing and Support
editRedis Enterprise Pack is a packaged version of Redis Lab's open source software and closed source technologies and is available in a commercial edition and a fully featured trial edition. The trial version is limited to four shards and thirty (30) days.[7]. Redis Enterprise Pack is available for Ubuntu, Red Hat/CentOS, Oracle Linux, Amazon Linux, Docker, Pivitol Cloud Foundry.[8]
Enterprise support is provided by Redis Lab's in-house support team.
Common Use Cases
edit- Caching
- Time Series Data
- Geo Spatial
- Gaming, especially leaderboards
Notable Customers
editUsers of Redis Enterprise Pack include:
References
editExternal links
edit
Category:Distributed computing architecture
Category:NoSQL
Category:Cross-platform software
Category:Client-server database management systems
Category:Database-related software for Linux
Category:Applications of distributed computing
Category:Databases
Category:Data management
Category:Distributed data stores
Category:Cache (computing)