关于Redis批量写入的介绍

关于Redis批量写入的介绍,第1张

最近测试redis性能,需要批量插入1千万条以上的数漏耐据,

简单进行了研究,大概有以下几种方法:

一:java程序调用,简单的for循环,通过Jedis的方法,直接插入,

       至于速度,不用看,不用试,根本不行,就不给实现了。

二:通过shell脚本,也比较简单,但也是因为要通过port端口的形式,

       连接到redis,速度也是慢的不行,放弃。

三:通过redis提供管道,感觉这种方法是最靠谱的,一下是实现:

 步骤1:首先简单写一个shell脚本:

目的是生成一个用批量插入的脚本文件,

步骤2:这里linux或者windows上生成的文件不能直接当做redis语句来跑,

简单来说,就是逗启因为linux,windows和dos的换行并不一样,

所以需要简单转换一下:

转换的方法有好多种:

1:一般Linux发行版中都带有这个小工具,只能把DOS转换为UNIX文件,命令如下:

上面的命令会去掉行尾的^M符号。(如果机器上没有安装nuix2dos,直接用方法2即可山搜如)

2:用vim,vim是vi的改进版本,使用方式:

一行命令即可,保存退出,

步骤3:就是跑脚本了,通过redis提供的管道--pipe形式,

三步即可,完成redis的批量插入,速度,在2000万条的情况下,生成脚本的速度稍慢,插入的速度还在几分钟,

速度可以说是非常快了~

本文来自PHP中文网的 redis教程 ​栏目: https://www.php.cn/redis/

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、一个高性能的key-value数据库。并提供多种语言的API。说到Key-Value数据库NoSQL数据库可以想到MongoDB。

和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都漏搏支持push/pop、add/remove及取交集并集和差集及更丰富的 *** 作,而且这些 *** 作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改 *** 作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

二、 基于windows 64bit安装

安装之前请务必确定你是Administrator管理员账号的windows用户!如果不是 Administrator用户,则可能需要以管理员身份运行. 或者参考 Windows 7 启用超级管理员administrator账户的N种方法

在redis的下载页面有这样的一段话,说的意思是指redis项目未有提供对windows系统的支持,而Microsoft Open Tech提供了一个基于win64的redis实现。那就是说只支持64位系统了,32位的windows系统的同学就老老实实如枝的换系统去吧。(*^__^*)

The Redis project does not officially support Windows. However, the Microsoft Open Tech group develops and maintains this Windows port targeting Win64.

1、 下载与安装

下载渣搜敏地址:https://github.com/MSOpenTech/redis/releases/download/win-2.8.19/redis-2.8.19.zip

下载成功后解压可以看到如下文件

clip_image002

Windows下的安装几乎没有什么过程,解压后就可以使用。简单介绍下着几个exe文件的用途:

redis.windows.conf redis的配置文件

redis-benchmark.exe 测试工具,测试redis的读写性能情况

redis-check-aof.exe aof 修复检查日志

redis-check-dump.exe dump 检查数据库文件

redis-cli.exe redis客户端程序

redis-server.exe redis服务器程序

三、 使用redis工具

1、 redis-server 双击运行或者用dos命令打开都可以,成功运行后可以看到界面内容如下:

clip_image004

会带有版本号、运行进程号、运行端口信息。并且会提醒使用redis.windows.conf配置文件。如果你启动失败的话,提醒内存问题。那就需要修改下配置文件的maxheap配置(默认情况下该配置没有赋值的,且没有开启),修改如下:

# maxheap <bytes>

maxheap 1024000000


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12276658.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存