Could you elaborate more on those things abstracted by SQLite? or point to further reading - You got me interested
And here's what SQLite does to ensure that in case of application or computer crash database contains either new or old data, but not their mix or some other garbage: https://sqlite.org/atomiccommit.html