レプリケーション
レプリケーション（）とは、ソフトウェアやハードウェアの冗長なリソース間で一貫性を保ちながら情報を複製し多重化する処理を意味し、信頼性やフォールトトレラント性やアクセス容易性を強化する。同じデータを複数の記憶装置に格納することを「データレプリケーション」、同じ計算タスクを何度も実行することを「計算レプリケーション」という。計算タスクの場合、異なる機器上で実行すれば「空間的レプリケーション」となり、同じ機器上で繰り返し実行すれば「時間的レプリケーション」となる。"Replication" は本来は「複製」の意。
複製された実体へのアクセスは、一般に複製されていない単一の実体へのアクセスと同じである。外部のユーザーから見てレプリケーションは透過的でなければならない。また、障害発生時の複製物へのフェイルオーバーは、可能な限り隠蔽される。
データやサービスのレプリケーションは、一般に動的レプリケーションと静的レプリケーションに分けられる。動的レプリケーションでは、同じ要求を全複製で処理する。静的レプリケーションでは、1つの要求は1つの複製で処理され、それによる状態変化を他の複製に転送する。ある時点で1つのマスター複製が選ばれ、全要求を処理する場合、これを「プライマリ/バックアップ」型（マスタースレーブ型）といい、高可用クラスターでよく使われる。一方、任意の複製が要求を処理して状態を分配する場合、これを「複数プライマリ」型（データベースではマルチマスターレプリケーション）と呼ぶ。複数プライマリ型では、何らかの分散並行性制御が必須であり、分散ロックマネージャなどが使われる。
負荷分散は、異なる計算タスクを複数マシンに分配するのであって、計算レプリケーションとは異なる。ただし、負荷分散ではデータを複数マシンで共有する必要があるため、データレプリケーションを内部で行っている。
バックアップは、長期に渡ってコピーを保持し続けるため、レプリケーションとは異なる。レプリケーションでは、データは頻繁に更新される。