ClusteringUseCases
From PostgreSQL wiki
				
				
				Jump to navigationJump to search
				
				Overview
- Nothing is really 24/7 production ready without advanced (4-5,6 9s availability)
 - Without substantial expert DBA staff
 - Clustering != replication
 
3 major use cases for clustering
1. Transactional (least change in the next 3 years)
- 99.9999 uptime :)
 - 60k Write transactions per second
 - -> needs to scale to 200,000 writes per second
 - 5,10,20 servers
 - 0% data loss is acceptable (committed transactions)
- will sacrifice scalability, or flexibility so that we do not lose any data
 
 
2. Analytic use case
- Looking Parallelizing queries --> execution time
 - Maximize amount of CPU + I/O
 - (Greenplum, Aster)
 - 100s of nodes
 - No transactions
 - in last 3 years, 11 data warehousing startups (7 using postgres)
 
3. Online
- No products exist to address this
 - Web -> mobile services (android, iphone, symbian/Qt)
 - Scale from 100k -> 1 million users -> 1 billion users
 - Looking for Scalability, read and write
- Read scalability through caching (?) .. but not everything can be put here
 
 - Rapid Deployment
 - Loose xtns -> needs them for SOME things, but MOST of online services, txn is not important
- some amount of data loss is acceptable :)
 
 - user-centered providing of data
- eventually consistent
 
 
JAN:
- Geographic distribution
 - may be online use case
 
See The Three Database Clustering Users for a longer version of the above