コネクト株式会社
はじめに
� この資料は、ビックデータの根幹を担うデータシステムCassandraを技術的にご紹介するためのイントロダクション資料です。
� トポロジーの違いから始まり、Cassandraの基本的な機能や導入事例などをご紹介いたします。
2
2
トポロジーと安全性/処理能力
MySQLスタンドアロン レプリケーション
マスタ スレイブ
レプリケーション
データの同期
4
1台のサーバがデータベースを処理します処理能力の限界
格納容量の限界
耐障害性の限界
MySQL+CLUSTERPRO
� フェールオーバー
Client
アプリケーション
アクティブ スタンバイ
データの同期
障害時仮想IP付け替え5
最小限のダウンタイムを実現
Cassandra
� 分散クラスタ
N5
N3/N4N3
N1/N2
N1
N4/N5
N2
N1/N5
ノード
問合せ処理
データの分散格納
Client
アプリケーション
N4
N2/N3
いずれのノードでも処理可能
6
レプリカ3
複数ノードがデータベースを処理します
高次元の処理能力/格納容量/耐障害性
NoSQLの存在意義� なぜRDBMSではダメなのか?
� 多数のクライアントからの同時読込み・書込みに対する負荷分散が難しい
� なぜNoSQLを選ぶのか?� NoSQLとは非関係型の分散データストアの総称です。特徴として、非構造化データをストアが可能、高書き込み時のスケーリングが可能などが挙げられます。
� なぜCassandraなのか?� Cassandraは、OSSオーソリティApache財団のプロジェクトです。
� 高機能な管理ツールが、DataTsax社より有償提要されています。
� 企業の実務システムにて導入実績が多数あります。
7
データ構造から運用まで
8
Cassandraの構造
� データを構成する要素
� Keyspace
� ColumnFamily
� RowKey
� SuperColumn(必須ではない)
� Column
� Value
9
商品のデータなどを入れる場合
10
Keyspaceと ColumnFamily
� Cassandraで扱う1データの型
� Data[ RowKey ][ Column ] = Value
� このデータを入れる箱としてColumnFamily
� ColumnFamilyを複数入れるKeyspace
� MySQLなどのRDBMSで言う所の
� Database = Keyspace
� Table = ColumnFamily
11
CQL
� RDBMSのSQLような形でCassandraが扱えるものでSQL では無く Cassandra Query Language (CQL)と呼ぶ
� CQL3を使用する場合は、ColumnFamilyが無くなり代わりにTableになり、無制限にカラムを入れる事は出来なくなります(前の形と互換性が無い)
12
CQL3使用時のデータスキーマ
13
サンプル構成 処理内容 秒間処理数
検索 5,000
更新 10,000
14
� ノード数5の場合、8TB(1ノード5TB:レプリカ3)程度のデータ容量を処理可能です。
*かなり、控えめの数値となっております。*処理数は、各システムの構成によって異なります。
事例1: ECサイト
� JOURNAL STANDARD、Spick and Span、EDIFICE、IENA、DEUXIEME CLASSE、kitsonなどの有名ブランドを取り揃えた公式オンラインショッピングサイトを自社で運営しつつ、ZOZOTOWNなどのモールにも出店しているため、在庫連動を強化することにより在庫切れによる販売機会の損失を防ぐことが急務でした。また、キャンペーン実施時の高負荷に耐えつつ、高額になっていたデータベースの運用費を削るべく、Apache CassandraのNoSQLのパワーを持ちながらトランザクションも扱えるNanaHoshi/BlueRabbitの採用に至りました。
� 【特徴・機能】� 全てのECサイト間の在庫連動
� キャンペーン実施時の高負荷に耐える高度な設計
� RDBMS(Oracle)からNoSQL(Cassandra版NanaHoshi)へ切り替えて大幅なコストの削減
� NoSQL(Cassandra版NanaHoshi)によるスケーラビリティの確保
� NoSQL(Cassandra版NanaHoshi)による高い耐障害性
� 高速検索機能
15
事例2:放送局
� 各家庭のテレビ受信機との大規模なデータのやり取りを支えるシステムの核にNanaHoshi/BlueRabbitが採用されています。月間400億回に上るアクセスを支えることが可能で、クラウド時代に最適化された24時間365日の有人監視・保守システムとも密に連係されており、取得したデータの各種分析機能も提供しています。Cassandraの日本での大規模事例として、その有用性を示す事例です。
� 【特徴・機能】
� テレビ受信機からの秒間16,000回に上る書き込みデータを高速保存
� 高いスケーラビリティと耐障害性・リアルタイムポイント表示
� ポイントと景品の交換機能
� 受信データの表示/解析
� 外部システムへのデータ転送機能
� 監視サーバ台数無制限の24/365の有人監視サービスとの連携
16
コネクト株式会社
〒111-0051
東京都台東区蔵前3-6-7
蔵前イセキビル4F
TEL:03-5809-1853
FAX:03-3865-8220