为了账号安全,请及时绑定邮箱和手机立即绑定

如何把Excel大批量数据去重后准确而快速地导入MySQL?

如何把Excel大批量数据去重后准确而快速地导入MySQL?

梦里花落0921 2019-03-09 15:50:06
问题描述客户表users有中如下字段:有5个销售组,每个销售组每个月至少导入一批10万条左右的数据到表中,且只能导入自己销售组的数据同一个销售组内,状态正常的客户(state=0或1)的手机号不可重复,重复的舍弃不同销售组间,客户手机号可以重复每个销售组正常客户数预估在一千万内要求准确而快速的导入到users表中自己尝试过的方法及问题目前是把users表中的数据按销售组ID同步到redis中,用set集合保存手机号SADD users:1 13100010001 13100010002 13100010003SADD users:2 13100020001 13100020002 13100020003SADD users:3 13100030001 13100030002 13100030003导入时,先把excel表数据按文件ID(这里假设为8)写入redis,得到set集合mobiles:8再与销售组原始数据set集合users:1做差集,得到差集diff:1最后把差集写入mysqlSADD mobiles:8 13100010001 13100010004SDIFFSTORE diff:1 mobiles:8 users:1【问题】 管理端有好几处地方能增删改users表,加上未知原因,导致mysql与redis两边数据不一致你期待的结果是什么?有无更好的方法,把数据准确而快速地导入到mysql中?
查看完整描述

2 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

其实问题主要是redis和mysql数据会出现不一致。如果可以保证一致的话,现在的办法也是可行的。

如果没办法保证,则只能使用mysql验证手机号是否存在。


查看完整回答
反对 回复 2019-03-09
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

gid和mobile 唯一索引,然后读取excel表,直接分批insert 表

查看完整回答
反对 回复 2019-03-09
  • 2 回答
  • 0 关注
  • 991 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信