SQLite Release 3.8.11.1
sqlite.org
sqlite.org
I remember on uni when we started defining our own formats, to later on learn about what goes inside a DBMS, and thinking, "Why on earth would I ever do the first thing again?" (not that there's no space for it, but it's not so big).
Also, when I've found a couple of times that a file that I thought had a proprietary binary format was a SQLite file, it was bliss. So much easier to navigate, inspect and work with that a huge XML file or a plain text one.
I think HDF5 is actually a better format for long term data management, but I think SQLite is a easier to use in everyday life. There's also Parquet and Avro for these as well.
High-Energy physics also has the "code is the documentation" clusterfuck known as ROOT files.
"SQLite does not compete with client/server databases. SQLite competes with fopen()."
1) https://manuals.info.apple.com/MANUALS/1000/MA1510/en_US/New...
> Miscellaneous micro-optimizations result in 22.3% more work for the same number of CPU cycles relative to the previous release. SQLite now runs twice as fast as version 3.8.0 and three times as fast as version 3.3.9. (Measured using cachegrind on the speedtest1.c workload on Ubuntu 14.04 x64 with gcc 4.8.2 and -Os. Your performance may vary.)
https://docs.python.org/3.4/library/sqlite3.html#sqlite-and-...
SQLITE_ERROR, SQLITE_PERM, SQLITE_ABORT, SQLITE_BUSY, SQLITE_LOCKED, SQLITE_READONLY, SQLITE_INTERRUPT, SQLITE_IOERR, SQLITE_FULL, SQLITE_CANTOPEN, SQLITE_PROTOCOL, SQLITE_EMPTY, SQLITE_SCHEMA
How do you know which? The only thing you can do is convert the exception to a string and compare error messages. That's absurd.
How about IntegrityError? That's either SQLITE_CONSTRAINT or SQLITE_MISMATCH. Which one? Compare strings again.
If you need to use SQLite with python, apsw actually converts errors to discrete exceptions.
Wanting a Python wrapper for SQLite that celebrated SQLite's features, functionality and semantics rather than paper them over is why I started APSW a decade ago. It also has considerably better testing and diagnostics, and is thread safe.
[1] http://docs.peewee-orm.com/
[2] http://docs.peewee-orm.com/en/latest/peewee/playhouse.html#a...
[3] https://github.com/coleifer/peewee/blob/master/examples/redi...
[1] http://www.pearsonhighered.com/educator/product/Fundamentals...
http://charlesleifer.com/blog/sqlite-small-fast-reliable-cho...
For example, I probably have 20-30 sqlite using apps on my phone, if not more. And I wiped it clean when I got a new phone a few months back and have been fairly hesitant to add apps I haven't found proven use for.
While not exactly what you are looking for I can understand the sentiment. SQLCipher provides a project to time the performance of queries when run against standard SQLite vs. SQLCipher on iOS.
One of the best pieces of free software around.
Where else do you find software, that was very good implemented from the beginning and is so carefully enhanced and optimized? (And not only for new "features") -- I remember no official available example.
Faster predictions mean we can handle more types of errors (more missed characters, more complex typos) in the same time budget. Thanks SQLite, you guys are awesome.
One thing for sure, they never worked for AMD or Nvidia marketing department ;-)
Has most of that been worked out between SQLite and newer Linux kernels, or is that a pit waiting for other applications that go the same route?
http://charlesleifer.com/blog/building-the-sqlite-fts5-searc...