> Of those that are serverless, SQLite is the only one known to this author that allows multiple applications to access the same database at the same time. IIRC, MS Access allowed that, which explained a lot of its popularity.
In the old days of DOS I could do that with Clipper 5.2. Two or more PCs using Netbios shared directories could work on the same database, provided that they wouldn't write to the same record. That wasn't a problem because the environment (can't recall for sure if it was Clipper or an external library) allowed single record locking, so I enclosed the lock attempt into a timed spinlock-like block which attempted once…
SQLite Is Serverless
401–410 of 453 posts
Re: SQLite Is Serverless
#402> It is important to understand these two different definitions for "serverless". When a database claims to be "serverless", be sure to discern whether they mean "classic serverless" or "neo-serverless". It's really not important to understand that distinction, because this author seems to be the only one making it. Everyone knows what "serverless" means at this point, and it's not an embedded DB.
Re: SQLite Is Serverless
#403Earlier quoted context omitted.
> Everyone knows what "serverless" means at this point, and it's not an embedded DB. Serverless is a marketing term at this point (as it was when it started). This post brings some welcome definitions and expands it to something that has many of the same attributes but wasn't appreciated as such.
Serverless refers to platforms with specific and well-understood properties, such as managed servers, autoscaling, usage-based pricing, etc. What parts of SQLite have these properties?
In the case of cloud "serverless" it doesn't have a physical ser-- Wait did you just mention "managed servers"?
Re: SQLite Is Serverless
#404Earlier quoted context omitted.
If you examine it closely, youll see that they have alot incommon, and that the author defined the term neo-serverless to attempt to adress this - both definitions share the fact that multiple applications (in clientless form) can access the database. He even gives amazon S3 as an example. For neo serverless. I agree with you that it take a bit to marry both, but the stretch isnt far. Im also avoiding criticising the…
> both definitions share the fact that multiple applications (in clientless form) can access the database That is like the least relevant thing on that entire page, to be frank. "SQLite is Serverless" is specifically referring to SQLite being an embeddable library that runs in the same process (and same thread, even) as your application vs. the client-server architecture (database in another process, with communicati…
Re: SQLite Is Serverless
#405Earlier quoted context omitted.
This is exactly the style in which I build applications these days. Most of the time I just describe it as “hella caching” but it is a different paradigm from treating the database as the primary state engine. The speed and simplicity of working on in-memory structures are great. When you outgrow a single server’s RAM capacity, you can use Kafka or another durable message queue as your application’s WAL and shard you…
Have you written up the systems you've built? I'd love to read more about the practical details. Feel free to email me or DM me on Twitter if that's better.
Given no firm deadline, I timeboxed to 12 hours so it’s not fully fleshed-out but I like to think it illustrates the concept well.
Re: SQLite Is Serverless
#406Earlier quoted context omitted.
Awesome - elegantly simple using very common technologies.
I am not a very talented programmer so I stick very close to what is common, standard, and easy to understand. It usually means I am on the downslope of the hype cycle and it limits some opportunities but I have become okay with that. I have gotten some CS students who were about to shoot flies with various cannons turned on to SQLite. I kept a couple of the decent books about it nearby and would shove it into their…
Re: SQLite Is Serverless
#407Earlier quoted context omitted.
MySQl, Postgres, or MongoDB still store your date in files. So there are also “just a file format”. You do have one extra step - the db server process - to access the files.
Yes! You've defined the difference between an RDBMS (the server process and whatever else it does) and the file format the data is stored in. SQLite is just a file format. If you want it served up over some kind of server, you have to build your own (and most people do), or use a server that somebody else has built for you (there's a couple out there).
Being a RDBMS is not defined by whether the engine runs in-process or as a server in its own process.
Re: SQLite Is Serverless
#408Earlier quoted context omitted.
First of all, you still haven't answered the question: What is it that an RDBMS has that SQLite doesn't have? > It's no more an RDBMS than a .docx file is. Thanks for the idea. Your argument is like saying this: Microsoft Word is not a word processor -- it's a file format. I mean, yes, Word has a file format; but it's far more than just a format specification. > Sure they do. If you write the logic to do so, Right, b…
> First of all, you still haven't answered the question: What is it that an RDBMS has that SQLite doesn't have? And RDBMS is a well defined thing and is literally what the acronym expands to mean. This is very old technology with an interesting history and I really implore you and anybody reading this to go read up on it. It's not just whatever we assume it to be or some kind of data bucket with SQL. > Microsoft Word…
You keep repeating that, but it is just not the case. SqlLite is the name of the library, not the file format. Just see the definition on Wikipedia:
> SQLite is a relational database management system (RDBMS) contained in a C library. In contrast to many other database management systems, SQLite is not a client–server database engine. Rather, it is embedded into the end program.
It is really that simple.