2015年9月4日、「Cassandra Meetup in Tokyo, Summer 2015」が開催された。「Cassandra(Apache Cassandra)」はNoSQLデータベースの一つで耐障害性の高さが特徴。イベントでは、最近注目を浴びている「Apache Spark」と組み合わせたビッグデータ分析について解説がなされた。

 最近、日本でサービスを開始した「Netflix」が注目を浴びている。定額制の動画配信サービスだ。先行している北米では動画配信が普及しており、ネットのトラフィックの半分以上はNetflixとYouTubeで占められていると言われるほど。数年前にはNetflixがトラフィックでYouTubeを超えたという。これだけでもNetflixの躍進とシステム規模は相当なものだと想像がつくだろう。

 そのNetflixが使用しているデータベースがCassandraだ。動画配信なので常にデータを送り続けなくてはならず、システムは止まってはならないことが求められている。Cassandraの大きな強みは無停止を実現できることにある。

 CassandraはNoSQLデータベースの一つで、分散してスケールアウトできるのが強み。元は米グーグルが発表した「BigTable」と米アマゾン・ウェブ・サービス(AWS)が発表した「DynamoDB」から、米フェイスブックが開発を始めた。後にフェイスブックはCassandraをオープンソース化し、追ってApacheソフトウエアファウンデーションに寄贈。今ではCassandraはApacheのトップレベルプロジェクトとして開発が進められている。

 技術的な特徴はデータの持ち方にある。Cassandraはデータを分散していることに加え、全てのノードを等価としている。言い換えればマスターやスレーブ、アクティブやスタンバイといった役割分担がなく、単一障害点(SPOF)を持たないことが大きい。それが耐障害性を高めるのに寄与している。この点は多くのユーザーがCassandraを選定した理由としてよく挙げている。