python实现基于redis的搜索

1 篇文章 0 订阅
1 篇文章 0 订阅
之前用grails插件实现的版本跟grails耦合太强,不适合于单独运行。另外用python实现了一个版本。
项目地址 https://github.com/isoloist/redis-search-python。
redis_search_test.py 简单介绍了如何使用。

在这里先介绍下我遇到的场景。在Mysql中有大于一百万条记录需要初始化进redis,并提供前缀搜索。在grails的bootstrap中执行,这个过程太漫长了,需要4-5个小时,而且影响应用的正常启动。改为用python实现后,可以直接在服务器上单独运行python脚本来完成这件事情。由于python的多线程对多核CPU的利用率低下,在尝试多线程后又放弃了这种做法。如果你希望用python脚本为大量数据建立redis索引,建议开启多个python进程,可以充分利用多核CPU的运算能力。在我的测试环境6核32G内存的服务器上,5个进程只需要10分钟就能为40万条数据记录建立redis索引。PS:redis的pipeline对批量写入性能提升非常明显。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值