I have seen many PostgreSQL benchmarks having solid performance with TB data but my real world experience is the complete opposite.
Here are some of the main issues that I have encountered so far:
1. Queries on large tables (around 10 GB) are slow even when "index only scan" is used because of MVCC and the way postgreSQL manages concurrency.
2. Hot-standby instances can't be used for anything serious since all queries are dropped regularly (I believe it's not safe to use "hot_standby_feedback" config to overcome this issue).
3. It is not possible to have tables with heavy "update" workflows. (because of simultaneous autovaccum execution)
I would be very happy if anyone could show me that I am wrong.
1. You'll have to define "slow" - I have a 3TB table where an index only scan takes under 1ms
2. hot_standby_feedback is absolutely safe. I've got 5 hot standbys in prod with that flag enabled
3. Again, it depends on how "heavy" your update throughput is. It is definitely tough to find the right balance to configure autovacuum between "so slow that it can't keep up" and "so fast that it eats up all your I/O"
> 2. Hot-standby instances can't be used for anything serious since all queries are dropped regularly (I believe it's not safe to use "hot_standby_feedback" config to overcome this issue).
Hot-standby instances are fine. We've been using these for GitLab.com for a number of years now, and never have they caused any issues. We do have some code in place that retries queries when they are cancelled by the hot-standby, but IIRC this doesn't happen often.
1 mostly applies to update heavy tables since index only scans use the visibility map, which would be frequently invalidated.
3 is definitely true, especially the larger the table. I've had success splitting frequently updated columns out into their own much smaller table, or any other trick to concentrate updates into a small table. Also MVCC bookkeeping requires updating pages, so an UPDATE that doesn't change any field and SELECT FOR UPDATE will cause the same problem.
thanks a lot. it's an awesome project. in the introduction it was stated that this project is using Github pages for hosting but i couldn't find the repository address anywhere.
this book is amazing! specially the authors sense of humor makes reading it fun.
> For example, can you tell what the two functions below are doing? Probably you can tell for the first one, but unlikely for the second (or your name is Jaime Fernández del Río and you don't need to read this book).
majority of young people are happy! to tell you the troth sanctions were a real pain for us, imagine every time i use internet and i forget to connect VPN i get the "Unavailable in your country message" while visiting Unity or Google Code websites.
but on the other hand there are some who are not that happy they think with this agreement we have lost decades of effort toward peacefull nuclear energy.
there is one thing for sure nobody in iran wants a nuclear weapon.
Speaking as somebody with no interest in the region, if I was an Iranian I'd want a nuclear weapon. Nobody invades a nuclear power. Nuclear powers get propped up instead of sabotaged.
It's too late for that now, though. The 5 nations that have them are the only five that will have them, if the 5 nations that have them have anything to say about it (and they do).
And it's generally understood that some other countries are only "non-nuclear" because the question hasn't come up yet. Does anyone doubt that Japan could have a nuke in three months or less if it really wanted to? Or Canada?
I am doubting the last sentence. Iran clearly has a nuclear weapons program and clearly that program has a constituency within Iran, although I am sure lots of Iranians don't want it or need it, but that's not the same as saying that nobody wants it