(From the lecture on Database by the Master of Information Science)
- Two Approaches
- Scale Up (Vertical Scaling)
- Enhancing the performance of a single computer to scale
- Benefits: Suitable when strong consistency is required and when easy deployment is desired
- Drawbacks:
- Performance has inherent limitations (Moore’s Law also has its limits)
- Costly
- Requires pre-planning (can’t suddenly increase by 10 times)
- Scale Out (Horizontal Scaling)
- Distributed system
- Example: NoSQL Database
- Benefits:
- No need for pre-planning, can handle sudden increases
- Strong fault tolerance
- Drawbacks:
- Conditions like “network reliability,” “no communication delays,” and “network structure remains unchanged” are not guaranteed
- Programming is challenging.
- Scale Up (Vertical Scaling)