More Related Content
Similar to [db tech showcase OSS 2017] A22: NoSQL:誰のための、何のためのデータベース?その将来は?by Aerospike, Inc. 田村俊明 (20)
More from Insight Technology, Inc. (20)
[db tech showcase OSS 2017] A22: NoSQL:誰のための、何のためのデータベース?その将来は?by Aerospike, Inc. 田村俊明
- 1. 1© 2017 Aerospike Inc. All rights reserved.[ ]
NoSQL:
誰のための、
何のためのデータベース?
その将来は?
田村俊明
- 2. 2© 2017 Aerospike Inc. All rights reserved.[ ]
■ NoSQLデータベース
■ Cassandra
■ MongoDB
■ Redis
■ Riak
■ Couchbase
■ DynamoDB
■ Hbase
■ RocksDB
■ Tokyo Tyrant
■ Kyoto Tycoon
■ kumo.fs
■ Aerospike
…
最初に質問させてください
■ この中で、5つ以上、ご存知の方?
■ Aerospikeをご存知の方?
■ 現在、NoSQLをお使いの方?
■ 自社ではNoSQLを使うことは
無いとお思いの方?
- 3. 3© 2017 Aerospike Inc. All rights reserved.[ ]
■ リレーショナル・データベースで行けるんじゃないの
■ 実績あるし、十分速いし
■ 大量データといっても、大きなハードディスクがあれば
■ ハードディスクは安くで大容量だし
■ 速さが必要といっても
■ 今、十分、間に合っているし
■ うち(自社)のシステムも相当、大きいんだけど
■ データベースを換えるほど、大きなシステムって
■ 特殊な分野だけとか
■ インターネット広告らしい
■ まずは、いくつかの事例をご紹介します
そもそも、NoSQLデータベースは必要なの?
- 4. 4© 2017 Aerospike Inc. All rights reserved.[ ]
NoSQL事例:インターネット広告 RTB(Real Time Bidding)
ニュース
サイト
広告枠
Supply-
Side
Platform
(SSP)
Demand-
Side
Platform
(DSP)
Demand-
Side
Platform
(DSP)
Demand-
Side
Platform
(DSP)
サイト閲覧実績
35円
35円
40円
インプレッション発生
70円
RTB
ユーザ属性
NoSQL
NoSQL
NoSQL
Data
Management
Platform
(DMP)
- 5. 5© 2017 Aerospike Inc. All rights reserved.[ ]
■ 要件
■ 広告表示までに100ms
■ RTBで50ms
■ 毎秒500万回のオークション
■ 数十億件のクッキーを検索
■ データベース・アクセスは2ms以下
■ 稼働率100%
■ NoSQLデータベース:唯一の選択肢
■ 高スループット
■ 低レイテンシ
■ スケーラビリティ(性能、データ量)
■ 経済性
NoSQL事例:インターネット広告 RTB(Real Time Bidding)
Ads is Displayed
Publishers
Ad Networks & SSPs
Ad Exchanges
Demand Side
Platform
Data Management
Platforms
Brands Agencies Buyers
0 ms 100 ms
- 6. 6© 2017 Aerospike Inc. All rights reserved.[ ]
■ インターネットでのカード決済
■ さらに、デジタル・ペイメントの世界へ
■ そのトランザクションは本当に正しいものか?
■ 巨額な不正取引
■ もし、こんなトランザクションがあったら?
■ 東京での決済の5分後に、リオデジャネイロで同じカードの決済があったら
■ リオデジャネイロでの決済は初めて
■ 同じカードの決済が1分間に30回あったら
■ そんな頻度は過去にはなかったのに
■ 不正検出のためのルール
■ 数十個存在し、業界で共有されている
NoSQL事例:クレジットカードの不正検出
- 7. 7© 2017 Aerospike Inc. All rights reserved.[ ]
クレジットカード処理システム
不正検出・防御アプリケーション
Rule 1
Rule 2
Rule 3
過去データの解析
Rule 1 - 合格
Rule 2 - 合格
Rule 3 - 違反
該当アカウントの履歴
種々の属性データ
アカウント統計量
■ 要件
■ 処理全体で 750ms
■ 一枚のクレジットカードの処理時に
数百のDBアクセスが発生
■ 低レイテンシは必須
■ データは増え、速さもより必要
■ スケーラビリティが必須
■ 経済性
■ NoSQLデータベース:唯一の選択肢
■ 高スループット
■ 低レイテンシ
■ スケーラビリティ(性能、データ量)
■ 経済性
NoSQL事例:クレジットカードの不正検出
NoSQL
- 8. 8© 2017 Aerospike Inc. All rights reserved.[ ]
■ デジタル・データ
■ 初めての汎用計算機ENIACは1946年
■ ITは約70年の歴史
■ 最近2年間で生成されたデータは、
過去70年間分の何割くらい?
■ 10%? 30%?
ユースケース:ビックデータ・IoT
■ インターネットとスマートフォン
■ SNS: ブログ、メッセージ、写真、動画
■ IoT
■ 人間が介在せず
■ 例:GPS
■ データの爆発、リアルタイム性
K-M-G-T-P-E-Z
- 9. 9© 2017 Aerospike Inc. All rights reserved.[ ]
■ データ表現の柔軟性
■ 例:温度センサー
■ センサーID、時刻、温度
■ スマートフォンには
■ 加速度センサー
■ ジャイロセンサー
■ 磁気センサー
■ GPS
■ 輝度センサー
■ 近接センサー
■ 圧力センサー
■ 複合モジュールだったら?
IoT時代のデータベース
■ 事前に想定できないデータ量
■ データ源の増加
■ サンプリング時間の変更
■ データが数千倍にも
■ 大量データに対する高速アクセス
■ 大量のデータ源からの大量の書き込み
■ 解析システムが大量の読み込み
■ バッチからオンラインへ
■ リアルタイム化の傾向
■ 分散システムが必須
■ スケールアウトでの対応が必要
NoSQLデータベース:唯一の選択肢
- 10. 10© 2017 Aerospike Inc. All rights reserved.[ ]
NoSQL事例:オンライン機械学習
手作業、静的データ、バッチ 自動、ストリーミング・データ、オンライン
- 11. 11© 2017 Aerospike Inc. All rights reserved.[ ]
■ バッチ
■ モデル作成が
困難だが、その
評価は容易
■ 大規模なデータ
の移動が必要
■ データ蓄積のた
めのストレージ
が必要
■ データ集約に労力
■ ほとんどが手作業
■ 数十個のモデル
■ 一億のスコア
NoSQL事例:バッチ vs. オンライン
■ オンライン
■ 開発そのものは
容易だが、モデ
ルの評価は困難
■ イベント単位のデ
ータ・ストリーム
■ ストレージ容量は
それほど問題に
ならず
■ データ集約は容易
■ ほとんどが自動
■ 千個超のモデル
■ 毎日千億のスコア
NoSQLデータベース:唯一の選択肢
- 12. 12© 2017 Aerospike Inc. All rights reserved.[ ]
NoSQL事例:キャッシング層の高度化
■ なぜキャッシュが必要?
■ 複雑さ・一貫性・保守性
■ 書き込みはRDBMSへ
■ データ遅延
■ 読み込みはキャッシュから
■ RDBMSからデータ・
ロードが必要
■ キャッシュの再起動
■ 堅牢性
■ RDBMS、キャッシュのい
ずれかがダウンした場合、
システム・ダウン
■ 拡張性
■ スケーラビリティに問題
Caching Layer
Fast speed – Consumer Scale
Real-time
Consumer Facing
Pricing /
Inventory/Billing
Real-time
Decisioning
Streaming
Data
Legacy Database
(Mainframe)
RDBMS
Database
Transactional
Systems
Enterprise Environment
- 13. 13© 2017 Aerospike Inc. All rights reserved.[ ]
■ 2-Speed IT
■ Systems of Record
■ データを記録・管理するためのシステム
■ Systems of Engagement
■ 利用者との接点となるシステム
■ Systems of Record
■ バックオフィス・アプリケーション
■ 企業内の処理のため
■ 変化も速度もあまり要求されないが、
堅牢性、一貫性が必要
■ Systems of Engagement
■ フロントエンド・アプリケーション
■ 消費者側に向いている
■ 柔軟性、俊敏性、高速性が必要
今後の企業システム: 2-Speed IT
- 14. 14© 2017 Aerospike Inc. All rights reserved.[ ]
NoSQL事例:キャッシング層の高度化
Real-time
Consumer Facing
Pricing /
Inventory/Billing
Real-time
Decisioning
Streaming
Data
Next Generation Operational DatabaseAerospike
Connectors
Powered by High Performance NoSQL
Legacy Database
(Mainframe)
RDBMS
Database
Transactional
Systems
Enterprise Environment
XDR
Aerospike
Legacy RDBMS
HDFS BASED
Fast speed – Consumer Scale
■ キャッシュのようでキャッシュ
でない
■ オペレーショナルDB
■ シンプル・一貫性・保守性
■ 読み書きをオペレーショナル
DBに
■ データ遅延無し
■ データベースとしての
一貫性・保守性
■ 堅牢性
■ AerospikeはデータをSSDに
■ Aerospikeは顧客システムで
5年間無停止
■ 拡張性
■ スケーラビリティ
- 15. 15© 2017 Aerospike Inc. All rights reserved.[ ]
次世代のオペレーショナル・データベースに必要なものとは
高スループットとスケーラビリティ
トランザクション量は増大の一途、
スケーラビリティは必須
大規模データ対応
一つのシステムで数百TBのデータ
不揮発性メモリ(NVM)の活用
大量データを、高速、かつ、
一貫性を保持しつつ保存
低レイテンシ
クエリに対するレスポンスは、
バラツキ無く、5ミリ秒以下で
信頼性・高可用性
24時間365日稼働、SPOFが無いこと
運用の容易さ
構成変更(スケール)時、運用時に手作業を
必要としない
TCOを削減し、より効率的に
サーバ台数を削減しつつ、
パフォーマンスは従来と同等以上
オープンであり、相互運用
既存のインフラストラクチャや
システムを有効に利用する
- 16. 16© 2017 Aerospike Inc. All rights reserved.[ ]
■ NoSQLデータベース
■ Cassandra
■ MongoDB
■ Redis
■ Riak
■ Couchbase
■ DynamoDB
■ Hbase
■ RocksDB
■ Tokyo Tyrant
■ Kyoto Tycoon
■ kumo.fs
■ …
NoSQLはいろいろあれど
■ 特徴
■ 高スループットとスケーラビリティ
■ 信頼性・高可用性
■ 大規模データ対応
■ 運用の容易さ
■ 不揮発性メモリの活用
■ TCOの削減
■ 低レイテンシ
■ オープン
- 17. 17© 2017 Aerospike Inc. All rights reserved.[ ]
性能:Cassandraとの比較
スループット
(50% Read, 50% Update)
レイテンシ
- 18. 18© 2017 Aerospike Inc. All rights reserved.[ ]
レスポンスの一貫性:Cassandraとの比較
レイテンシ(Update)
経過時間(HH:MM:SS)
スループット(Update)
経過時間(HH:MM:SS)
- 19. 19© 2017 Aerospike Inc. All rights reserved.[ ]
■ ストレージ
■ 大量データ
■ HDD: 大容量、低速、安価
■ 高速性
■ DRAM: 小容量、高速、高価
経済性:DRAMベースのNoSQLとの比較
■ SSDを活用
■ 高速
■ 大容量
■ 低価格
- 20. 20© 2017 Aerospike Inc. All rights reserved.[ ]
Aerospikeは、唯一、SSDに最適化
■ 高速化
■ OS・ファイルシステムを経由せず
■ 複数SSDに並列アクセス
■ SSD特有処理
■ 書き込みブロックを平滑化
■ デフラグによる効率的利用
■ Aerospike Certification Tool
■ SSDのベンチマークツール
■ Read/Writeの混在環境下で測定
■ 性能の良いものだけを推奨
■ 高速かつ性能のバラツキの少ないもの
OTHER DATABASE
OS FILE SYSTEM
PAGE CACHE
BLOCK INTERFACE
SSD HDD
BLOCK INTERFACE
SSD SSD
OPEN NVM
SSD
AEROSPIKE
HYBRID MEMORY SYSTEM™
- 21. 21© 2017 Aerospike Inc. All rights reserved.[ ]
Aerospikeの特徴 – デジタル展開を可能に"
高スループット・
低レイテンシ NoSQL
Aerospike
次世代のオペレーショナル・
データベース
ゼロから設計した次世代アーキテクチャ!
• 高性能、高信頼性を導くシンプルなアーキテクチャ
• フラッシュ(SSD)最適化設計(特許)
• レコード指向、スキーマレスNoSQL、キーバリューストア
一貫性の高い(バラツキの無い)性能!
• メモリとフラッシュ(SSD)のハイブリッド構成
• 低レイテンシ、高スループットで安定稼働
• オン・プレミス、仮想環境、クラウド環境等、多彩な環境
動的な自動クラスタリング!
• 実績ある稼働率(顧客サイトで5年間無停止)、高可用性(99.999%)
• 自動クラスタ構成、障害時もサービス無停止、自動シャーディング機能
• データセンター間でのデータ複製(XDR)
開発者に優しい!
• 広範な開発言語のサポート(C/C++, Java, C#, Python, Go, Node.js等) "
• クラスタ状態を把握しているクライアント(特許)による有機的動作"
• 豊富なAPI群; 開発が容易
顕著なTCO削減効果!
• フラッシュ(SSD)最適化による高パーフォーマンスと大容量化
• 顧客サイトにて、TCOが十分の一の実績
• 運用が極めてシンプルに容易に; 運用費削減効果
$
- 22. 22© 2017 Aerospike Inc. All rights reserved.[ ]
■ NoSQLは、特定分野から拡大方向へ
■ インターネット広告から金融、通信、ECへ
■ IoTでは唯一のデータベース
■ NoSQLはSystems of Engagementに
良さそう
■ Systems of Recordには使えない?
■ RDBMSは最初から基幹システムに使わ
れていたか?
■ 時間の問題
NoSQLの将来
- 23. 23© 2017 Aerospike Inc. All rights reserved.[ ]
NoSQLデータベース
誰のための: 今後は多くの方に
何のための: 今後は幅広く応用
その将来は: RDBMSの範囲にも
- 24. 24© 2017 Aerospike Inc. All rights reserved.[ ]
■ Aerospikeサイト
■ 日本語
■ www.aerospike.jp
■ 英語
■ www.aerospike.com
■ ベンチマーク
■ Cassandraとの比較
■ http://www.aerospike.jp/blog-ja/comparing-nosql-databases-aerospike-and-cassandra/
下記、ご参照ください