On Mon, Feb 10, 2014 at 8:40 AM, Clemens Eisserer <linuxhi...@gmail.com>wrote:
> Hi, > > I would like to use sqlite for storing temperature data acquired every > 10s running on my raspberry pi. > As my first SD card died within a week with this workload, I am > looking for opportunities to reduce write operations triggered by > fsyncs to flash. > For me loosing 1h of data at a power failure isn't an issue, however > the DB shouldn't be corrupt afterwards. > > I found the pragma "synchronous", which when set to "NORMAL" does seem > to do exactly what I am looking for - when sqlite is used in WAL mode. > Am I right that with this configuration, fsync is only executed very > seldomly? > In WAL mode, with synchronous=NORMAL (the default), fsync() only happens on a checkpoint operation. Whether or not checkpoint is "very seldom" depends on a number of factors, but seems likely to be the case in your scenario. > > In WAL mode when synchronous is NORMAL (1), the WAL file is synchronized > before each checkpoint > > and the database file is synchronized after each completed checkpoint > and the WAL file header is synchronized > > when a WAL file begins to be reused after a checkpoint, but no sync > operations occur during most transactions. > > Thank you in advance, Clemens > _______________________________________________ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > -- D. Richard Hipp d...@sqlite.org _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users