tutorials on using the file system for storing data?
bayareaguy: I would recommend reading Transaction Processing: Concepts and Techniques by Gray and Reuter, particularly the sections about ways to construct Atomic commits.SQLite's atomic commit design is also good food for thought - http://www.sqlite.org/atomiccommit.htmlHowever, while it's good to think about low-level consistency (e.g. disk writes) I think you're better off spending your time on your application's high-level consistency (e.g. procedures for identifying inconsistencies, logging your changes, recovering from backups).  Your os developers have already spent countless hours on the issue of getting your blocks to disk, but you may be the only one who has spent any time thinking about what things are important to preserve in your application.