アップルやNetflixなどが採用することでも知られるOSSのNoSQL「Cassandra」がメジャーバージョンアップした。サーバーサイドでマテリアライズドビューの更新が行われるなどの新機能が盛り込まれている。
NoSQLデータベースの代表的なソフトウエアの一つである「Apache Cassandra」(以降、Cassandra)」への注目が高まっています。Cassandraはオープンソースソフトウエア開発コミュニティを運営するApache Software Foundationのプロジェクトの一つで、元々はフェイスブックが運営するSNS「Facebook」の検索用に開発されていたもの。
米アップルは2014年、iCloudなどに保存されている10ペタバイトものデータを7万5000ノードで構成されるCassandraで運用していることを明らかにしています。また、米Netflixでも2500ノードで420テラバイトのデータを運用していることを発表しており(関連記事「Netflixが採用するCassandra」)、大型の事例が相次いで発表されています。
さらにグローバルで金融事業を展開するINGグループもオンライン決済システムにCassandraを採用、国内ではERPベンダーのワークスアプリケーションが開発したERPの「HUE」でCassandraを採用するなど、基幹業務システムへも利用が広がっています。
そのCassandraの最新バージョンとなる「Cassandra 3.0」が2015年11月10日(米国時間)にリリースされました。
Cassandra 3.0では、ストレージエンジンのコードをリファクタリングし、CQL(Cassandra Query Language)に最適化して実行効率が良くなっている他、新たにマテリアライズドビュー機能が搭載されました。
Cassandra 3.0のリリースを発表したブログ「The Apache Software Foundation announces Apache Cassandra v3.0」では、その特長が次のように説明されています。
v3.0 is a new milestone in the database's evolution with performance optimizations, improved data consistency operations, an average of 50% data storage savings, and numerous important developer enhancements, such as new materialized views, that greatly simplify application development.
(v3.0は性能最適化の面で、このデータベースの革新における新たなマイルストーンになった。データ一貫性の操作を改善し、平均でデータ保存域を50%削減、新たなマテリアライズドビューなどの機能はアプリケーション開発を非常に容易にすることだろう)
「ビュー(View)」とは実テーブルから作成される仮想的なテーブルのことを指します。「マテリアライズドビュー」は、仮想テーブルにデータをキャッシュとして持つため、実テーブルにアクセスすることなく高速に値を得ることができます。
Cassandra 3.0のマテリアライズドビューでは、実テーブルのデータに変更があった場合、結果整合性を保ちつつ、変更をサーバーサイドで仮想テーブル(マテリアライズドビュー)に反映してくれます。
例えば、あるゲームにおけるハイスコアを格納するテーブルをマテリアライズドビューで作成した場合、アプリケーションからそのビューを参照すると、つねに最新のハイスコアを得ることができるわけです。
その他、Cassandra 3.0ではユーザー定義関数、Windowsでのテストなども含まれていると説明されています。
Copyright © ITmedia, Inc. All Rights Reserved.