如何从 MySQL 读取 100w 数据进行处理
2023-09-27 14:23:02 时间
文章目录
场景
大数据量操作的场景大致如下:
1、 数据迁移;
2、 数据导出;
3、 批量处理数据;
在实际工作中当指定查询数据过大时,我们一般使用分页查询的方式一页一页的将数据放到内存处理。但有些情况不需要分页的方式查询数据或分很大一页查询数据时,如果一下子将数据全部加载出来到内存中,很可能会发生OOM(内存溢出);而且查询会很慢,因为框架耗费大量的时间和内存去把数据库查询的结果封装成我们想要的对象(实体类)。
举例:在业务系统需要从 MySQL 数据库里读取 100w 数据行进行处理,应该怎么做?
做法通常如下:
1、 常规查询:一次性读取100w数据到JVM内存中,或者分页读取;
2、 流式查询:建立长连接,利用服务端游标,每次读取一条加载到JVM内存(多次获取,一次一行);
3、 游标查询:和流式一样,通过fetchSize参数,控制一次读取多少条数据(多次获取,一
相关文章
- mysql数据库,如何进行数据目录的初始化操作
- Laravel 快速填充 MySQL 千万条数据
- MySQL数据行怎么转为列
- MySQL:从.ibd文件恢复误删的数据
- 怎样把坏的MySQL查询找到并杀死?
- 如何通过 MySQL 的二进制日志恢复数据库数据
- MySQL: charset() convert() binary
- 如何保障 MySQL 和 Redis 的数据一致性?
- MySQL中,当update修改数据与原数据相同时会再次执行吗
- mysql中判断NULL和空字符串
- mysql 插入数据失败防止自增长主键增长的方法
- 基于Java(SSH框架)+MySQL 实现(Web)公司通用门户(CMS)网站【100010223】
- mysql如何处理亿级数据,第一个阶段——优化SQL语句
- (MariaDB/MySQL)之DML(1):数据插入
- 如何在 MySQL 中使用 JSON 数据,在 MySQL 中学习“NoSQL”
- 提高mysql千万级大数据SQL查询优化几条经验
- 【MySQL】一文学会:2.3.3-如何去除数据库表中的列(字段)的重复数据?2.3.5-表名/字段名与关键字和保留字冲突怎么办?2.4-如何显示数据库的表结构?2.5-如何过滤数据?
- 将数据导入MongoDB集群与MySQL
- mysql如何把 一个数据库中的表数据 复制到 另一个数据库中(两个数据库不在同一个数据库链接下)
- mysql查询表的数据大小
- MySQL的字符编码体系(一)——数据存储编码
- MySQL 跨服务器查询数据
- Mysql 导入CSV数据 语句 导入时出现乱码的解决方案