Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
NoSQL の野心的な使い方 ~ Apache Cassandra 編~
誰?■ 株式会社エスキュービズム    岸本 康二■EC 系サービスの構築案件から  大規模系の技術開発、  クラウド、 M2M 系など■ 大学の博士課程まで物理  新技術を使うより   新技術を作るのが好き
  NoSQL のよくある誤解・正解  ■ 正解    ○ 負荷分散に優れている    ○ 耐障害性が高い    ○ データ一貫性は弱い  ■ 誤解   × データ一貫性がない       CAP 定理は正しい。が、誤解が異常に多い。   × ...
■ Apache Cassandra を選んだ理由      Cassandra       MongoDB          Redis      ボトルネックな               ボトルネッ              ボトルネッ ...
  NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散)    1)レプリケーションで読み込み負荷分散       → 書き込み負荷は分散できず
  NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散)    1)レプリケーションで読み込み負荷分散       → 書き込み負荷は分散できず    2)テーブル単位で複数サーバに分割      2  )テーブルを複数...
  NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散)    1)レプリケーションで読み込み負荷分散       → 書き込み負荷は分散できず    2)テーブル単位で複数サーバに分割      2  )テーブルを複数...
  NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散)   1)レプリケーションで読み込み負荷分散      → 書き込み負荷は分散できず   2)テーブル単位で複数サーバに分割     2  )テーブルを複数サーバに...
  NoSQL と RDBMS との本当の関係   RDBMS でも NoSQL でも設計を深く突き詰めると同じ      そもそも CPU の処理量は DB に関係なく一定           ↓      CPU 処理量の配分の最適化が大事...
  NoSQL と RDBMS との本当の関係   ■NoSQL   ・書き込み負荷も容易に分散(スケールアウト)   ・障害・アクシデントに強い   ・分散がバックアップも兼ねるので効率的・経済的        → フロントシステム向き   ...
  NoSQL と RDBMS との本当の関係    WEB APP        ● 従来型                       →DB に負荷集中    WEB APP                              RD...
  NoSQL と RDBMS との本当の関係    WEB APP       NoSQL                  NoSQL    WEB APP                                  RDBMS   ...
  NoSQL と RDBMS との本当の関係    WEB APP       NoSQL                  NoSQL    WEB APP                                  RDBMS   ...
  NoSQL と RDBMS との本当の関係    WEB APP       NoSQL    WEB APP       NoSQL    WEB APP       NoSQL    WEB APP       NoSQL    WEB...
  NoSQL と RDBMS との本当の関係    WEB APP                 NoSQL    WEB APP         NoSQL    WEB APP       NoSQL    WEB APP       ...
  NoSQL と RDBMS との本当の関係    WEB APP                 NoSQL    WEB APP         NoSQL    WEB APP       NoSQL    WEB APP       ...
  NoSQL と RDBMS との本当の関係WEB APP                 NoSQL                                        RDBMSWEB APP         NoSQLWEB ...
■  実案件での NoSQL      大規模ポイント管理サービス   某大手放               送局様
■  実案件での NoSQL   ・秒間 5000 回の「書き込み」の実績      →1 時間で 1800 万回の実績(月間 130 億回)      → スマートメーター系への展開に繋がった   ・拡張性の担保      → サーバを追加す...
■   NoSQL あるある ~職場編~    ・社長 : 「 NoSQL って何 ? 」       → 「あ、さすがですね !              これから伸びるクラウド時代の技術です」
■   NoSQL あるある ~職場編~    ・社長 : 「 NoSQL って何 ? 」       → 「あ、さすがですね !              これから伸びるクラウド時代の技術です」    ・人事 : 「新人でもできる ? 」  ...
■   NoSQL 採用への道 ~職場編~    ・社長 : 「 NoSQL って何 ? 」       → 「あ、さすがですね !              これから伸びるクラウド時代の技術です」    ・人事 : 「新人でもできる ? 」 ...
■   NoSQL が熱い領域 ・ M2M 領域(広い意味で)     → センサーデータ         → 家電データも相当     → 業界大手は Hadoop による可視化を売っているだけ         → まだまだ巨大なニーズが残っ...
■ Action !  ■ 書籍             翔泳社             Cassandra 実用システム・インテグレーション                   ・ Cloudn 上でお試しができます。            ...
■ Action ! ■ 合言葉 ・ NoSQL で腕を試そう!世の中を変えてしまおう!■ 大切な考え方・キーワード ・マスタレス ・ NoSQL は画面から( RDBMS はモデルから)      →DB は入れ物。だから分散できる。    ...
■ データベースの変遷1970 年頃      RDB の誕生   20 年                   RDB 黎明期1990 年頃      SQL の標準化   20 年                   RDB 黄金期2010...
Upcoming SlideShare
Loading in …5
×

Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~

