我正在使用SQLite将非关键信息保存到磁盘。我正在使用的数据库相对较小,最高可达 10Gb 。同时工作站有足够的RAM来保存在内存中。
我想要的是尽可能减少磁盘写入,每小时将整个数据库转储到磁盘上是一个很好的解决方案。
Java<> SQLite连接是通过org.xerial.sqlite-jdbc
JDBC驱动程序完成的。
连接字符串如下:
"jdbc:sqlite:/disk/persistence.db"
答案 0 :(得分:1)
如果数据不重要,只需使用内存数据库,而不要将其写入磁盘。
如果数据更为关键并且您确实要保存它,则可以使用PRAGMA synchronous = OFF甚至PRAGMA journal_mode = OFF来避免某些写操作,但代价是可能存在数据损坏。
如果要避免所有写入,请使用内存数据库,并使用备份API手动制作磁盘副本。