valkey-introduction - Man Page

Introduction

Description

Valkey is an open source (BSD licensed), in-memory data structure store used as a database, cache, message broker, and streaming engine. Valkey provides valkey-data-types(7) data structures such as valkey-strings(7), valkey-hashes(7), valkey-lists(7), valkey-sets(7), valkey-sorted-sets(7) with range queries, valkey-bitmaps(7), valkey-hyperloglogs(7), valkey-geospatial(7) geospatial indexes, and valkey-streams-intro(7) streams. Valkey has built-in valkey-replication(7), valkey-eval-intro(7) Lua scripting, valkey-lru-cache(7) LRU eviction, valkey-transactions(7), and different levels of valkey-persistence(7) on-disk persistence, and provides high availability via valkey-sentinel(1) and automatic partitioning with valkey-cluster-tutorial(7) Valkey Cluster.

You can run atomic operations on these types, like append(3valkey); hincrby(3valkey); pushing an element to a list; sinter(3valkey), sunion(3valkey) and sdiff(3valkey); or zrange(3valkey).

To achieve top performance, Valkey works with an in-memory dataset. Depending on your use case, Valkey can persist your data either by periodically valkey-persistence(7) dumping the dataset to disk or by valkey-persistence(7) appending each command to a disk-based log. You can also disable persistence if you just need a feature-rich, networked, in-memory cache.

Valkey supports valkey-replication(7) asynchronous replication, with fast non-blocking synchronization and auto-reconnection with partial resynchronization on net split.

Valkey also includes:

You can use Valkey from most programming languages. See https://valkey.io/clients/\c.

Valkey is written in ANSI C 11 with Atomics and a few GCC/Clang built-ins like __builtin_clz(). It works on most POSIX systems like Linux, *BSD and MacOS, without external dependencies. Linux and MacOS are the two operating systems where Valkey is developed and tested the most, and we recommend using Linux for deployment. Valkey may work on Solaris-derived systems like Illumos, but support is best effort. Supported hardware includes x86-64 (AKA amd64), x86 (32-bit) and AArch64 (64-bit ARM). It is also known to work on IBM z/Architecture like s390x and builds for this system are available from the Fedora distro. There is no official support for Windows builds.

Referenced By

valkey(7), valkey-server(1).

2025-01-08 8.0.2 Valkey Manual