8,794 views

Published on

Developers Summit 2013 の
【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
のスライドです。
NoSQLについてのよくある誤解や正解から始めて、
RDBMSとの本当の関係、
 フロントエンドシステムがNoSQL
 バックヤードシステムがRDBMS
という構成が自然な解であることなどを
簡単ながら記載しています。

Published in: Technology
  • Be the first to comment

Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~

  1. 1. NoSQL の野心的な使い方 ~ Apache Cassandra 編~
  2. 2. 誰?■ 株式会社エスキュービズム    岸本 康二■EC 系サービスの構築案件から  大規模系の技術開発、  クラウド、 M2M 系など■ 大学の博士課程まで物理  新技術を使うより   新技術を作るのが好き
  3. 3.   NoSQL のよくある誤解・正解 ■ 正解 ○ 負荷分散に優れている ○ 耐障害性が高い ○ データ一貫性は弱い ■ 誤解 × データ一貫性がない CAP 定理は正しい。が、誤解が異常に多い。 × トランザクションは無理 × 業務系フロントシステムには向かない RDBMS を主役に据えた Not Only SQL … → なんて言ってるのはもう古い!
  4. 4. ■ Apache Cassandra を選んだ理由 Cassandra MongoDB Redis ボトルネックな ボトルネッ ボトルネッ し! ク ク 独立協調型 管理型 マスタ - スレーブ型
  5. 5.   NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散) 1)レプリケーションで読み込み負荷分散 → 書き込み負荷は分散できず
  6. 6.   NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散) 1)レプリケーションで読み込み負荷分散 → 書き込み負荷は分散できず 2)テーブル単位で複数サーバに分割   2 )テーブルを複数サーバに分割 → 発想は NoSQL 系と同じ
  7. 7.   NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散) 1)レプリケーションで読み込み負荷分散 → 書き込み負荷は分散できず 2)テーブル単位で複数サーバに分割   2 )テーブルを複数サーバに分割 → 発想は NoSQL 系と同じ 3)インデックスを張る → 発想は NoSQL 系と同じ
  8. 8.   NoSQL と RDBMS との本当の関係RDBMS での高速化(負荷分散) 1)レプリケーションで読み込み負荷分散 → 書き込み負荷は分散できず 2)テーブル単位で複数サーバに分割   2 )テーブルを複数サーバに分割 → 発想は NoSQL 系と同じ 3)インデックスを張る → 発想は NoSQL 系と同じ 番外) SQL の解析を飛ばして直接ストレージ API の操作 → もはや SQL では…
  9. 9.   NoSQL と RDBMS との本当の関係 RDBMS でも NoSQL でも設計を深く突き詰めると同じ そもそも CPU の処理量は DB に関係なく一定 ↓ CPU 処理量の配分の最適化が大事 ↓ NoSQL :フロント (オンライン) RDBMS :バックヤード (オフライン) ログ解析など(← SQL が活きる!) ↑ 「 Not Only SQL 」の構成とは真逆
  10. 10.   NoSQL と RDBMS との本当の関係 ■NoSQL ・書き込み負荷も容易に分散(スケールアウト) ・障害・アクシデントに強い ・分散がバックアップも兼ねるので効率的・経済的 → フロントシステム向き ■RDBMS ・ SQL が便利。思いつきの解析もすぐに実行できる ・検索、ソートが効率的 → バックヤードでの分析・統計向き → 定型に落として Hadoop
  11. 11.   NoSQL と RDBMS との本当の関係 WEB APP ● 従来型 →DB に負荷集中 WEB APP RDBMS WEB APP RDBMS WEB APP WEB APP
  12. 12.   NoSQL と RDBMS との本当の関係 WEB APP NoSQL NoSQL WEB APP RDBMS WEB APP RDBMS WEB APP ● 負荷を軽減しようと・・・ WEB APP →NoSQL でキャッシュ →DB の書き込み負荷は減らない
  13. 13.   NoSQL と RDBMS との本当の関係 WEB APP NoSQL NoSQL WEB APP RDBMS WEB APP RDBMS WEB APP ● ボトルネック部分を削ってみる WEB APP
  14. 14.   NoSQL と RDBMS との本当の関係 WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL
  15. 15.   NoSQL と RDBMS との本当の関係 WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL
  16. 16.   NoSQL と RDBMS との本当の関係 WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL WEB APP NoSQL ● 自然と NoSQL クラスタに行き着く
  17. 17.   NoSQL と RDBMS との本当の関係WEB APP NoSQL RDBMSWEB APP NoSQLWEB APP NoSQLWEB APP NoSQLWEB APP NoSQL ● 最適なシステム構成 →NoSQL はフロント   → RDBMS はバックヤード
  18. 18. ■  実案件での NoSQL 大規模ポイント管理サービス   某大手放 送局様
  19. 19. ■  実案件での NoSQL ・秒間 5000 回の「書き込み」の実績 →1 時間で 1800 万回の実績(月間 130 億回) → スマートメーター系への展開に繋がった ・拡張性の担保 → サーバを追加するだけ → すでに秒間 16000 回は実証(月間 400 億回) ・サーバ障害もひと通り経験 →HD の大規模障害にも耐えた こんなシステムを 1 人で構築することも可能なのが NoSQL の凄く面白いところ
  20. 20. ■   NoSQL あるある ~職場編~ ・社長 : 「 NoSQL って何 ? 」 → 「あ、さすがですね ! これから伸びるクラウド時代の技術です」
  21. 21. ■   NoSQL あるある ~職場編~ ・社長 : 「 NoSQL って何 ? 」 → 「あ、さすがですね ! これから伸びるクラウド時代の技術です」 ・人事 : 「新人でもできる ? 」 → 「ちょうど良かったです。 そういう人の方が向いてます ! 」 →人材確保
  22. 22. ■   NoSQL 採用への道 ~職場編~ ・社長 : 「 NoSQL って何 ? 」 → 「あ、さすがですね ! これから伸びるクラウド時代の技術です」 ・人事 : 「新人でもできる ? 」 → 「ちょうど良かったです。 そういう人の方が向いてます ! 」 →人材確保 ・部長 : 「お金になるワケ ? 」 → 【会場で具体的にご説明】
  23. 23. ■   NoSQL が熱い領域 ・ M2M 領域(広い意味で) → センサーデータ → 家電データも相当 → 業界大手は Hadoop による可視化を売っているだけ → まだまだ巨大なニーズが残っている ・既存領域でもシステムリニューアルは熱い → 決済者は DB で選ばない → より良いシステムをより合理的なコストで
  24. 24. ■ Action ! ■ 書籍 翔泳社 Cassandra 実用システム・インテグレーション ・ Cloudn 上でお試しができます。 ・ NoSQL のトランザクションもテスト可能 「 NanaHoshi 」 http://b-rabbit.jp/nanahoshi/ 翔泳社 ニフティクラウド IaaS によるシステム構築
  25. 25. ■ Action ! ■ 合言葉 ・ NoSQL で腕を試そう!世の中を変えてしまおう!■ 大切な考え方・キーワード ・マスタレス ・ NoSQL は画面から( RDBMS はモデルから) →DB は入れ物。だから分散できる。 → ロジックはアプリ側へ。 ・ CAP 定理と BASE という概念 ・めげない心 ・ NoSQL はエンジニアの腕の見せ所がとても多い! NoSQL という新しい「市場」でのキャリア形成にも
  26. 26. ■ データベースの変遷1970 年頃 RDB の誕生 20 年 RDB 黎明期1990 年頃 SQL の標準化 20 年 RDB 黄金期2010 年頃 NoSQL の誕生 ← RDB の処理限界 ・ネット人口の増加 ・デバイスの増加 ・ WEB サービスの増加 NoSQL 黎明期 NoSQL はこれから大きく成長する領域です !

×