Indexing 100M vectors in 20 minutes on PostgreSQL with 12GB RAM

Posted by gaocegege 7 days ago

Counter91Comment25OpenOriginal

Comments

Comment by q3k 1 day ago

> $272 monthly + GPU cost

Imagine paying $250+/mo for 32GB of RAM and 4 VCPUs. No wonder Amazon is swimming in cash, the markup on this is bonkers.

Comment by anko 1 day ago

100% this, i've been finding metal is getting very compelling against aws. For example latitude has 4 real cores and 32 GB of ram for $92/month.

https://www.latitude.sh/pricing/c2-small-x86?gen=gen-2

hetzner doesn't even have specs this low from what i can tell!

https://www.hetzner.com/dedicated-rootserver/#cores_threads_...

Comment by q3k 1 day ago

It has a VM with 32GB RAM and 4x the cores for 1/10th of the price: 25eur/mo. Effectively even lower because it has 20TB of included traffic, and the overage cost for it is ~1/10th of the AWS egress cost.

Or, for 184eur/mo you can get one of their bare metal GPU offerings with 64GB of RAM, a i5-13500 and an RTX4000.

Comment by paulddraper 1 day ago

+ 3.75 TB NVMe

And that’s the per second pricing applied 24/7 for a month. A year commitment takes 30% off.

Still a big markup, but a lot of these comparisons are the the on demand instant on/off price.

Comment by nwellinghoff 6 days ago

Too bad aws does not support any of these other vector extensions in managed rds.

Comment by ayende 2 days ago

That suffer from a serious issue

You must have the data upfront, you cannot build this in an incremental fashion

There is also bo mention on how this would handle updates, and from the description, even if updates are possible, this will degrade over time, requiring new indexing batch

Comment by esafak 1 day ago

How does it compare with paradedb and lancedb?

Comment by duckbot3000 6 days ago

Kinda makes you wonder why you need cloud for anything besides remote encrypted backups if you can run all that on 12GB

Comment by Nextgrid 1 day ago

You don't, but business executives aren't the kind to easily admit they got conned - and if they're getting close to that stage, a nice dinner or golfing session paid by the vendor's representative generally alleviates those feelings very well.

Engineers who started their career during the cloud craze and don't know anything else are also not the kind to rock the boat, lest the cash cow dies and their whole "investment" in their career becomes useless.

Comment by riku_iki 5 days ago

what about failover story if server dies? PG failover setup is complicated, and cloud infra handles this for you.

Comment by logifail 1 day ago

(Genuine question) What's your current plan for when your cloud provider goes offline? Do you have a failover story, or it a case of "wait for them to come back online"?

Comment by 1 day ago

Comment by riku_iki 1 day ago

I have backups on different cloud provider, so I could bootstrap db if provider goes dark indefinitely.

But realistically, I believe major clouds (google, aws) likely has more robust org and infra for recovery than I can built and maintain.

Comment by positron26 2 days ago

Do we mean managed or PG on K8s like CNPG? In all cases, I use the infra to simplify things like having disk redundancy and failover nodes, not because 12GB is interesting.

Comment by riku_iki 2 days ago

Primary managed PG, since you still need setup/maintenance/monitoring on your K8S own solution.

Comment by positron26 1 day ago

You guys are doing monitoring? ;-)

Comment by tjwebbnorfolk 1 day ago

What are you willing to pay for cloud-native failover?

Not every use case requires 100% uptime

Comment by riku_iki 1 day ago

Sure, but those who require (99% of major businesses) are ready to pay.

Comment by Nextgrid 1 day ago

Is that why most of them go down every time a single provider or even region goes down?

Actual active-active HA of your datastores is really hard to do (CAP theorem and all that). The majority of companies don't do it.

Comment by riku_iki 1 day ago

PG doesn't have active-active. Solution is to have multizone failover with replication.

Comment by benjiro 1 day ago

https://github.com/multigres/multigres ... when its complete. From the guy that made Vitess for Mysql.

And yes, i agree, the PG failover setup (and especially dealing with a failure afterwards, to restore the ex-master is beyond infuriating).

But its not pay 10x the amount, while eating easily 10x performance infuriating :)

Comment by setr 6 days ago

Because getting any hardware out of infra-team on premise is utterly miserable, across the board.

Comment by lelanthran 2 days ago

That's not the only alternative.

Rent your VPS and add in extra volumes for like $10 per 100GB.

Comment by Imustaskforhelp 1 day ago

Funny thing but netcup has $10 per 1 TB

Netcup is under-rated but there are also other providers too at lowendbox/lowendtalk and I am interested to try out hetzner too sometime.

Comment by benjiro 1 day ago

And if you want to go even cheaper, check out Hetzner their EX63 (go to custom) > 4x 7.68TB drives for like 140 Euro.

Not counting the fact that Netcup is raided (also Netcup is limited to 8TB on a VPS).

That is like 4.7 Euro /TB. That is like 4$/TB. 6 Euro / TB in a raid 5 setup.

I do not understand why they are not using this new pricing model on their older servers. There the best you can get is like 10 Euro /TB (for the single 15TB U.2).

Comment by lelanthran 1 day ago

> Funny thing but netcup has $10 per 1 TB

Nice to know, but I was just guessing at what a reasonable price would be :-)