开发者社区> exinnet> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

从MySQL到Redis 提升数据迁移的效率

简介:
+关注继续查看
场景是从MySQL中将数据导入到Redis的Hash结构中。当然,最直接的做法就是遍历MySQL数据,一条一条写入到Redis中。这样可能没什么错,但是速度会非常慢。而如果能够使MySQL的查询输出数据直接能够与Redis命令行的输入数据协议相吻合,可能就省事多了。
根据测试800w的数据迁移,时间从90分钟缩短到2分钟。
具体案例如下:

MySQL数据表结构:


CREATE TABLE events_all_time (
 id int(11) unsigned NOT NULL AUTO_INCREMENT,
 action varchar(255) NOT NULL,
 count int(11) NOT NULL DEFAULT 0,
 PRIMARY KEY (id),
 UNIQUE KEY uniq_action (action)
 ); 


Redis存储结构:


HSET events_all_time [action] [count] 

下面是重点,能过下面SQL语句将MySQL输出直接变更成redis-cli可接收的格式:


-- events_to_redis.sql

SELECT CONCAT(
 "*4\r\n",
 '$', LENGTH(redis_cmd), '\r\n',
 redis_cmd, '\r\n',
 '$', LENGTH(redis_key), '\r\n',
 redis_key, '\r\n',
 '$', LENGTH(hkey), '\r\n',
 hkey, '\r\n',
 '$', LENGTH(hval), '\r\n',
 hval, '\r'
 )
 FROM (
 SELECT
 'HSET' as redis_cmd,
 'events_all_time' AS redis_key,
 action AS hkey,
 count AS hval
 FROM events_all_time
 ) AS t 

然后用管道符重定向输出即可:


mysql stats_db --skip-column-names --raw < events_to_redis.sql | redis-cli --pipe






版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
利用JDBC进行mysql到opengauss的数据迁移
利用JDBC进行mysql到opengauss的数据迁移
0 0
信创迁移适配实战-MySQL到达梦数据库DM8的数据迁移
信创迁移适配实战-MySQL到达梦数据库DM8的数据迁移
0 0
挂载并初始化Linux数据盘,完成MySQL数据迁移
挂载并初始化Linux数据盘,完成MySQL数据迁移
0 0
MySQL数据迁移那些事儿
在平时工作中,经常会遇到数据迁移的需求,比如要迁移某个表、某个库或某个实例。根据不同的需求可能要采取不同的迁移方案,数据迁移过程中也可能会遇到各种大小问题。本篇文章,我们一起来看下 MySQL 数据迁移那些事儿,希望能帮助到各位。
0 0
navicat工具来将SQL Server数据迁移到MySQL
navicat工具来将SQL Server数据迁移到MySQL
0 0
文件存储HDFS版和数据库MySQL双向数据迁移
本文档介绍如何使用Sqoop工具实现文件存储HDFS版和关系型数据库MySQL之间的双向数据迁移。
0 0
yugong阿里巴巴去Oracle数据迁移同步工具(全量+增量,目标支持MySQL/DRDS)
2008年,阿里巴巴开始尝试使用 MySQL 支撑其业务,开发了围绕 MySQL 相关的中间件和工具,Cobar/TDDL(目前为阿里云DRDS产品),解决了单机 Oracle 无法满足的扩展性问题,当时也掀起一股去IOE项目的浪潮,愚公这项目因此而诞生,其要解决的目标就是帮助用户完成从 Oracle 数据迁移到 MySQL 上,完成去 IOE 的重要一步工作。
0 0
从Mysql到阿里云时序数据库InfluxDB的数据迁移
作为阿里在APM和IOT领域的重要布局,时序数据库承载着阿里对于物理网和未来应用监控市场的未来和排头兵,作为业内排名第一的时序数据库InfluxDB,其在国内和国际都拥有了大量的用户,阿里适逢其时,重磅推出了阿里云 InfluxDB®。
2651 0
+关注
exinnet
淘宝技术专家
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Redis&MongoDB的同步、迁移以及混合云场景构建
立即下载
MySQL 5.7让优化更轻松
立即下载
阿里云Redis——读写分离
立即下载