This article lists some practical redis tools commonly used in work, including redis migration tools redis-port, redis-migrate-tool, memory analysis tool redis-rdb-tools, query Analysis tool redis-faina.
Recommended: redis tutorial
redis-port
github link
https: //github.com/CodisLabs/redis-port
Introduction
<1>Expansion and contraction of redis cluster
<2>Data heterogeneous synchronization, from redis to mysql, etc.
<3>Split the original redis cluster into multiple clusters according to business lines
<4>Redis current memory usage, key proportion Analysis
<5>Detection and removal of useless data
<6>Backup of rdb files
Principle
Simply speaking, it is Disguise yourself as a slave and deceive the master to achieve data flow synchronization.
Send sync command->Receive rdb->Parse rdb->Filter->Play back rdb->Play back the synchronized data pushed by master
Note: We mainly use this tool For migrating non-redis clusters to redis clusters, the advantage is that it supports migration of specified prefix keys, but the disadvantage is that it does not support real-time migration to redis clusters.
redis-migrate-tool
github link
https://github.com/vipshop/redis-migrate-tool
Features:
<1>Fast.
<2>Multiple threads.
<3>Redis-based replication.
<4>Live migration.
<5>During the migration process, the source cluster will not affect the external services provided.
<6>Heterogeneous migration.
<7>Supports Twemproxy cluster, redis cluster cluster, rdb file and aof file.
<8>Filtering function.
<9>When the target cluster is Twemproxy, the data will be directly imported to the backend redis, skipping Twemproxy.
<10>Migration status display.
<11>Perfect data sampling verification.
The source of the migration tool can be: a separate redis instance, twemproxy cluster, redis cluster, rdb file, aof file.
The target of the migration tool can be: individual redis instance, twemproxy cluster, redis cluster, rdb file.
Note: This tool is mainly used to migrate non-redis clusters to redis clusters. The advantage is that it supports real-time migration (the program can adopt a double-write strategy to compensate), but the disadvantage is that it does not support the migration of keys with specified prefixes.
redis-rdb-tools
github link
https://github.com/sripathikrishnan/redis-rdb-tools
Introduction
Parse the dump.rdb file of redis, analyze the memory, and export the data in JSON format.
The functions provided are:
<1>Generate memory report
<2>Dump file to JSON
<3>Use The standard diff tool compares two dump files
redis-rdb-tools is developed in python language.
Note: This tool is mainly used to analyze redis memory usage and key sample distribution
redis-faina
github link
https://github.com/facebookarchive/redis-faina
Introduction
redis-faina is a redis query analysis gadget developed and open sourced by Instagram. It uses redis The monitor command is implemented by monitoring the query executed on redis and counting the query characteristics over a period of time. Since the redis monitor has an impact on performance, it is recommended not to keep the monitor on for analysis when using it. Timed sampling can be used for sample analysis over a period of time.
redis-faina is developed in Python language.
Related recommendations:
mysql video tutorial: https://www.php.cn/course/list/51.html
The above is the detailed content of Introduction to some common tools in redis. For more information, please follow other related articles on the PHP Chinese website!