views:

44

answers:

0

I am considering using sqlite3 on embedded Linux with JFFS2/NAND instead of using a file based approach. My concern is NAND wear and number of erase operations.

So how will e.g. the scenario of deleting or inserting a row in a 12MB database work:

  1. Will the whole 12 MB database be re-written when I commit, thus queueing all 12MB of NAND for erasure?
  2. Will only a journal entry be appended: "Row #325 is deleted"?
  3. Will just some bytes in the middle of the file be updated, marking only one or some NAND blocks for deletion?