Limits and gotchas: migrate from Dragonfly to KiviDB
Limits and gotchas. Migrate to KiviDB: Move from Redis, Valkey, ElastiCache, Redis Cloud, Aiven, Aerospike, Hazelcast and more: getting the data out, loading
What does not come across
.dfssnapshots. UseSAVE RDB.- Member expiry set with
HSETEX,FIELDEXPIREorSADDEX: see above. - Bloom filters and search indexes. Rebuild them on KiviDB.
- Live replication. There is no way to follow Dragonfly's writes, so the move needs a write freeze.
Gotchas
- KiviDB 1.2.0 starts empty, without an error, when
--preload-filenames a.dfssummary file. CheckDBSIZEafter every load. CONFIG SET notify-keyspace-eventsis refused by Dragonfly, so tools that follow writes through keyspace notifications copy nothing after the first pass.- Tested with Dragonfly 2.1:
SAVE RDB,BGSAVE RDB,--df_snapshot_format=false, RDB load by--dirand by--preload-file, RedisShakescan_reader, RIOT, and RIOT--structfor keys with member expiry, with every core data type, TTLs, streams with consumer groups and a second logical database.