グラフ型NoSQLデータベース(Neo4j、InfiniteGraph)編知らないなんて言えないNoSQLまとめ(4)(2/2 ページ)

» 2013年02月08日 15時35分 公開
[@IT]
前のページへ 1|2       
※本ページはアフィリエイトプログラムによる収益を得ています

Objectivity/DBをストレージに使うInfiniteGraph

 もう1つのグラフ型NoSQLデータベースとして、InfiniteGraphを紹介しておきます。この製品はオープンソースではありません。開発元のObjectivity(オブジェクティビティ)が商用パッケージとして提供していますが、無償版が用意されておりトライアル利用が可能です。

分散型で拡張性を備える

 InfiniteGraphは「分散型であり拡張性があるという点で、他のグラフ型NoSQLデータベースに優る」とされています。その拡張性を得るためInfiniteGraphは、同じくObjectivityが開発したObjectivity/DBを利用します。

Objectivity/DBは高い拡張性と高性能を備えたNoSQLデータベースです。マスタが存在しないP2P型であり、連結データベース(federateddatabase)という技術により、複数のデータベースを1つのデータベースのように扱うことができます。

 Objectivity/DBには20年以上の歴史があり、政府機関でも利用されています。調査機関のSLAC(Stanford Linear Accelerate Center)において、240台のサーバに並列分散されているという実績があります。

 具体的なアーキテクチャは公開されていませんが、Inifi niteGraphのデータ分割の方法はPlacement Strategyと呼ばれ、5種類ほど用意されているので、その中からデータの特性に合うものを選択できます。Placement Strategyによっては、単体のサーバだけでなく、複数のデータセンターにわたるストレージ場所を指定でき、クラスタ内で自動的にデータが分割されます*1



Column:DiggによるCassandra活用

 第3回で紹介したCassandraを使っている事例を紹介しましょう。

 Diggは月間約700万人のユニークビジターを抱えるSNSです。自分が見つけたニュースを投稿し、仲間と共有できます。


MySQLからCassandraをメインに

 DiggはデータベースにMySQLを利用していましたが、それを全面的にCassandraへ置換しました。

 理由としては、ニュースというコンテンツにはそもそも「強い整合性」が求められないこと、ユーザーからの投稿という書き込みが中心であること、加えて、サービスの成長に伴い複数のデータセンターへデータを分散するなどの冗長性が必要となったことを挙げています。

 同社ではCassandraを使うために、Diggの大半のアプリケーションや機能を実装し直しました。これにより、多少の混乱が生じたことも当時話題となりました。


複数のNoSQLを使い分ける

 現在Diggは複数のNoSQLデータベースを利用しています。Cassandraをメインのデータベースに位置づけ、ニュース、ユーザー、Digg(そのニュースを好きと意思表示した人の数)、インデックスなどの関連オブジェクトを保存しています。

 一方、ニュースを推薦するアルゴリズムや計算を伴う処理など、SQLの結合(Join)を多用するサービスにはMySQLを利用しています。

 また、パーソナライズ化されたニュースを保存するためにRedisも使われています。Redisは著しく応答性能に優れ、個々の異なるニーズに素早く対応できるからです。

 このようにDiggでは、データやアクセスのパターンに応じて、複数のタイプのデータベースを使い分けています。




初出情報

 本連載で抜粋・紹介している原稿の初出は下記書籍です。本連載では詳述していないNoSQLの基本的な考え方、アーキテクチャの詳細などは、書籍でご確認ください。

『NOSQLの基礎知識』

  • 【著】 本橋信也、河野達也、鶴見利章
  • 【監修】太田洋
  • 【発行】リックテレコム
  • 【ISBN】978-4-89797-887-1

 本書はクラウディアン(旧ジェミナイ・モバイル・テクノロジーズ)の技術者らが監修および執筆を行っています。同社は、国産NOSQL「HIBARI」を開発、その後、Cassandraに自社の「HyperStore」を実装したクラウドストレージ用パッケージソフトウェア「Cloudian」を開発して、現在商用提供を行っているITベンチャー企業です。


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。