スケールアウト(水平スケール):
システムにノードを追加することで、システム全体のスケーラビリティ(システムの規模の変化に柔軟に対応できるかの度合い)を向上させること。具体的には、サーバが動いているようなシステムで、単純にサーバの数を増やせば処理能力上がるでしょう!ってこと。
利点:
1. 上手く並列処理ができるプログラムなら、台数を増やすほど性能が上がる
2. 高いハードウェアを導入する必要がなく、安価なハードウェアで構成可能
欠点:
1. 大量のサーバを管理しなければならない
2. すべてのサーバにソフトウェアを入れる必要がある
スケールアップ(垂直スケール):
システムの単一のノードの性能を高めることで、システムのスケーラビリティを向上させること。今使ってるサーバにメモリとかプロセッサを増設したら、そりゃあ処理性能上がるでしょう!ってこと。
利点:
1. スケールアウトの場合と異なり、1台のサーバだけ管理すればよい
欠点:
1. (一般的に)スケールアウトよりもコストがかかる
2. 性能向上に限界がある。世界最高のスパコンを導入したら、それ以上は性能が上がらない。