我有 B2B2C 业务,而且很少有供应商会不断更新我的数据。每周我需要更新大约 30GB JSON(一个文件)。我想知道比 BufferedReader 的 readline 更快的方法,文件类型是 ZStandard(zstd)。现在它每 4 小时插入 500Mb。这么慢有什么意义吗?Web 应用程序和数据库部署在 unix 服务器上(Tomcat apache 9.06)
我的代码:
try {
BufferedReader br;
br = new BufferedReader(new FileReader("/opt/tomcat/" + fileName));
String line = br.readLine();
ObjectMapper om = new ObjectMapper();
while (line != null) {
if (!rootRepository.existsByAddress(om.readValue(line, Data.class).getAddress())) {
rootRepository.save(om.readValue(line, Data.class));
}
line = br.readLine();
}
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return "Completed";
}`