5 ms·
This seems more like "PostgreSQL using remote storage for the database" rather than "Serverless"? It seems like it still needs memory/cpu resources locally (si
by justinclift 2y ago
This seems more like "PostgreSQL using remote storage for the database" rather than "Serverless"?
It seems like it still needs memory/cpu resources locally (sized properly) to handle the returned data.
It also seems like an incredibly bad idea to use with any remote data store that charges for network traffic. ie Amazon AWS
You could easily give yourself a many thousand dollar bill for a month if you start using that backend data store in a serious way. :( :( :(
---
That being said, it's a nifty idea conceptually. Just be aware of likely operational costs if you try using it. (!)
- kiwicopple 2y agoI guess the term “Serverless” is pretty ambiguous, but since this originated from AWS Lambda (firecracker) and that’s the same primitive as Fly.io then it seemed fitting. You can scale up/down compute and snapshot memory for fast startups The other tricky thing is data: there are several ways to handle this. Since Tigris has a lot of the data replication features that Postgres would traditionally handle then it looks promising. That said - it comes with tradeoffs that you point out (transfer costs) but these are also costs that you’d pay for postgres replication. I’ll try benchmark some of these costs and compare them across several implementations. At this stage I just wanted to get an MVP working: the harder stuff is still ahead Thanks for your comment - a lot of good points
- justinclift 2y ago> these are also costs that you’d pay for postgres replication. Some places define a 2nd (private) network interface for their VMs, and you can transfer data between your VMs over that private interface without cost. Not sure if AWS does it that way though.
- chipdart 2y ago> I guess the term “Serverless” is pretty ambiguous, (...) I don't this is the case though. The core principle of serverless computing is that a cloud provider supplies a managed service and scales computational resources allocated to the service to meet it's computational needs. This "serverless postgres" meets none of the items in the definition. You mentioned AWS Lambdas. AWS allocates all computational resources when a function is invoked. Let's face it: this was an attempt to abuse a buzzword.
- biorach 2y agoI think you're being unduly harsh. The term "serverless" is broad enough that it's use here is fine.
- mrkurt 2y agoFly machines allocate all the computation resources when a TCP connection is established. I feel like this is the same?
- inhumantsar 2y agoconsidering that this is an experimental hack, I don't think it's reasonable to get this hung up on semantics or to throw accusations. especially over a term as close to meaningless as this. it scales to zero and manages its own computer resources, that's a lot closer than a lot of "serverless" products ever get
- davedx 2y agoI use Fly.io, it’s not serverless at all, it’s a PaaS that manages your servers for you via its own automations and cli. Fly also already supports postgres (I use this too) so I’m not sure why I would use this? To me the whole point of Fly is minimal work :)
- wolletd 2y agoWhen you say it like that, nothing really is serverless. Everything is running on some computer. Serverless architectures are provided by servers.
- davedx 2y agoServerless is like AWS lambda, when you don’t have an explicitly running VM that you pay per time; instead your code is run in “a cloud” and you pay per invocation. This is nothing new! “Serverless” is well defined and understood for years and years!
- mrkurt 2y agoThis is actually what Fly machines do under the covers. When you use it as a PaaS, the client CLI sets all this up for you, and then our proxy starts/stops things as needed.
- rohan_ 2y agoseparating storage from compute is kind of the definition of "serverless postgres", right?
- justinclift 2y agoNot for most of the computing history where "serverless" was an actual word. But maybe some crowd is attempting to redefine it (yet again?). :)
- ssousa666 2y agowhat did it mean historically? in contemporary usage, it seems to be a synonym for "managed" (or more accurately, a meaningless sobriquet for PAAS that can be easily sold to the huddled masses of "full stack" boot camp grads)
- chipdart 2y ago> separating storage from compute is kind of the definition of "serverless postgres", right? Not really,unless you want "serverless" to be meaningless. Think about it for a second: would it make any sense to call S3 a serverless anything? And NFS? And what about gmail? Is gmail server less as well?
- smt88 2y agoS3 is absolutely "serverless" storage in the same way Lambda is "serverless" compute: it's a service that abstracts away the underlying servers. If the host is managing servers in a way that makes it impossible for me to even know how many servers are behind my usage of it, it's serverless.
- chipdart 2y ago> S3 is absolutely "serverless" storage (...) I think this take is ridiculous and it tries to bring absurdity to a label. Storing data on a third-party computer is not "serverless". Gmail is not a serverless messaging service. Flickr is not a serverless photo service. HN is not a serverless message board. Just because you store data on a third-party computer, that does not mean you're dealing with serverless anything. https://en.wikipedia.org/wiki/Serverless_computing https://en.wikipedia.org/wiki/Serverless_computing
- deleted 2y ago[deleted]