Amazon MemoryDB

awsCacheaws-memorydb

Durable in-memory Valkey and Redis OSS database with a Multi-AZ transactional log.

Provider
aws
Kind
Cache
Category
Data
Properties · 6 set by this component
propertytypevaluesrequiredkind defaultthis component
dataTiering · component propertyboolean—nofalseinherited
engine · component propertyenumvalkey | redis-ossno—inherited
evictionPolicyenumlru | lfu | ttl | noneno—inherited
hashing · advancedenumnone | consistentnononeinherited
invalidationenumttl | event | nonenottlinherited
managedboolean—nofalse▸ true
materialised · advancedboolean—nofalseinherited
multiRegion · component propertyboolean—nofalseinherited
numReplicasPerShard · component propertyinteger—no1inherited
numShards · component propertyinteger—no1inherited
persistenceboolean—nofalse▸ true
readBarrier · advancedboolean—nofalseinherited
replicationenumnone | single-az | multi-az | multi-regionnonone▸ multi-az
shardsinteger—no—inherited
structure · advancedenumkey-value | bloom-filter | hash-set | sorted-setnokey-value▸ key-value
tier · advancedenumcore | edgenocore▸ core
ttlJitter · advancedboolean—nofalseinherited
ttlSecondsinteger—no—inherited
usedAsPrimaryStore · advancedboolean—nofalse▸ true
Rules that apply · 3

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

cache-as-primary-store-without-persistence

This cache is the only copy of its data and has persistence turned off. A restart loses the data outright.

  • — all of these hold:
  • — the node's `usedAsPrimaryStore` is true
  • — the node's `persistence` is false
cache-missing-eviction-policy

A cache with no declared eviction policy inherits whatever the vendor chose, and most vendors default to evicting nothing. The cache fills up and then starts refusing writes.

  • — any of these hold:
  • — the node's `evictionPolicy` has no value
  • — the node's `evictionPolicy` is "none"
materialised-cache-without-rebuild-path

A cache holding materialised views has to be rebuildable from a durable store or a worker. With nothing feeding it, a cold cache is a permanent gap rather than a slow start.

  • — all of these hold:
  • — the node's `materialised` is true
  • — this does not hold:
  • — the node has at least one incoming edge from a sql-database, nosql-database, worker or stream
Use it in a design
nodes:
  - { id: "memorydb", component: "aws-memorydb" }
Other Cache products · 36
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Amazon MemoryDB: durable in-memory database compatible with Valkey and Redis OSS. "What is MemoryDB"
# describes data stored durably across multiple Availability Zones in a Multi-AZ transactional log and
# usable as a primary database; "At-Rest Encryption in MemoryDB" says at-rest encryption is always
# enabled; "CreateCluster" defaults a cluster to 1 shard with 1 replica per shard.
schemaVersion: "1"
type: "component"
id: "aws-memorydb"
kind: "cache"
provider: "aws"
docs: "https://docs.aws.amazon.com/memorydb/latest/APIReference/API_CreateCluster.html"
defaults:
  managed: true
  persistence: true
  usedAsPrimaryStore: true
  replication: "multi-az"
  structure: "key-value"
  tier: "core"
properties:
  engine:
    type: "enum"
    values: ["valkey", "redis-oss"]
  numShards:
    type: "integer"
    default: 1
  numReplicasPerShard:
    type: "integer"
    default: 1
  multiRegion:
    type: "boolean"
    default: false
  dataTiering:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/aws-memorydb.md