本文へスキップ

Apache Cassandraとは?

あぱっちかさんどら

Apache Cassandraとは、ノードを増やすだけでスケールアウトできる高可用性の分散型NoSQLデータベースシステムです。

Apache Cassandraは、Facebook(現Meta)が開発し、現在はApache Software Foundationが管理するオープンソース分散型NoSQLデータベースです。大量の書き込みと読み込みを高いスループットで処理しながら、単一障害点なし(SPOF-free)の設計で高い可用性を維持できる点が最大の特徴です。

Cassandraはリング型の分散アーキテクチャを採用しており、全ノードが対等な役割を持ちます(マスター・スレーブ構成ではない)。データはパーティションキーのハッシュ値に基づいて複数のノードに分散して保存され、設定されたレプリケーションファクターの数だけ複製されます。ノードが障害を起こしても他のレプリカが応答するため、可用性が高く維持されます。

Cassandraの主な特徴は以下のとおりです。

  • 書き込みが非常に高速(ランダムI/Oを避けたログ構造ストレージ)
  • クエリ言語としてSQLに似たCQL(Cassandra Query Language)を使用
  • 整合性レベルをクエリ単位で調整可能(最終的整合性〜強整合性)
  • マルチデータセンター・マルチクラウド展開への対応

X(旧Twitter)・Netflix・Appleなど、膨大な書き込みが必要な大規模サービスで採用実績があります。一方で、集計クエリや複雑な結合が苦手なため、アクセスパターンを先に設計してテーブルスキーマを決める「クエリ駆動設計」が求められます。

使い方・例文

IoTセンサーのデータを毎秒数千件書き込む基盤としてCassandraを採用すると、ノードを追加するだけで書き込みスループットを線形に拡張でき、センサー数の増加にも柔軟に対応できます。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語