5 ms·
I'm a big fan of SQLite, but this kind of marketing puts me off a bit. ZIP and XML are popular standards with dozens of implementations. The only thing that can
by btrask 9y ago
I'm a big fan of SQLite, but this kind of marketing puts me off a bit. ZIP and XML are popular standards with dozens of implementations. The only thing that can read an SQLite DB is SQLite, AFAIK.
To be sure, SQLite is very well supported, runs on tons of platforms and is going to be around for a long time. But still, it is less archival quality, and more inherently complex (even though that complexity is very well encapsulated).
- abtinf 9y agoWhy do you view a "standard" or "dozens of implementations" as a good thing - what is the context of your evaluation? Why is it not comparable, if not significantly better, to have a mostly uniform public domain code base that has been deployed to billions of devices?
- lifthrasiir 9y agoThe diversity of mutually compatible implementations avoids a dominant implementation's critical issue being catastrophic and keeps the standard moving to the direction no single party can totally influence. SQLite does have a list of semi-standardized requirements [1] which should technically allow for alternative implementations---not having them today makes it less viable as a true standard. [1] https://www.sqlite.org/requirements.html https://www.sqlite.org/requirements.html
- SQLite 9y agoA better starting point might be the database file format description. https://www.sqlite.org/fileformat.html https://www.sqlite.org/fileformat.html
- _jal 9y agolifthrasiir also sort of touched on this (and I endorse their comment), but as a thought experiment, imagine what word processing formats would look like if MSFT hadn't owned .doc, but instead, WordPerfect and maybe two other competitors also shared the format. When a popular format can't be unilaterally controlled by one actor, both the users and the market as a whole tend to be better off.
- lultimouomo 9y agoWhile I agree that using the SQlite format does introduce a heavy dependency on the SQLite library, I want to point out that there is at least one independent implementation, a pure java library named SqlJet [0]. It didn't work too well when I tried it a few years back, but it proves that it is possible to reimplemented support for the file format itself. Doing it as well as the original SQLITE library, well, that's different. [0] https://sqljet.com https://sqljet.com
- hvidgaard 9y ago> But still, it is less archival quality, and more inherently complex (even though that complexity is very well encapsulated). More complex yes, but why is it less suitable for archival? It's very well documented, and the code to read it is fully open source and will run on a practically all platforms in existence.
- hasenj 9y agoExcept that SQLite is a library that can be embedded into any program. Yes, there's also a binary command line interface to interface with a db file, but that's not what SQLite mainly is.
- rsynnott 9y agoSQLite has a public domain license, which is problematic in some jurisdictions. If it used Apache or something this would be less of a concern.
- deleted 9y ago[deleted]
- TheAceOfHearts 9y agoUnder what circumstances is the public domain license actually a problem? It's also worth noting that you also have the option of purchasing a license for $6000. I'd imagine it's mostly companies that are likely to have concerns over licensing issues, and for most companies that price should be completely affordable. Especially when you consider the project's superb quality level and extensive test suite.
- SQLite 9y agoThe $6000 "license" is actually a "Warranty of Title". It is a legal document that certifies that we developers have the right to release SQLite into the public domain (in other words, we didn't copy any part of the software from other sources) and a promise to defend the public-domain status of SQLite against legal challenges.
- Sean1708 9y agoIt would put me off too if they were advocating for replacing OpenDocument, but from the article: > Finally, let us reiterate that this essay is a thought experiment. The OpenDocument format is well-established and already well-designed. Nobody really believes that OpenDocument should be changed to use SQLite as its container instead of ZIP. Nor is this article a criticism of OpenDocument for not choosing SQLite as its container since OpenDocument predates SQLite. Rather, the point of this article is to use OpenDocument as a concrete example of how SQLite can be used to build better application file formats for future projects.
- thedonkeycometh 9y agoHardly a thought experiment, when its on the official site. This is purely a marketing exercise. They're hanging the thought experiment tag on to try and avoid undue criticism.
- Sean1708 9y agoIt's no more a marketing exercise than any tutorial that's posted on a project's site. If they'd submitted this as a proposal to whichever standard's body is responsible for OpenDocument then I would think you have a point, but they're just using it as a well known example.
- bachmeier 9y agoIf for some reason sqlite is a problem, why not export to a text format or do a dump of the data? I even recall seeing sqlite to xml conversion. You can do your archiving in xml and do your work with sqlite.