在我的应用程序中,我需要将大量数据写入DB。为了加快速度,我正在考虑实时写入顺序二进制文件,然后在DB中进行批量插入。有不同的日志库可以配置为每隔x秒或MB创建一个新文件,但它们会在负载很重的情况下显着降低系统速度,并且它们可以处理字符串消息。
是否存在二进制文件的高性能库?
答案 0 :(得分:2)
如果我是你,我会研究使用JDBC批量插入的可能性。相关方法为PreparedStatement.addBatch()
和Statement.executeBatch()
。
以下是一个讨论它们的教程:http://viralpatel.net/blogs/2012/03/batch-insert-in-java-jdbc.html
根据我的经验(使用PostgreSQL),它们比单个插入快得多。情况很可能是它们足够快到达你的目的。
答案 1 :(得分:0)
Kafka旨在作为处理所有实时数据馈送的统一平台。 https://kafka.apache.org/08/design.html