redis批量灌库

需求:将批量数据灌入redis中

如果通过代码形式将数据灌入redis中,效率比较低,以下将根据redis的特性进行快速的批量灌库

环境:centos7

  1. 将数据整理成规定格式的文件,比如:

    SET key value
    SET key value
  2. 安装格式转换工具
    # yum install unix2dos
  3. 使用工具转换文件格式
    # unix2dos cf_reclist.redis
  4. 使用命令灌库
    # cat cf_reclist.redis | /usr/local/src/tools/redis-2.8.3/src/redis-cli  --pipe

原文地址:https://www.cnblogs.com/CoolJayson/p/9195611.html

时间: 2024-11-10 01:30:02

redis批量灌库的相关文章

MySQL批量建库导数据脚本

数据库名列表放入一个文件里面 # cat 00db.txt information_schema db_app_cms db_eop db_leader_cms db_leader_comment mysqldump出来的sql数据放入一个文件里面 # cat 00dbsql.txt -rw-r--r-- 1 root root    970701283 May 16 03:39 information_schema-2017-05-16-033001.sql -rw-r--r-- 1 root

Java使用Pipeline对Redis批量读写(hmset&hgetall)

一般情况下,Redis Client端发出一个请求后,通常会阻塞并等待Redis服务端处理,Redis服务端处理完后请求命令后会将结果通过响应报文返回给Client.这有点类似于HBase的Scan,通常是Client端获取每一条记录都是一次RPC调用服务端.在Redis中,有没有类似HBase Scanner Caching的东西呢,一次请求,返回多条记录呢?有,这就是Pipline.官方介绍 http://redis.io/topics/pipelining 通过pipeline方式当有大批

Java使用Pipeline对Redis批量读写(hmset&hgetall)

一般情况下,Redis Client端发出一个请求后,通常会阻塞并等待Redis服务端处理,Redis服务端处理完后请求命令后会将结果通过响应报文返回给Client. 这有点类似于HBase的Scan,通常是Client端获取每一条记录都是一次RPC调用服务端. 在Redis中,有没有类似HBase Scanner Caching的东西呢,一次请求,返回多条记录呢? 有,这就是Pipline.官方介绍 http://redis.io/topics/pipelining 通过pipeline方式当

ArcGIS超级工具SPTOOLS-按属性裁剪,矢量数据批量裁剪,矢量数据批量合库

1.1  按属性裁剪 操作视频: https://weibo.com/tv/v/HwaZRoosq?fid=1034:4376687438183117 按属性裁剪:可以图形表,也可以是非图形表,字段值相同导出一个数据,输出数据可以是数据库,也可以是文件夹,生成SHP或DBF. 输入表(要素):可以是表,或者要素 裁剪字段:字段值相同导出一个图层,如果是数字导出到数据库,由于数据库不能数字开头,前面自动加YL 输出空间:选文件夹导出SHP(DBF),选数据库导出到数据库 1.2  矢量数据批量裁剪

Redis批量删除的方法

Redis批量删除需要借助linux的xargs命令: redis-cli -h 127.0.0.1 -p 6379 keys test* | xargs -r -t -n1 ./redis-cli -h 127.0.0.1 -p 6379 del #首先查出所有test开头的key,然后批量删除 补充1:xargs命令后需加上参数-r,不然当keys的数量为0时,就会报错 (error) ERR wrong number of arguments for ‘del’ command 补充2:x

Redis批量导入数据的方法

有时候,我们需要给redis库中插入大量的数据,如做性能测试前的准备数据.遇到这种情况时,偶尔可能也会懵逼一下,这里就给大家介绍一个批量导入数据的方法. 先准备一个redis protocol的文件(redis protocol可以参考这里:https://redis.io/topics/protocol),这里是用java程序来输出的,java代码如下: <<RedisBatchTest>> public class RedisBatchTest { public static

怎样把redis编译为库,挪为己用?

其实这是个伪命题.因为只要正常编译redis,那么在 /deps/hiredis/ 目录下就会生成动态库文件 libhiredis.so. 为了便于学习redis源码,编写一些测试程序,并进行单步跟踪调试,可以新建一个子目录 /unit,在下面写自己的程序,如: /* * ex01.c * * Created on: Jan 9, 2017 * Author: xxf */ #include <stdio.h> #include "../src/sds.h" int mai

Redis查询当前库有多少个 key

info可以看到所有库的key数量 dbsize则是当前库key的数量 keys *这种数据量小还可以,大的时候可以直接搞死生产环境. dbsize和keys *统计的key数可能是不一样的,如果没记错的话,keys *统计的是当前db有效的key,而dbsize统计的是所有未被销毁的key(有效和未被销毁是不一样的,具体可以了解redis的过期策略)

使用python向Redis批量导入数据

1.使用pipeline进行批量导入数据.包含先使用rpush插入数据,然后使用expire改动过期时间 class Redis_Handler(Handler): def connect(self): #print self.host,self.port,self.table self.conn = Connection(self.host,self.port,self.table) def execute(self, action_name): filename = "/tmp/temp.t