Hacker News new | ask | show | jobs
by sorenbs 599 days ago
It's not every day you get to launch a hosted Postgres service that has something fundamentally new to offer. That's what we have done with Prisma Postgres, and I'm incredibly excited for it.

We are using Firecracker and unikernals to deliver true scale-to-zero without cold-starts. Happy to go into more detail if anyone is interested.

3 comments

You ommited another fairly known serverless Postgres provider which also does that (scale to 0 and no coldstart):

Nile (thenile.dev).

Not affiliated in any way with Nile, just a happy user.

I find their pricing much easier to reason about and plan, something I found super cluttered and hard to reason about on your pricing page.

Competition in the serverless Postgres space is always welcome from a customer perspective, but my gripe is currently a) bundling with Prisma - I might not want to use your tool and b) cluttered pricing.

Thanks for the feedback!

The point re: pricing explanation is well taken. We've already done a revision and will work on another one as we get more feedback on the latest version.

Appreciate the response!

In any case: Best of success in bringing this to GA, it’s great you’re among teams working on making this accessible!

Wow, I thought you guys were just reselling Neon like some others. This is genuinely impressive technically. It's got me looking at Unikraft Cloud for other stuff too.

That said, do you plan do offer branching or any other features that Neon offer? I think that's their big selling point along with separate billing for compute and storage.

Prisma team member here... Yes, when we go GA, we'll offer features that'll give you the comfort of wanting to run your production loads on Prisma Postgres!
Congrats on the launch!

I’m a bit confused about the pricing.

The docs and pricing pages on your website don’t seem to outline how the pay-as-you-go pricing will work.

Is this still being figured out?

Essentially, you pay for database queries and events, with 60'000 included for free, which is plenty for experimenting and small projects. Price per million queries/events is then based on the plan you're subscribed to, and with Starter you have zero monthly fixed costs and only pay for queries and events above 60'000. No CPU-time and similar that's usually hard to grok.

Take a look at the Accelerate and Pulse pricing details. Prisma Postgres comes bundled with these, so the pay-as-you-go pricing is the same: https://www.prisma.io/pricing#accelerate

We'll continue to make improvements to the pricing on the way to General Availability to make it both as easy to understand and affordable as possible.

If pricing is only done by storage limits, egress and query count (but not resource usage) how do you prevent something like a massive cross join with an aggregation from just running for ages on a single query?
We are looking for input on this during the EA phase. Here's how we plan for this to work:

- Each incremental concurrent query allocates additional compute resource to your database - All queries share that pool of compute resource - Queries have strict timeout limits. 10 seconds on most plans configurable up to 60 seconds.

Prisma Postgres is designed to serve interactive applications with users waiting for a response. In a sense, we are adopting some of the design principles underlying DynamoDB (strict limits on queries) and combining it with the flexibility of a Postgres database that is fully yours to configure and use as you see fit.

I don't want limits on the kinds of queries I can run when those limits are artificial ones imposed to work around limitations of a too-simple billing system instead of being inherent in the domain. I'm willing to pay extra for the occasional huge query, but I wouldn't feel comfortable knowing I couldn't make it at all.
How much overlap is there in the “serverless database that starts fast” group and the “might have a query that runs for 60 sec” group? If you’re running queries that are that complex, wouldn’t you be better served with a different database service?
That said, a production OLTP workload database would also have query timeout imposed, otherwise those fine folks in the crappy query writing department will surely bring it down.
Having query timeouts instantly makes me write this solution off.

Companies, especially smaller ones starting out, will run analytics in the same DB as the application DB.

A major plus of using a Postgres DB is the flexibility of doing analytics and serving apps. It can do it all. Analytics queries will often easily exceed your timeout limits.

Does that mean that using Prisma Accelerate and Pulse with an external database will cost the same as using it with the bundled database? (Since I don’t see database-specific costs for storage, read replicas, PITR, backups)
While Prisma Postgres in in early access, yes. This is why there's no ability to change the database config right now.

However, when we release Prisma Postgres in GA (couple of months), you will be able to upgrade your postgres instance (CPU, storage, etc.) and that will be db-specific cost.