java - 使用java在内存中加载2GB
问题描述
我有一个查询,它返回 2GB 的行。我需要高性能减少数据库中的选择。如何使用 Java 在内存中加载大量数据?
编辑
- 使用哈希图(JAVA 8)加载数据以使用它,这是一个解决方案吗?
- 使用流(JAVA 8),它是否支持这种 Lage 数据量?
我有 48GB 的内存可以在这个过程中使用。我正在使用 Cassandra 3.11.10、spark 3.0、Java 8。
解决方案
XY 问题的一个很好的例子。
根本问题是您将所有这些数据都保存在内存中。解决此问题的最佳方法是尝试限制从数据库获得的结果大小的大小。
推荐阅读
- node.js - 接收第 3 方的 webhook 时出现 403 错误
- matlab - 减少包含多个矩阵运算的此 Matlab 循环的执行时间的提示
- django - 如果外键为空字符串,则 Django 模型字段句柄
- c# - ViewModel 在 Post 操作中始终为空 [HttpPost]
- multimethod - 对象方法的多行使用
- python - 处理完成后立即显示图像。烧瓶
- typescript - 尽管在异步函数中返回了一个值,但 Promise 始终解析为 null
- c# - System.Reactive:按时间戳字段缓冲(timeSpan,timeShift)
- html - 所有浏览器都支持 CSS 连字符吗?
- reactjs - 去抖输入不读取键盘信息