java - 有没有办法将结果查询加载到内存中?

标签 java database large-data

我有一个巨大的数据库(21亿行),我需要执行一些计算来提取一些统计结果。据我了解,直接在这个数据库上执行计算显然是不明智的。

我现在想做的是将表的一部分加载到内存中(例如 100 万行)。我不确定如何将 ResultSet 的整个数据 block 加载到内存中而不需要逐行迭代。

有什么想法吗?

最佳答案

it's obvious that it is not wise to perform the calculation directly on this database

相反,很可能在数据库中执行此操作是最明智的方法。数据库是为处理大量数据而精确构建的。如果您可以将计算表达为 SQL 查询,数据库将计算出如何有效地执行它。一般来说,它会比将所有数据加载到内存中并自行处理要快得多。

有些计算并非如此 - 例如图形分析 - 但它应该是您的默认方法。

关于java - 有没有办法将结果查询加载到内存中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6873439/

相关文章:

algorithm - 在连续渗透中处理大量数据

amazon-s3 - 用于存储和检索 Web 应用程序大文件的架构

java - "Timeout while fetching"URLFetch GAE/J

java - 如何在 Intellij Idea 场景生成器中使用鼠标重新定位或调整项目大小?

java - java中使用(Class)对象会恢复对象吗?

用于连接后端数据库/网站的 Android 应用程序

javascript - 如何高效地将大文件加载到 IndexedDB 存储中?我的应用程序在超过 100,000 行时崩溃

java - JMeter - 在变量/属性中存储/更新 HashMap 对象

database - Oracle 特定的时间戳格式 'DD-MON-RR HH.MI.SSXFF AM'

database - 从 pg_dumpall : relation does not exist, 无效命令恢复 Postgres\N