# アーキテクチャ比較

__*TiDB architecture advantages*__

+ 伝統的な非分散データベースアーキテクチャと比較して、TiDBには以下の特徴があります
  + 両方ともACIDと強いトランザクションの一貫性をサポートしています
  + 分散アーキテクチャ、コンポーネントの切り離し、優れたスケーラビリティ、クラスタのエラスティックな拡大・縮小をサポートしています
  + デフォルトで高可用性があり、完全自動フェールオーバーが可能であり、いくつかのレプリカの故障の場合でもデータベースは自動的にフェールオーバーし、ビジネスには影響がありません
  + ビジネスロジックの変更やシャーディングキーの追加などなしで、水平スケーリングが可能です
  + 軽量でシンプルなSQLのレスポンスにあるのではなく、大量の高並行性SQLに対するスループットに強みがあります
-------------------------------------------------------------
ACID準拠の前提の下、従来のデータベースと TiDB クラスタの主な違いは、前者がシングルインスタンスで実行されるように設計されており、最適なスケール方法は垂直なスケーリングですが、水平なスケーリングは非常に困難です。マルチノードクラスタの導入が行われると、ノード間の通信コストが著しく増加し、アーキテクチャが複雑になります。一方、TiDBクラスタは分散マルチノードデザインであり、優れた水平的スケーラビリティを有しています。これがクラウドネイティブと呼ばれる理由の1つです。

対照的に、両者の特性が明確になります。データ量が少なく、操作が非常にシンプルな場合、シングルインスタンスアーキテクチャは十分であり、追加のネットワーク通信オーバーヘッドはなく、効果は理想的ですが、大量のデータや更新操作のスループットが多い場合、TiDBの利点が明らかになり、ノードを簡単に追加することで、直線的に増加するデータ量やパフォーマンスの課題に対応できます。