Your SlideShare is downloading. ×
Cloudian presentation for Cassandra Conference 2012 in Tokyo
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Cloudian presentation for Cassandra Conference 2012 in Tokyo

1,444

Published on

2012年11月29日開催のCassandra Conference 2012 in TokyoにおけるCloudianのプレゼンテーション資料です。「NOSQLの基礎知識(ビッグデータを活かすデータベース技術)」に掲載のNOSQLデータベースの性能試験結果についても簡単に紹介しています。

2012年11月29日開催のCassandra Conference 2012 in TokyoにおけるCloudianのプレゼンテーション資料です。「NOSQLの基礎知識(ビッグデータを活かすデータベース技術)」に掲載のNOSQLデータベースの性能試験結果についても簡単に紹介しています。

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,444
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. S3クラウドストレージ「Cloudian」におけるCassandra 活用事例Cassandra Conference in Tokyo 2012 2012年11月29日 クラウディアン株式会社 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 1
  • 2. Agenda Cloudianの概要と差別化ポイント Cassandraの採用理由 技術的な課題や解決策など Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 2
  • 3. Cloudian(クラウディアン)とは 商用実績のある大規模分散オブジェクトストレージ Amazon S3互換の豊富なAPI デファクトスタンダード オープンなAPI仕様 既存のS3対応アプリケーションが そのまま利⽤できる 異種混在、汎用サーバー利用の ソフトウェア製品 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 3
  • 4. Cloudian(クラウディアン)とは 耐障害性、エラスティック性(弾⼒性) データをノード間で複製、データセンター間で複製 サービス無停⽌でノードを追加できる(容量が拡⼤できる) マルチテナント、豊富な管理機能(課⾦、QoSなど) Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 4
  • 5. 商用サービスでの採用実績 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 5
  • 6. S3 APIによるアクセス アプリケーション ユーザー クライアント・ライブラリー ロード・バランサー ロード・バランサー Web画面( 画面(CMC) 画面( ) S3 互換 REST API Cloudian S3 ストレージノード Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 6
  • 7. S3 APIの例 - オブジェクトの格納PUT /my-image.jpg HTTP/1.1Host: my-bucket.s3.mydomain.jpDate: Fri, 14 Sep 2012 17:50:00 GMTAuthorization: アクセスキー:シグネチャーContent-Type: text/plainContent-Length: 11434Expect: 100-continue…(以降、オブジェクトのデータ) REST - HTTP/HTTPSによるステートレスな通信 シグネチャーは、リクエストの内容と時刻をシークレットキーで ハッシュ値化したもの 第3者が傍受しても、シークレットキーなしでは再実⾏や改ざん不可 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 7
  • 8. ネットワークファイルサーバー(NFS/CIFS) アプリケーション ユーザー NFS / CIFS S3対応ゲートウェイ(他社製品) NAS ゲートウェイ でファイルサーバー化 ロード・バランサー S3 互換 REST API Cloudian S3 ストレージノード Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 8
  • 9. 管理APIRESTful APIJSON形式のデータ ユーザー システム管理者 課金システム ロード・バランサー ロード・バランサー Web画面( 画面(CMC) 画面( ) 管理API 管理 Cloudian 管理機能 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 9
  • 10. ⾼度なS3機能をカバー + 独自の追加機能 将来のS3機能 ⾼度なS3機能 マルチパート・アップロード Cloudian独自追加機能 ACL、オブジェクト・バージョニング ロケーション・コンストレイン マルチ・テナント 公開URLアクセス 等 利⽤量制御(QoS) 基本S3 API互換 互換 Put、Get、Head、Delete、等 利⽤量レポート 基本オブジェクトストレージ機能 バーチャル・バケット RESTful API、メタデータ付与 オブジェクトをバケットに格納、分散と複製 マルチ・データセンター Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 10
  • 11. ⾼度なS3 APIの例 - ロケーション・コンストレイン Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 11
  • 12. ⾼度なS3 APIの例 - オブジェクト・バージョニング http://docs.amazonwebservices.com/AmazonS3/latest/dev/ObjectVersioning.html Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 12
  • 13. 複数データセンター対応100台〜400台のクラスター データを 論理リング 複数のノード に自動複製 DC1 DC2 複数データセンターや ラック単位で指定可能 ノード追加や縮退時に、 自動でデータリバランス Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 13
  • 14. マルチテナント、利用量制御(QoS) 格納容量バイト規制 要求数規制 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 14
  • 15. 数多くのS3エコシステム製品で接続性を実証済み 代表的なS3エコシステム製品 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 15
  • 16. Agenda Cloudianとは Cassandraの採用理由 技術的な課題や解決策など Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 16
  • 17. Cassandraを採用 0.7.xで採用、現在はv1.0.7を使用 ソースコードをフォークしてカスタマイズ Hectorクライアント S3オブジェクトの格納にCassandraの分散アルゴリ ズムを使用 データの分散、複製 ノードの死活監視 S3オブジェクト本体はファイルシステムに格納 スケールアウト型の分散データベースとして オブジェクトのメタデータ 使⽤状況データ ユーザーやグループ Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 17
  • 18. Cassandraの採用理由 スケーラブル 稼働中にノードを追加することでキャパシティを向上 分散(ピアツーピア・アーキテクチャ)、単一故障点がない 信頼性 ネットワークやハードウェア故障への耐性 データセンター間の複製 調整可能な整合性レベル(consistency level) 便利な機能 TTL、二次インデックス、カウンター、圧縮、暗号化など ⾼速 特に書き込みが高速 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 18
  • 19. 複数のNOSQLを評価 6ノード、3複製、Read Heavy 遅延時間の 遅延時間の中央値 95パーセンタイル値 30分間で バリューサイズ (ミリ秒) (ミリ秒) スループット (件/秒) 処理した 1KB Get Put Get Put 件数Hibari 0.1.8 1.027 1.676 3.069 2.881 8,775 15,804,196Cassandra 1.0 1.016 0.949 2.476 4.789 8,748 15,755,306Cassandra 0.8.6 1.282 0.948 5.729 2.243 8,700 15,668,017Riak 1.0.1LevelDB 3.281 5.541 22.296 74.663 8,489 15,288,692出典:「NOSQLの基礎知識」 リックテレコム、2012年4月出版 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 19
  • 20. 単一故障点を解消(No SPOF) DC1 DC2 ロード・バランサー ロード・バランサーS3API/管理API S3API/管理API S3API/管理API S3API/管理API サーバー サーバー サーバー サーバー Redisマスタ Redisスレーブ Redisスレーブ Redisスレーブ Cassandra Cassandra Cassandra Cassandra HyperStore HyperStore HyperStore HyperStoreS3API/管理API S3API/管理API S3API/管理API S3API/管理API サーバー サーバー サーバー サーバー Cassandra Cassandra Cassandra Cassandra HyperStore HyperStore HyperStore HyperStore Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 20
  • 21. CassandraにS3オブジェクト(blob)を格納オブジェクトに応じて格納先を自動選択 Cassandra、または、ファイルシステム Cassandraは小さなオブジェクトに向いている大きなオブジェクトは複数のパートに分割Row key:object name + version + part info + timestampColumn name: 未使⽤ Column Random Row Name Partitioner key Value Column Family 21 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved.
  • 22. Cassandra にS3オブジェクトのメタデータを格納メタデータ オブジェクトのサイズ、Etag、MD5、タイムスタンプ、ACL、 パートの情報、バージョン、ユーザー定義メタデータ、などRow key: group + user + bucketColumn names:object name + version + part info + timestampWide rowオブジェクトのリスティングにカラムソートを活⽤ Column Column Column Name Name Name Random Row Partitioner Key Value Value … Value Column Family Sorted by Column Name 22 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved.
  • 23. Agenda Cloudianとは Cassandraの採用理由 技術的な課題や解決策など Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 23
  • 24. 大きなデータの扱いで性能が劣化 遅延時間の 遅延時間の中央値 95パーセンタイル値 30分間で (ミリ秒) (ミリ秒) バリューサイズ スループット (件/秒) 処理した 100KB 件数 Get Put Get PutHibari 0.1.8 9.268 12.299 61.914 75.934 2,073 3,733,136Cassandra 1.0 28.551 9.992 379.745 155.680 1,699 3,060,198Cassandra 34.099 8.402 1,015.888 333.048 1,336 2,406,4460.8.6出典:「NOSQLの基礎知識」 リックテレコム、2012年4月出版 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 24
  • 25. 巨大なオブジェクトを効率的に格納するための⼯夫オブジェクトのサイズに応じて最適な格納先を選択 小さなオブジェクト HyperStore Manager Cassandra (特許申請中) 大きなオブジェクト 仮想マシンの ムービー VMイメージ ファイルシステム Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 25
  • 26. HyperStoreを利用しない時と⽐較して 書き込み:約30%高速化 読み出し:約400%高速化 ディスク容量の利⽤効率:50%→80%に向上 HyperStore無し HyperStore HyperStore有り HyperStore iostat % utilization io read/write (MB) Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 26
  • 27. HyperStoreの仕組み メタデータは引き続きCassandraに格納 Cassandraの分散アルゴリズムを用いて データ分散、複製、死活監視を実現 Cassandraのソースをフォークしてカスタマイズ 利点 性能の向上 ディスク使⽤量の効率化 Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 27
  • 28. Cassandra: 現状の課題 ノードリペア 低速、性能への影響、進捗のモニタリングが困難 コンパクション 性能に多⼤な影響がある、チューニングが困難、 キャパシティプランニングが困難 ⼤量のカラムに対する column slice キャッシュ(row + key)の効果が薄い これらはCassandraコミュニティーでよく知られた 弱点であり、Cassandraの開発版では解決済みのも のもある Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 28
  • 29. まとめ Cassandraなどのイネーブリングテクノロジーにより クラウドストレージ・プロバイダー各社が同じ土俵に ⽴つことが可能に• Cloudian評価版お申し込み: • http://cloudian.jp/cloud-storage-products/cloudian_eval_agr.php Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 29
  • 30. Cloudianパートナーhttp://cloudian.jp/cloud-storage-products/cloudian-partners.html Copyright © 2012 Cloudian Inc. & KK All Rights Reserved. Page 30

×