Cassandra とは?

Cassandra

Cassandra 最新情報

NRIのOpenStandiaが提供するCassandra 最新情報

OSSの保守サポートサービスの内容はこちら OSSの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

Cassandraバージョンアップ情報

すべてを見る

更新日:2022-11-21

Cassandraの概要

Cassandra(カサンドラ)は高い拡張性と、可用性を兼ね備えたOSSの分散データベース管理システムです。
CassandraはもともとFacebookにおいて、大容量のデータを格納するために開発され、 2008年にソースコードが公開されました。
その後FacebookがGoogleのBigtableをモデルとした別プロダクトであるHBaseを採用した動きから採用する企業は限定的でしたが、近年AppleやNetflixといった企業が可用性などの観点から自社の大規模システムにCassandraを採用したこともあり、再び注目を浴びています。

Cassandraはオープンソースプロジェクトであるため、無償でのソースコード取得・本番利用などが可能ですが、テスト済みでサポートを受けることが可能なDataStax社による商用製品版も存在します。

2021年7月にメジャーリリースである4.0.0がリリースされました。 このメジャーリリースでは

  • Java11や一時レプリケーションの実験的サポートの追加
  • メトリックやYAML構成情報の公開するVirtual Tables機能の追加
  • コンプライアンスやデバッグに有用な監査ログ機能の追加
  • ライブトラフィックのキャプチャやリプレイのためのFull Query Logging(FQL)機能の追加
  • ノード間メッセージプロトコルの最適化
  • クラスタノードのデータ交換で利用されるストリーミングの改善
 が行われました。

TOPに戻る

Cassandraの主な特徴

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

マスターレス方式

データベースのクラスタアーキテクチャとしては「マスタスレーブ方式」の採用が 大半を占めていますが、Cassandraは「マスターレス方式」を採用しています。
この方式では各ノードが等価であり、ノードを統括するマスタは存在しません。 そのため、単一障害点が存在しません。加えて、レプリケーション設定により 各ノードに登録されたデータはそれぞれ自動で別ノードに伝播されるため、 高い可用性を実現する事が可能です。

データの分散配置

Cassandraはコンシステント・ハッシュ法というパーティションキーに基づいて、データをクラスタ内の各ノードに分割して配置するハッシュ法を採用しているため、一部のノードがダウンした場合やスケールアウトするような場合でも、サービスを継続して利用することが可能です。

スキーマ定義がある

MongoDBなどのドキュメントDBや、RedisなどのKey-Valueストアと異なり、 Cassandraにはスキーマ定義があります。これによってアプリケーションの 開発や運用時に開発者・運用者にてデータ内容の把握が容易になります。
加えて、CassandraはRDBと異なり、スキーマに完全に依存しているわけ ではなく、一つのカラムに対して複数の値を挿入するなどある程度自由な テーブル構成を実現することができます。

性能が線形にスケールする

Cassandraは、ノードを追加することで処理をスケールさせることができます。
Cassandraは公式で性能が線形にスケールすることを謳っており、 Netflix(http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html)が実施したベンチマークもそれを裏付けています。
AppleのiCloudなど、大規模なシステムでCassandraが採用されている理由の一端としては、 このようなスケール性能があると考えられます。

SQLに似たクエリが利用可能(CQL)

Cassandraでは、CQL(Cassandra Query Language)というSQLライクなクエリで 操作を行うことが出来ます。
SELECTやUPDATE、DELETEなど、基本的なクエリはSQL ほぼそのままで実行することができます。GROUP BYはバージョン3.4.3から実装されサポートされています。 ただしJOINなどの集約は実装されていません。
また、関数やORDER BYなどの並び替えについても制限がかかっているため、注意が必要です。

TOPに戻る

Cassandraのライセンス

Cassandraのライセンスは、 「Apacheライセンスバージョン2」(Apache License version2)というライセンスに基づいて公開され、営利、非営利を問わず、 誰でも自由かつ無償で利用・改変・再配布できるようになっています。

TOPに戻る

Cassandraの動作環境

CassandraはJavaアプリケーションです。

  • Oracle Java Standard Edition 8またはOpenJDK8の最新バージョンが必要となります。(Java 11はまだ実験的サポートであり、プロダクション環境での利用は推奨されません)
  • cqlshを利用するためにはPython3.6以上の最新バージョンが必要となります。

TOPに戻る

Cassandraのダウンロード

http://cassandra.apache.org/download/

TOPに戻る

Cassandraのサポート

NRIではお客様のご要望に応じて様々な支援ができるサービスをご用意しました。
詳細は下記ページをご確認ください。

TOPに戻る

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気midPoint
  • 人気Keycloak
  • 注目MongoDB
  • ForgeRock AM(OpenAM)
  • ForgeRock IDM(OpenIDM)
  • MongoDB
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • PostgreSQL
  • Apache Struts
  • Apache Kafka
  • Apache Hadoop
  • Apache Spark
  • Spring Framework
  • Apache Tomcat
  • Solr
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • ForgeRock DS(OpenDJ)
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • BIND
  • Dovecot
  • Pentaho
  • sendmail
  • Courier-IMAP
  • ForgeRock DS(OpenDJ)
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO