Before you start: migrate from Dragonfly to KiviDB

Sizing. Give KiviDB at least Dragonfly's usedmemory plus headroom. Memory use per key differs between the two, so for a large dataset load a copy into a…

export REDISCLI_AUTH="$DRAGONFLY_PASSWORD"
D="redis-cli -h dragonfly.internal -p 6379"

$D INFO server | grep -E 'dragonfly_version|redis_version'
$D INFO keyspace
$D INFO memory | grep -E '^used_memory_human|maxmemory_human'
$D CONFIG GET dbfilename
$D CONFIG GET dir
$D INFO commandstats | grep -E 'cmdstat_(eval|evalsha|hsetex|saddex|fieldexpire|ft\.|bf\.)'
If you seeThen
cmdstat_hsetex, cmdstat_saddex or cmdstat_fieldexpireSome keys carry per-member expiry. Those keys stop every file and DUMP-based method: see member expiry.
cmdstat_eval or cmdstat_evalshaUse the lua or full build, or turn Lua on for the KiviDB Cloud database.
cmdstat_ft.*Recreate the indexes with FT.CREATE after the move.
cmdstat_bf.*Bloom filters don't come across. Rebuild them from the source data, or drop them.

Sizing. Give KiviDB at least Dragonfly's used_memory plus headroom. Memory use per key differs between the two, so for a large dataset load a copy into a test KiviDB and read its used_memory.