For a new embedded product with a flashdisk I need a database. The product will probably run some kind of Linux.
I have been looking at SQLite, but am worried that its not suited for flashdisks, because of its use of a journal file.
SQLite is SQL based, but my database requests aren't very sophisticated, so some simple btree functions could do.
Do any of you have experiences?
John
Didn't find your answer? Ask the community — no account required.
S
shoppa
A journal file does not automatically rule out flash disks. It depends on what you need journaled (what guarantees you need that transactions are grouped together and written for good) and what filesystems are underneath the journal file.
BerkleyDB is a great start if you need a "database product" that has transactional guarantees, want to limit the number of writes done (possibly with application-defined checkpointing) and don't need much beyond insert-and-lookup-by-key. Go to
formatting link
and learn. It has a much smaller footprint than any SQL-based engine.
If you don't need any transactional guarantees (e.g. data is re-inited after any powerup) you might get away with btree functions tailored to minimize flash writes or with an all-in-RAM approach.
Tim.
H
Hans-Bernhard Broeker
The journal should be the least of your worries. It's the main database file that you have to worry about, if it's to go on a flash medium. A specialized filesystem for flash with wear levelling might be enough to take care of that.
So use plain old Berkeley DB instead. Or one of its ancestors (ndbm, gdbm).
Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.