java - 将 JSON 行作为文件写入 S3
问题描述
我试图了解使用 JSON 行创建文件并上传 S3 json 行的最佳方法,目前我正在使用字符串生成器来构建来自地图的数据的字符串。这个 processResults 将被多次调用,最后字符串生成器将保存大约 100 万条 json 行。
StringBuilder stringBuilder = new StringBuilder();
protected void processResults(Map<String, Object> data) throws JSONException {
JSONObject jsonObject = new JSONObject();
HashSet<JSONObject> lists = new HashSet();
for (Map.Entry<String,Object> entry : data.entrySet()) {
jsonObject.put(entry.getKey(), entry.getValue().toString());
}
stringBuilder.append(jsonObject.toString()).append("\n");
}
还有另一种方法可以使用这个大的 stringBuilder 并将其上传到 S3
这工作得很好。我只是担心它处理大量数据。示例 stringBuilder 在某些情况下可以容纳数百万行 json 行。
所以我的问题是这是处理这种情况的最佳方法吗?我担心的是内存,因为 stringBuilder 将保存所有数据,直到进程完成。
谢谢
解决方案
推荐阅读
- debian - 查找 debian jessie 的旧分支
- node.js - Socket.io 优化:socket.io 是否发送 JSON 字符串?我们如何优化它?
- html - 占宽度 100% 的复选框
- java - gcj 错误 - 找不到类 java.util.function.Predicate 的文件
- vue.js - 如果孩子在vue中有课程,如何设置父母的样式?
- vba - 使用标准复制和粘贴值 vba
- html - 变暗的图像问题css
- vue.js - Vue.js 从问题中导入
- android - 如何从android studio中的txt文件中检索字符串?
- vba - 在Excel VBA中以不同的顺序输入选择单元格