首页 > 解决方案 > Oracle + Java,巨大的json卸载到文件

问题描述

通常,我会尝试在不提问的情况下从 Internet 上挖掘出一些关于我的问题的信息,但是这一次 - 我有点卡住了……问题是,我几乎没有几行包含 JSON 对象的大表。最终输出是包含所有对象的 JSON 字符串,因此可以将其作为运营报告发送到我们的总部。一,单个报告包含大约。15GB 数据结构非常特殊。该报告具有以下结构:

{header1:value,
header2:value,
[...]
sub_objects:[
 sub_object1:[{row1tab1},{row2tab1}...(6GB of data, 14 milions of rows)],
 sub_object2:[{row1tab2},{row2tab2}...(another 5GB of data, 6 milions of rows)],
 sub_object3:[...]
]}

现在,问题是我的查询在数据库端构建了完整的 15GB 字符串,然后使用我前段时间编写的 Java 控制台应用程序将其卸载到文本文件中。这没什么特别的 - 简单的查询并将数据作为二进制流直接提取到文件中。

上述过程工作正常,但时间正在扼杀我(很快 - 我的老板也想杀了我)。大约需要。5 小时构建完整的字符串。有趣的是 - 如果我将字符串存储在数据库中 - 卸载过程只需要 5 分钟。但仍然 - 将字符串存储在数据库中需要 5 个小时。

我试图在这里找到一些不同的角度来在服务器端的查询执行期间获取数据,所以我会直接在文件中构建完整的字符串,而不是在数据库端。

任何帮助将非常感激!如果您需要这方面的任何额外信息 - 请随时询问 - 我会尽力提供。

先感谢您!汤姆

标签: javajsonoracle12c

解决方案


推荐阅读