利用pipeline批量插入数据到redis

 在推荐系统中,推荐候选集格式一般是,itemid  itemid_list。要把itemid作为key,推荐列表作为value批量插入到redis。

比如文件cf.data为:

1 cf_763500210    342900215:0.210596124675,372400335:0.209455077845,663500334:0.0450228848833,771300304:0.303416465385
2 cf_4272909287   0197309320:1.0,1977309242:1.0,2171809288:0.987105477748,4041809109:1.0,4247509287:0.61113311824,4306209287:1.0,4687609332:0.842522148763,5364909320:1.0,7006909116:1.0,7578709264:0.300615689335,9405509328:0.710187812454,9578209232:1.0,9869609287:0.808605591539

在item前加cf,是为了标注此推荐候选集是有CF算法计算得到的。

1 cat cf.data | awk -F "\t" '{print "set" " " $1 " " $2}' > cf.insert
1 cat cf.insert | /home/app/redis-4.0.9/src/redis-cli --pipe  

这时候会报错,那是字符编码格式问题,我的系统环境是LINUX。提前说一下哦,避免不必要的误会。

1 unix2dos data.insert 

此时,可以看到5条数据批量插入成功,0个错误。

猜你喜欢

转载自www.cnblogs.com/luozeng/p/9115149.html
今日推荐