大数据量的插入以及查询该怎么处理和优化
问题描述
公司准备研发新的产品,有一批量导入商品变更数据的功能,不同用户每天可能会批量插入很多数据,初步评估每天大概会新增20W条记录,现在考虑使用mysql数据库,但又怕数据量大了后不好处理,或运维成本变高。
问题出现的环境背景
- 数据都属于同一类型,所以现在考虑是存储在一张表,和其他表没有关联,有点类似日志,但属于业务数据,至少近期半个月的不能丢失
- 数据插入没有事务,允许单条插入失败
- 用户主要的功能是导入数据
- 有分页读取数据的功能,但不是重点,主要是用于用户查看导入结果
- java,springboot,nodejs开发
求教各位大佬,数据库的选择及优化的建议,谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
每天 20w 的数据对于 MySQL 压力并不大,如果用 Spring Boot,推荐最好使用原生 SQL 的方式批量导入,如:
其中
(row1),(row2)...
可由程序生成,这样比单条 SQL 插入速度会快很多。同时,如果后期发现单表数据量太大,还可以考虑分表。
这种类似日志的数据,建议使用MongoDB存储或ElasticSearch存储。
在补充楼上@fonxian,还可以搭个集群读写分离