database newbie here - I always thought sharding was the only thing to do after your DB starts choking on the volume. I did not know there was any other way to go about it.
Care to share any information on how you would scale DB (PGSql maybe) - any google keywords would be welcome as well
So the MySQL camp would have you believe. But a) a real database running a balanced workload scales far further on the same kit than MySQL anyway and b) then you go with active/active clustering (e.g. Oracle RAC). I personally work on a 30Tb database like this and I've seen people take it to >100Tb.
A problem with shared-everything clusters like RAC is that they tend to scale poorly under write-heavy loads. Other problems would be the significant complexity, low predictability (esp. in terms of latency) and ofcourse the oracle tax.
It boils down to the old question of right-tool-for-the-job and a RAC cluster is not the right tool for most webapp scenarios.