请教下Excel前端导入,后端go程序读取存到数据库问题

1. 运行环境

go 1.20, linux/amd64,前端vue3.2

2. 问题描述?

前端客户使用vue界面进行excel导入,后端go程序读取里面的数据,存到数据库,现在客户的excel偏大,每个导入的表格接近200M,里面表的数据少的有10几万条,多的几十万条,请教下有什么合适的方式处理

3. 您期望得到的结果?

1、表格导入上传成功;
2、表格数据存入数据库成功;
3、耗时尽量少

4. 您实际得到的结果?

暂时没有研究出合适方案

讨论数量: 10

文件上传,后端读取到数据,存储临时数据库,前台分页展示,可修改,点击提交在创建到真正的数据

10个月前 评论
Losunlee (楼主) 10个月前
风吹枫落

没特殊要求的话可以用js转成csv再由后端处理,速度很快的

10个月前 评论
Losunlee (楼主) 10个月前
Losunlee (楼主) 9个月前
风吹枫落 (作者) 9个月前
Losunlee (楼主) 9个月前

可以暂时表格数据,异步处理数据并返回每行数据的处理结果;

10个月前 评论
Losunlee (楼主) 9个月前
  1. 文件上传提交给服务器,服务器读取数据,将数据分片开启多个协程批量插入数据。
  2. 然后可以将前n页的数据缓存到redis中,等数据库插入数据完毕后删除缓存,插入数据的过程中需要设置锁,用于控制请求读取是否走缓存。
  3. 这样用户既可以及时请求到导入的数据,又不影响后台数据插入数据库。
9个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!