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を採用すると、ノードを追加するだけで書き込みスループットを線形に拡張でき、センサー数の増加にも柔軟に対応できます。
この用語をシェア
最終更新: