【详述】深度分页操作导致集群 BE 节点 CPU 几乎都打满,JDBC SQL 无论是 LIMIT 方式还是 JDBC ResultSet 方式都一样,而且 ResultSet 还容易把服务 JVM 打爆
【背景】报表明细数据导出,需要将大量数据导出,数据表总数据量 1000w, 单个查询导出 20~60w 数据。使用深度分页操作导致集群 BE 节点 CPU 几乎都打满,20/QPS。当前使用的 JDBC LIMIT ,每页 2000。同时还测试了 JDBC ResultSet 和 LIMIT 一样的容易将 CPU 打满,ResultSet 还容易将当前服务 JVM 内存打爆。
问题:
- 在大数据量导出的情况下怎么使用才是最佳操作?
- SR 的 ResultSet 是不是没有实现 Streaming read ?
【业务影响】集群不稳定,查询效率低
【StarRocks版本】2.4.4
【集群规模】例如:3fe(3 follower)+6be
【机器信息】16C/64G/万兆
【附件】