Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
decode2016
PDF, PPTX
693 views
ARC-009_RDB 技術者のための NoSQL ガイド
ARC-009_RDB 技術者のための NoSQL ガイド
Technology
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 86
2
/ 86
3
/ 86
4
/ 86
5
/ 86
6
/ 86
7
/ 86
8
/ 86
9
/ 86
10
/ 86
11
/ 86
12
/ 86
13
/ 86
14
/ 86
15
/ 86
16
/ 86
17
/ 86
18
/ 86
19
/ 86
20
/ 86
21
/ 86
22
/ 86
23
/ 86
24
/ 86
25
/ 86
26
/ 86
27
/ 86
28
/ 86
29
/ 86
30
/ 86
31
/ 86
32
/ 86
33
/ 86
34
/ 86
35
/ 86
36
/ 86
37
/ 86
38
/ 86
39
/ 86
40
/ 86
41
/ 86
42
/ 86
43
/ 86
44
/ 86
45
/ 86
46
/ 86
47
/ 86
48
/ 86
49
/ 86
50
/ 86
51
/ 86
52
/ 86
53
/ 86
54
/ 86
55
/ 86
56
/ 86
57
/ 86
58
/ 86
59
/ 86
60
/ 86
61
/ 86
62
/ 86
63
/ 86
64
/ 86
65
/ 86
66
/ 86
67
/ 86
68
/ 86
69
/ 86
70
/ 86
71
/ 86
72
/ 86
73
/ 86
74
/ 86
75
/ 86
76
/ 86
77
/ 86
78
/ 86
79
/ 86
80
/ 86
81
/ 86
82
/ 86
83
/ 86
84
/ 86
85
/ 86
86
/ 86
More Related Content
PDF
RDBNoSQLの基礎と組み合わせDB構成をちょっとよくする話
by
Shohei Kobayashi
PDF
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
by
Recruit Technologies
PDF
MongoDB概要:金融業界でのMongoDB
by
ippei_suzuki
PDF
20140418 info talkセミナー資料
by
Takahiro Iwase
PDF
NoSQLデータベースと位置情報
by
Koji Ichiwaki
PDF
MongoDB very basic (Japanese) / MongoDB基礎の基礎
by
Naruhiko Ogasawara
PDF
MongoDBご紹介:事例紹介もあり
by
ippei_suzuki
PPTX
MongoDBが遅いときの切り分け方法
by
Tetsutaro Watanabe
RDBNoSQLの基礎と組み合わせDB構成をちょっとよくする話
by
Shohei Kobayashi
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
by
Recruit Technologies
MongoDB概要:金融業界でのMongoDB
by
ippei_suzuki
20140418 info talkセミナー資料
by
Takahiro Iwase
NoSQLデータベースと位置情報
by
Koji Ichiwaki
MongoDB very basic (Japanese) / MongoDB基礎の基礎
by
Naruhiko Ogasawara
MongoDBご紹介:事例紹介もあり
by
ippei_suzuki
MongoDBが遅いときの切り分け方法
by
Tetsutaro Watanabe
What's hot
PPTX
MongoDB3.2の紹介
by
Tetsutaro Watanabe
PPTX
日本語:Mongo dbに於けるシャーディングについて
by
ippei_suzuki
PPTX
がっつりMongoDB事例紹介
by
Tetsutaro Watanabe
PDF
実務で役立つデータベースの活用法
by
Soudai Sone
PPTX
WiredTigerを詳しく説明
by
Tetsutaro Watanabe
PDF
後悔しないもんごもんごの使い方 〜アプリ編〜
by
Masakazu Matsushita
PDF
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
by
Ryuji Tamagawa
PDF
Fess/Elasticsearchを使った業務で使える?全文検索への道
by
Shinsuke Sugaya
PDF
MongoDB〜その性質と利用場面〜
by
Naruhiko Ogasawara
PPT
MongoDB
by
あしたのオープンソース研究所
PDF
Big Data University Tokyo Meetup #6 (mlwith_spark) 配布資料
by
Atsushi Tsuchiya
PPTX
Mongo dbを知ろう
by
CROOZ, inc.
PPTX
Pysparkで始めるデータ分析
by
Tanaka Yuichi
PDF
dots. 7/7 DSWBハンズオン資料
by
s. kaijima
PDF
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
by
Takahiro Inoue
PDF
MongoDBとAjaxで作る解析フロントエンド&GraphDBを用いたソーシャルデータ解析
by
Takahiro Inoue
PPTX
ビックデータ処理技術の全体像とリクルートでの使い分け
by
Tetsutaro Watanabe
PDF
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
by
Kosuke Kida
PDF
20180922 jazug8 cosmosdb_search
by
Kazuhiro Wada
PDF
Neo4j Stream, [RDB/NoSQL]Kafka Connector CDC(Change Data Captuer)の紹介
by
昌桓 李
MongoDB3.2の紹介
by
Tetsutaro Watanabe
日本語:Mongo dbに於けるシャーディングについて
by
ippei_suzuki
がっつりMongoDB事例紹介
by
Tetsutaro Watanabe
実務で役立つデータベースの活用法
by
Soudai Sone
WiredTigerを詳しく説明
by
Tetsutaro Watanabe
後悔しないもんごもんごの使い方 〜アプリ編〜
by
Masakazu Matsushita
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
by
Ryuji Tamagawa
Fess/Elasticsearchを使った業務で使える?全文検索への道
by
Shinsuke Sugaya
MongoDB〜その性質と利用場面〜
by
Naruhiko Ogasawara
MongoDB
by
あしたのオープンソース研究所
Big Data University Tokyo Meetup #6 (mlwith_spark) 配布資料
by
Atsushi Tsuchiya
Mongo dbを知ろう
by
CROOZ, inc.
Pysparkで始めるデータ分析
by
Tanaka Yuichi
dots. 7/7 DSWBハンズオン資料
by
s. kaijima
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
by
Takahiro Inoue
MongoDBとAjaxで作る解析フロントエンド&GraphDBを用いたソーシャルデータ解析
by
Takahiro Inoue
ビックデータ処理技術の全体像とリクルートでの使い分け
by
Tetsutaro Watanabe
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
by
Kosuke Kida
20180922 jazug8 cosmosdb_search
by
Kazuhiro Wada
Neo4j Stream, [RDB/NoSQL]Kafka Connector CDC(Change Data Captuer)の紹介
by
昌桓 李
Similar to ARC-009_RDB 技術者のための NoSQL ガイド
PDF
StepInNosql
by
abedaisuke1
PDF
About NoSQL
by
hideaki honda
PDF
Introduction to MongoDB
by
moai kids
PDF
Cassandraとh baseの比較して入門するno sql
by
Yutuki r
PDF
Logをs3とredshiftに格納する仕組み
by
Ken Morishita
PPT
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
by
kishimotosc
PDF
Random partionerのデータモデリング
by
2t3
PPTX
NoSQL Bigtable and Azure Table
by
Takekazu Omi
PPT
Cassandra(no sql)によるシステム提案と開発
by
kishimotosc
PDF
Nosqlの基礎知識(2013年7月講義資料)
by
CLOUDIAN KK
PDF
AWS初心者向けWebinar AWSでのNoSQLの活用
by
Amazon Web Services Japan
PDF
A development journal of koremirudb1 cloud&nosql (1)
by
Masato Tsuji
PPTX
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
by
yassun7010
PDF
Nosql
by
uenno
PDF
NoSQLとビックデータ入門編Update版
by
Koichiro Nishijima
PDF
データベース技術 3(Database_3)
by
Yuka Obu
PDF
2019年度 若手技術者向け講座 NoSQL
by
keki3
DOC
20110301 Mongo Tokyo
by
Kenichi Masuda
DOC
20110302 Mongo Tokyo
by
Kenichi Masuda
PDF
20120831 mongoid
by
Takeshi AKIMA
StepInNosql
by
abedaisuke1
About NoSQL
by
hideaki honda
Introduction to MongoDB
by
moai kids
Cassandraとh baseの比較して入門するno sql
by
Yutuki r
Logをs3とredshiftに格納する仕組み
by
Ken Morishita
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
by
kishimotosc
Random partionerのデータモデリング
by
2t3
NoSQL Bigtable and Azure Table
by
Takekazu Omi
Cassandra(no sql)によるシステム提案と開発
by
kishimotosc
Nosqlの基礎知識(2013年7月講義資料)
by
CLOUDIAN KK
AWS初心者向けWebinar AWSでのNoSQLの活用
by
Amazon Web Services Japan
A development journal of koremirudb1 cloud&nosql (1)
by
Masato Tsuji
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
by
yassun7010
Nosql
by
uenno
NoSQLとビックデータ入門編Update版
by
Koichiro Nishijima
データベース技術 3(Database_3)
by
Yuka Obu
2019年度 若手技術者向け講座 NoSQL
by
keki3
20110301 Mongo Tokyo
by
Kenichi Masuda
20110302 Mongo Tokyo
by
Kenichi Masuda
20120831 mongoid
by
Takeshi AKIMA
More from decode2016
PDF
SPL-005_オープンソースから見たマイクロソフト
by
decode2016
PDF
SPL-004_Windows 10 開発の舞台裏から学ぶエンジニアの未来
by
decode2016
PDF
SPL-003_黒船襲来! 世界DevOps トップ企業 x マイクロソフトによるトークバトル セッション
by
decode2016
PDF
SPL-002_クラウド心配性な上司を説得するコツを伝授します ~本当に信頼できるクラウドの構築/運用とは? マイクロソフト クラウド成長の軌跡~
by
decode2016
PDF
PRD-009_クラウドの ERP による業務システム開発 ~OData エンド ポイントから Power BI 連携~
by
decode2016
PDF
PRD-008_クラウド ネイティブ ERP ~Dynamics AX のアーキテクチャ/環境構築から開発/運用まで~
by
decode2016
PDF
PRD-006_機械学習で顧客対応はこう変わる! Azure ML と Dynamics で造る次世代 CRM
by
decode2016
PDF
PRD-005_Skype Developer Platform によるアプリケーション開発の最新情報
by
decode2016
PDF
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
by
decode2016
PDF
PRD-002_SharePoint Server 2016 & Online ハイブリッド環境での業務活用
by
decode2016
PDF
INF-028_そのエラーやお困りごと、ツールを使えば解決できるかも! ~Sysinternals や OS 標準ツールの徹底活用術~
by
decode2016
PDF
INF-027_セキュリティ マニアックス -サイバー攻撃の手口と防御手法- ~敵を知り、己を知れば百戦危うからず~
by
decode2016
PDF
INF-026_真のクラウドベース EMM ~マイクロソフトのモビリティ戦略はいかにユニークか~
by
decode2016
PDF
INF-025_企業で使える Windows 10 ~現実的なアプリ & デバイス管理~
by
decode2016
PDF
INF-024_Windows 10 の展開 ~プロビジョニング? いやワイプ & ロードでしょ!~
by
decode2016
PDF
INF-023_マイクロソフトの特権管理ソリューションの全貌 ~永続的な管理者特権の廃止への道~
by
decode2016
PDF
INF-022_情報漏えいを責めるべからず。今必要な対策とは? ~Windows 10 セキュリティ機能徹底解説~
by
decode2016
PDF
INF-021_実践! Windows as a Service との上手な付き合い方 ~新しい OS 更新管理の徹底解説~
by
decode2016
PDF
INF-020_メーカーがおしえてくれない正しいクラウドについて
by
decode2016
PDF
INF-019_Nano Server だけでここまでできる! ~極小サーバーの使い方~
by
decode2016
SPL-005_オープンソースから見たマイクロソフト
by
decode2016
SPL-004_Windows 10 開発の舞台裏から学ぶエンジニアの未来
by
decode2016
SPL-003_黒船襲来! 世界DevOps トップ企業 x マイクロソフトによるトークバトル セッション
by
decode2016
SPL-002_クラウド心配性な上司を説得するコツを伝授します ~本当に信頼できるクラウドの構築/運用とは? マイクロソフト クラウド成長の軌跡~
by
decode2016
PRD-009_クラウドの ERP による業務システム開発 ~OData エンド ポイントから Power BI 連携~
by
decode2016
PRD-008_クラウド ネイティブ ERP ~Dynamics AX のアーキテクチャ/環境構築から開発/運用まで~
by
decode2016
PRD-006_機械学習で顧客対応はこう変わる! Azure ML と Dynamics で造る次世代 CRM
by
decode2016
PRD-005_Skype Developer Platform によるアプリケーション開発の最新情報
by
decode2016
PRD-004_ここまでできる! Azure AD と Office 365 連携開発の先進手法
by
decode2016
PRD-002_SharePoint Server 2016 & Online ハイブリッド環境での業務活用
by
decode2016
INF-028_そのエラーやお困りごと、ツールを使えば解決できるかも! ~Sysinternals や OS 標準ツールの徹底活用術~
by
decode2016
INF-027_セキュリティ マニアックス -サイバー攻撃の手口と防御手法- ~敵を知り、己を知れば百戦危うからず~
by
decode2016
INF-026_真のクラウドベース EMM ~マイクロソフトのモビリティ戦略はいかにユニークか~
by
decode2016
INF-025_企業で使える Windows 10 ~現実的なアプリ & デバイス管理~
by
decode2016
INF-024_Windows 10 の展開 ~プロビジョニング? いやワイプ & ロードでしょ!~
by
decode2016
INF-023_マイクロソフトの特権管理ソリューションの全貌 ~永続的な管理者特権の廃止への道~
by
decode2016
INF-022_情報漏えいを責めるべからず。今必要な対策とは? ~Windows 10 セキュリティ機能徹底解説~
by
decode2016
INF-021_実践! Windows as a Service との上手な付き合い方 ~新しい OS 更新管理の徹底解説~
by
decode2016
INF-020_メーカーがおしえてくれない正しいクラウドについて
by
decode2016
INF-019_Nano Server だけでここまでできる! ~極小サーバーの使い方~
by
decode2016
ARC-009_RDB 技術者のための NoSQL ガイド
1.
ROOM J
3.
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ 2016/05/25 株式会社リクルートテクノロジーズ 渡部徹太郎
4.
自己紹介 {"ID" :"fetaro" "名前" :"渡部
徹太郎" "所属" :株式会社リクルートテクノロジーズ "研究" :"東京工業大学でデータベースと情報検索の研究 (@日本データベース学会)" "仕事" :["証券会社のオンライントレードシステムのWeb基盤", "オープンソースなら何でも。主にMongoDB", "リクルート各種サービスを横断的分析する基盤。主にHadoop"] "エディタ":"emacs派" "趣味":"自宅サーバ" "属性" : ["ギーク","スーツ"]} fetaro RDB NoSQL技術者のための ガイド 4
5.
書籍について • ギーク向けではなく、一般のRDB技術者向け • NoSQLの位置づけを明確化 (Hadoop,
DWHとの違い) • エンタープライズの課題を解決する視点 • NoSQL界のスペシャリスト達による最新情報 • 評価良好!4.3点→ RDB NoSQL技術者のための ガイド 5
6.
NoSQLの必要性 RDB NoSQL技術者のための ガイド
6
7.
背景:3つのVの増加 • Volume(データ量)の増加 • Googleは1日に24ペタバイトのデー タを処理している •
facebookの写真は1.5ペタバイト スケールアップ スケールアウト コントローラ 性能限界 高コスト+構造上の限界限界有り CPU↑ メモリ↑ ディスク↑ RDB RDB NoSQL技術者のための ガイド 7 • Velocity(処理速度)の増加 • orange(大規模Web)サービス秒間11万アクセス • マウスの軌跡を解析→秒間万単位の書き込み • twitter 「バルス」で秒間14万つぶやき [課題] RDBではビッグデータの扱いが困難
8.
背景: 3つのVの増加 • Variety(多様性)の増加 社内
社外 非リレー ショナル データ 非構造 半構造 リレーショ ナルデータ 構造化 オフィス文章 システムロ グ テキスト・音声 (顧客対応履 歴)電子メール 経理・財務・ 人事 営業・CRM センサー 情報 位置・地 図 SNS マルチメ ディア 他社が保 有する データ 気象・交 通 健康・医療 各種統計 行政 金融取引 商品・在庫 決済・残高 口コミ文章 RDB NoSQL技術者のための ガイド 8 [課題] 半構造データはRDBでは格納が困難 Schema on Write < Schema on Read
9.
RDBだと厳しい身近なケース • 「Twitterのデータを分析して商品評判を知りたい。プロトを3日で作ってくれ」 TwitterのAPIが返却するデータ(JSON) • この状況でこのデータをRDBMSにいれますか?? { "_id"
: ObjectId("55b93f4bb427f0c12e080473"), "created_at" : "Wed Jul 29 20:57:42 +0000 2015", "id" : 626496848031690800, "text" : "@mchris4duke and certainly not concious, for a f moment, of their prejudices", "source" : "<a href=¥"http://twitter.com¥" rel=¥"nofollow Web Client</a>", "truncated" : false, "in_reply_to_status_id" : 626496667957751800, "in_reply_to_screen_name" : "mchris4duke", "user" : { "id" : 772136, "id_str" : "772136", "name" : "Greg Smith", "place" : null, "contributors" : null,"retweet_count" : 0, "favorite_count" : 0, "entities" : { "hashtags" : [ ], "trends" : [ ], "urls" : [ ], "user_mentions" : [ { "screen_name" : "mchris4duke", "name" : "Chris Bourg", "id" : 14093339, "id_str" : "14093339", "indices" : [0,12] ここは一対多 これは何桁ある んだろう? なんか、前と変 わってるような ここも一対多 テーブルは3つに分けて、 JOINを2回するしかない RDB NoSQL技術者のための ガイド 9
10.
RDBの課題の一部を解決するDBが登場 RDB NoSQL技術者のための ガイド
10 スケールアウト アプリ 性能限界 水平分散で性能向上 アプリ 大量データ処理 高速データ処理 半構造 データ処理 KVS/ ドキュメント データベース グラフ データベース 課題 解決するDB 事前に構造を定義する必要がない 「スキーマ・オン・リード」 CREATE TABLE ALTER TABLEJSONが格納できる RDB
11.
RDBの課題の一部を解決するDBが登場 RDB NoSQL技術者のための ガイド
11 スケールアウト アプリ 性能限界 水平分散で性能向上 アプリ 大量データ処理 高速データ処理 半構造 データ処理 KVS/ ドキュメント データベース グラフ データベース 課題 解決するDB 事前に構造を定義する必要がない 「スキーマ・オン・リード」 CREATE TABLE ALTER TABLEJSONが格納できる RDB
12.
NoSQLの位置づけ RDB NoSQL技術者のための ガイド
12
13.
DBを重視する性能で分類 • レスポンスを重視 →主にオペレーション用途 •
スループットを重視 →主に分析用途 13 アプリケーションサーバ オペレーション 用途 データベース登録画面 リクエスト 参照 更新 挿入 参照画面 編集画面 即時応答 マスタ データベース BIツール 集計 バッチで ロード 分析用途 データベース レポート生成ジョ ブ 抽出 CSV バッチで ロード レポート 20分で全件集計 10秒で全件取得 RDB NoSQL技術者のための ガイド
14.
NoSQLの位置づけ 凡例 レスポンス重視 (オペレーション用途) スループット重視 (分析用途) スケールアウトできる Hadoop (HDFS+MapReduce) ・Cloudera ・MapR ・Hortonworks RDB(OLTP) ・Oracle ・SQL Server ・MySQL グラフDB ・Neo4j RDB(DWH) ・Oracle Exadata ・Netezza ・RedShift
登場順 KVS ・Cassandra ・Redis ドキュメントDB ・MongoDB ・Couchbase NoSQL
15.
RDB(OLTP)とKVS/ドキュメントDBの違い • RDB(OLTP)とは違い、 以下の3つによりスケーラビリティを獲得 1. トランザクションを提供しない 2.
分散しやすいデータモデルと、分散しやすいクエリだけを提供 する 3. 「強い整合性」を犠牲にして、複製に対して読み書きを行う 「結果整合性」を採用
16.
RDB(OLTP)とKVS/ドキュメントDBの違い アプリケーション アプリケーション スケールアウト構成 整合性は 保証される ②準備OK ④コミット ②準備OK ④コミット ②準備OK ④コミット ①コミット準備の確認 ③コミット指示 アプリケーション アプリケーション 待たされる A B
C 分散トランザクションで ABCを一括更新 アプリケーション 待たされる待たされる
17.
RDB(OLTP)とKVS/ドキュメントDBの違い アプリケーション スケールアウト構成 更新 一括更新はできないので A→B→C の順番で更新 A B
C 更新 アプリケーション アプリケーション アプリケーション アプリケーション 更新 更新 更新 待たない 更新 更新 割り込まれて 整合性が 崩れる 可能性あり
18.
KVS/ドキュメントDBとHadoopとの違い RDB NoSQL技術者のための ガイド
18 分散ファイルシステム (HDFS等) 分散処理フレームワーク (MapReduce, Spark等) ABC A B C クライアント 計算 ノード 計算 ノード 計算 ノード コーディネータ ①データの配布 ②提出 ③計算 計算 結果 プログラム プログラム クライアント プログラムプログラム KVS/ ドキュメントDB シャード シャード シャード A クエリルータ B C アプリアプリ クエリ クエリ
19.
データベースは互いの領域に進出している RDB NoSQL技術者のための ガイド
19 レスポンス重視 (オペレーション用途) スループット重視 (分析用途) スケールアップするしかない スケールアウトできるKVS/ドキュメントDB RDB(OLTP) RDB(DWH) Hadoop 分析もできる KVS/ドキュメントDB ・MongoDB ・Cassandra JSONを格納する RDB(OLTP) ・MySQL ・PostgreSQL ・IBM DB2 オペレーション もできるDWH ・SAP HANA 応答が速くて SQLが使えるHadoop ・Impala ・Presto ・Hive on Tez スケールアウトも できるDWH ・Oracle Exadata ・Teradata ・Neteeza ・Greenplum ・Vertica SQLが使える KVS/ドキュメントDB ・DocumentDB ・Cassandra
20.
NoSQLの分類 RDB NoSQL技術者のための ガイド
20
21.
NoSQLの分類 RDB NoSQL技術者のための ガイド
21 NoSQL ー NoSQL プロダ クト KVS(キーバリューストア) ドキュメントDB RDB グラフDB データ モデル キーバリュー ワイドカラム ドキュメント(JSON) リレーショナ ルモデル グラフ データ 構造 キー 値 キー 値 array hash 階層構造 ノード リレー ション ノード ノード リレー ション データの複雑度 大小 処理の分散がしやすい 複雑なデータ処理が可能 キー 列
22.
データ関連度とスケーラビリティ RDB NoSQL技術者のための ガイド
22 グラフ リレーショナル キーバリュー ワイドカラム ドキュメント
23.
NoSQLの主要プロダクト RDB NoSQL技術者のための ガイド
23
24.
NoSQL - NoSQL DB
KVS(キーバリューストア) ドキュメントDB RDB グラフDB OSS 商用 製品 サー ビス NoSQLの主要プロダクト RDB NoSQL技術者のための ガイド 24 ElastiCache Microsoft Azure Redis Cache
25.
DB ENGINESによるランキング 25 以下の指標を総合的に判断 ・ウェブでのシステム名称の登場回数 (Google, Bing) ・一般的な人気度 (Google
Trends) ・技術的なディスカッションの頻度 (Stack Overflowなど) ・求人サイトにおける募集スキル (Indeed, Simply Hired) ・プロフィール登場回数 (LinkedIn) (出所)DB ENGINES http://db-engines.com/en/ranking RDB NoSQL技術者のための ガイド
26.
ガートナー社のハイプサイクル ドキュメントデータベース キーバリューストア グラフデータベース
27.
その他、本書で説明していること RDB NoSQL技術者のための ガイド
27
28.
その他本書で紹介していること • 統一した観点で、代表プロダクトの最新情報を説明 • 想定されるユースケース(多数掲載) •
RDBの課題を解決するNoSQLプロダクトの選び方 RDB NoSQL技術者のための ガイド 28 • データモデル • API • 性能拡張 • 高可用 • 運用 • セキュリティ • 出来ないこと • 主要バージョンと特徴 • 国内サポート体制
30.
目次
31.
mongodプロセス データベース コレクション ドキュメント (JSON) ドキュメント (JSON) コレクション ドキュメント (JSON) ドキュメント (JSON) データ ベース コレク ション ・・・ ・・・ ・・・・・・
32.
{ ID : 12345
, name :"渡部”, address : { City :"東京”, ZipNo :"045-3356”, } friendID : [ 3134 , 10231 , 10974 , 11165 ] , hobbies : [ { name :"自宅サーバ","year": 6 } , { name :"プログラミング","year": 10 } , 配列 サブドキュメントの配列 キーと値 サブドキュメント
33.
{ id: 10 name: "マトリクス" tag
: ["SF", "キアヌ", "ハリウッド"] } id name 10 "マトリクス" 11 "天空の城ラピュタ" JSON id movie_id value 1 10 "SF" 2 10 "キアヌ" 3 10 "ハリウッド" 4 11 "ファンタジー" 5 11 "宮崎駿" 6 11 "ジブリ" リレーショナル movieテーブル tagテーブル ・全貌が分からない ・データ構造を事前に定義 する必要がある ・読みやすい ・全貌がわかる ・データ変更に対応できる { Id: 11 name: "天空の城ラピュタ" tag : ["ファンタジー", "宮崎駿","ジブリ"] }
34.
{ id: 10 name: "マトリクス" tag
: ["SF", "キアヌ", "ハリウッド"] } JSON ・読みやすい ・全貌がわかる ・データ変更に対応できる { Id: 11 name: "天空の城ラピュタ" tag : ["ファンタジー", "宮崎駿","ジブリ"] } キーバリュー ・複雑なデータ構造だと扱 いが困難 key value 10-name "マトリクス" 10-tag-0 "SF" 10-tag-1 "キアヌ" 10-tag-2 "ハリウッド" 11-name "天空の城ラピュ タ" 11-tag-0 "ファンタジー" 11-tag-1 "宮崎駿" 11-tag-2 "ジブリ"
35.
db.person.find( {"name":"watanabe","age": 30
} ).limit(3)
36.
x ドキュメント チャンク シャードキーに基づ いて ルーティング シャードキー 範囲 0-9
範囲10-19 範囲20- アプリケーション mongosルータ 1 4 9 11 16 20 27 MongoDB ドライバ 23 23 mongod mongod mongod シャードキーで 分散 自動的に 再配置
37.
アプリケーション プライマリ 1 4 9 セカンダリ 1
4 9 セカンダリ 1 4 MongoDBドライバ 9 書き レプリカセット 読み 非同期 で複製 読み プライマリ 1 4 9 プライマリ 1 4 9 セカンダリ 1 4 9 アプリケーション MongoDBドライバ 書き 読み読み 自動フェイルオー バ レプリカセット 書き込みは プライマリの み
38.
マシン2 マシン3 マシン1プライマリデー タ1 セカンダリ データ1 セカンダリ データ1 レプリカセット セカンダリ データ2 プライマリ データ2 セカンダリ データ2 レプリカセット セカンダリ データ3 セカンダリ データ3 プライマリ データ3 レプリカセット mongosルータ 負荷分散 冗 長 化 アプリケーション 1 1 1 2 2 2 3 3 3
39.
マシン2 マシン3 マシン1プライマリデー タ1 セカンダリ データ1 セカンダリ データ1 レプリカセット プライマリ プライマリ データ2 セカンダリ データ2 レプリカセット セカンダリ データ3 セカンダリ データ3 プライマリ データ3 レプリカセット mongosルータ 負荷分散 冗 長 化 アプリケーション 1 1 1 2 2 2 3 3 3
43.
• ⇒ver 3.0で解決 •
⇒ ver 3.2で解決 ユーザ1 取引1 取引2 ユーザ1 取引1 取引2 ドキュ メント 参照 制約 結合 トランザクション
44.
性能の拡張が難しい 現実的なコストで扱えない app Mongo Mongoapp Mongo app Mongo Mongo Mongo Mongo Mongo Mongo 急なユーザ増加にも、水平 分散で簡単に対応できる 課題 選定理由・解決策
結果 • MySQLがスケーラビリティの上限に達して性能要件を 達成できなくなった • RBMSでは非定型なメタデータの管理が困難 • 性能とスケーラビリティに期待しMongoDBを導入 • 60億におよぶ属性情報データの代わりに、1コンテンツ を1ドキュメントにする構造を導入 • 秒間11万件以上のクエリに対応 • 3年で200万ドル以上のコスト削減 • 新規機能の導入のスピードが著しく早くなった • 新規プロジェクトでは全てMongoDBを利用する方針 となった 活用事例: orange(Webサービス事業) 700万ユーザを超えるWebサービスのバックグラウンドDB
46.
Mongo app カタログ (JSON) 課金情報等 (リレーショナル) 既存 新規 トランザクションが必要な課金は 従来通りRDBMSで一貫性を担保 読みやすい。 項目追加も簡単。 カタログ管理 RDBMS 課題 選定理由・解決策 結果 •
RDBMSベースの旧システムでは商品カタログのアップ デートに12時間かかった • JSONがスキーマレスでかつ複雑なデータ構造を格納で きるので、商品データを入れるのには最適だった • カタログのアップデートに要する時間が12時間から15 分になり、ビジネス環境の変化に応じて迅速にカタロ グを変更できるようになった 活用事例: OTTO 毎日200万人が利用する大手Eコマースサイトの商品カタログを管理
47.
機能 ユースケース GridFS 大容量ファイルの管理 地理空間インデック ス 地図アプリ 集計機能
データの集計 旧データ自動削除 ログ保管
49.
©2015 DataStax Confidential.
Do not distribute without consent. DataStax 原沢 滋 RDB技術者のための 「NoSQL ガイド」 〜Apache Cassandra〜 eBay、ソニー、APPLEも 大規模運用するNoSQL Apache Cassandraの実力
50.
©2015 DataStax Confidential.
Do not distribute without consent. ある企業における Apache Cassandra • 100,000+ ノード • 数十ペタバイト • 毎秒数百万件以上オペレーショ ン • 最大クラスタのノード数1,000+ • バージョンはv1.2 とv2.0を利用 写真は2014年に75,000+ノードと発表した時のもの
51.
©2015 DataStax Confidential.
Do not distribute without consent. ソニーにおけるApache Cassandra • Cassandraを6ヶ月でプロダクション • リニアスケーラビリティ • パフォーマンス • ダウンタイムがない • 運用が楽 • コスト データスループット: Gigabytes/sec トランザクション: >200,000/sec データサイズ: Tens of terabytes
52.
©2015 DataStax Confidential.
Do not distribute without consent. NetflixにおけるDataStax Enterprise(DSE) (Apache Cassandra) Netflix は映像ストリーミング配信会社 • Netflix の全データベースのち95%を DSE を利 用 • スループットは1千万トランザクション/秒 • 1日1兆トランザクションをDSE で処理 • 世界各地にある6つのデータセンターの Oracle を置き換え、100%クラウドで実現 • AWSの大規模の再起動の際も全く問題なく24 時間x365日のサービスをCassandraで提供
53.
©2015 DataStax Confidential.
Do not distribute without consent. + x ではそのApache Cassandraとは? Apache Cassandraとは分散データベース Apache Cassandra とは Amazon Dynamo の分散ハッシュテーブ ル(DHT)と、Google BigTable のKVS の2つの特徴を併せ持つビッグデータ用 分散データベース • Amazon DynamoとGoogle Bigtableの良い点を持つ • 高速パフォーマンスとリニアな拡張 • SPOF(Single Point of Failure)がない、簡単に24時 間 x 365日ダウンさせないで運用が可能 • 完全な分散 • 柔軟なNoSQLデータモデル(スキーマーレス!) • シンプルな運用管理 • SQL ライクな言語CQLをサポートしている • 様々な無償ツールとドライバ/コネクタを持つ • 様々な整合性を選ぶ事が可能(CAP定理, BASE)
54.
©2015 DataStax Confidential.
Do not distribute without consent. 繋がるネット時代の新技術 LAN/WAN クライアント/サ ーバー リレーショナル DBMS(RDBMS) SNA 階層DB Terminal NoSQL DBMS オープンシステム時代 (Oracle,Informix, Sybase等) メインフレーム時代( IMS,DB2等) もののインターネット(IoT)時代(クラウド、ネットワーク、分散) (Bigdata, Hadoop, Open Source) 1970 年代 1990 年代 2010年以降 IoT, コンテンツの時代 クラウド アプリケーションの時代 大きなコンピューターの時代
55.
©2015 DataStax Confidential.
Do not distribute without consent. OLTP (RDBMS) DWH (RDBMS) NoSQL OLTP (RDBMS) DWH (RDBMS) Hadoop 分析・データベース オペレーショナル データベース 既存システム(RDB) 新システムへの要求 *データ量 *パフォマンス *柔軟性 *可用性 *値段 分析・データベース オペレーショナル データベース 既存システム(RDB) 新システム(NoSQL) 今までRDB では不可能、又は実現するのに コストが膨大にかかった領域 NoSQLって何?位置付け
56.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraの特徴 • Amazon DynamoとGoogle Bigtableの良い点を持つ • 高速パフォーマンスとリニアな拡張 • SPOF(Single Point of Failure)がない • マルチデータセンター • 完全な分散 • 柔軟なNoSQLデータモデル • シンプルな運用管理 • SQL ライクな言語CQLをサポートしている • 様々な無償ツールとドライバ/コネクタを持つ • 結果整合性を持つ(Eventual Consistency)、Strong Consistencyも可能
57.
©2015 DataStax Confidential.
Do not distribute without consent. 高速なパフォーマンスとリニアな拡張 「スケーラビリティの点では、我々の実験全体を通して明白な 勝者がいます。すべての実験において、Cassandra は最大のノ ード数でリニアに増加する最高のスループットを達成しました 」 Solving Big Data Challenges for Enterprise Application Performance Management, Tilman Rable, et al., August 2013, p. 10. Benchmark paper presented at the Very Large Database Conference, 2013. http://vldb.org/pvldb/vol5/p1724_tilmannrabl_vldb2013.pdf http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html 最高のスループット・・・ 最小のレイテンシ・・・ Netflix 社によるクラウド上でのベンチマーク・・・ End Point 社による第三者 NoSQL ベンチマーク
58.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra 1111: 原沢 2222: 山田 3333:鈴木 クラスター データベース 各ノードがHashで決めら れたKEYを元に分散され たデータを持つ = Cassandra のアーキテクチャ(完全な分散+KVS) • Master, Slaveという関係がない • Name node, gatekeeperといった特別なノードの機能を持つノードがない • すべてのノード(マシン)が完全に同じ機能を持つ この場合、6台で 1つのデータベースとなる
59.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra 1111: 原沢 2222: 山田 3333: 鈴木 x 一台のマシンが 死ぬとデータが 見えない? Cassandra のアーキテクチャ(完全な分散+KVS) • Master, Slaveという関係がない • Name node, gatekeeperといった特別なノードの機能を持つノードがない • すべてのノード(マシン)が完全に同じ機能を持つ
60.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? • 分散でデータを保持するので、他のマシンの影響を受けない Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Data: 原沢 Data: 原沢 Data: 原沢 レプリケーション (データのコピー) は何台に持たせるかを決 められる Replication factor=3 マシンが故障しても、 特定のマシンが特定の 機能を持っている訳で はないので、他のデー タのあるマシンが同じ 作業を全く問題なく処 理する事が可能
61.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? • 分散でデータを保持するので、他のマシンの影響を受けない Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Data: 原沢 Data: 原沢 Data: 原沢 x 問題なし一台死んでも問題無し
62.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? • すべてのノードは同等で、どのマシンでも処理を同等に受け付ける Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra
63.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? • すべてのノードは同等で、どのマシンでも処理を同等に受け付ける Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra
64.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? • すべてのノードは同等で、どのマシンでも処理を同等に受け付ける Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra
65.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra • すべてのノードは同等で、どのマシンでも処理を同等に受け付ける
66.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandraとは? Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra • すべてのノードは同等で、どのマシンでも処理を同等に受け付ける
67.
©2015 DataStax Confidential.
Do not distribute without consent. • 複数データセンター間でもレプリケーション可能 Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandra Cassandraとは CassandraがETL不要で 自動にReplication東京 大阪
68.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandra のアーキテクチャ(マルチデータセンター) • 複数のデータセンター内でのレプリケーションも自動で行う事が可能 • 双方向のマルチデータセンターでのレプリケーションを行う • どのデータセンターのどのノードを対象に対しても読み取り/書き込みが可能 • 故障時はドライバが判断して、接続できるノードに接続を行う C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* 東京 クラウド 7369,原沢 7369,原沢 7369,原沢 7369,原沢 7369,原沢 7369,原沢 7369,原沢 7369,原沢 7369,原沢 大阪
69.
©2015 DataStax Confidential.
Do not distribute without consent. Cassandra Query Language(CQL) • RDBMS の SQL によく似た構文 • DDL を使用してオブジェクトを作成(例:CREATE…) • GRANT/REVOKE によりセキュリティを確保 • 基本的な DML コマンドをサポート:INSERT、UPDATE、DELETE • SELECT を使用してデータを検索 • コマンドラインツール、GUI ツール
70.
©2015 DataStax Confidential.
Do not distribute without consent. Apache Cassandra
71.
©2015 DataStax Confidential.
Do not distribute without consent. + x DataStax Apache CassandraのDistribution Apache Cassandra とは Amazon Dynamo の分散ハッシュテーブ ル(DHT)と、Google BigTable のKVS の2つの特徴を併せ持つビッグデータ用 分散データベース セキュリティ 分析 検索 ビジュアル 監視 管理サービス インメモリ 開発環境/ ドライバ プロフェッショナ ル・サービス サポート/ トレーニング
72.
©2015 DataStax Confidential.
Do not distribute without consent. セキュリティ 分析 検索 ビジュアル 監視 管理サービス インメモリ 開発環境/ドラ イバ プロフェッショナル・サ ービス サポート/ トレーニング DataStax Enterprise(DSE) • 保証されたCassandra • Advanced Security • 分析機能の追加 • Own Hadoopの外部バッチを利用可能 • Cassandraデータの全文検索が可能 • CassandraのIn Memory オプションを持つ • Cassandraの運用管理を自動化 • 管理ツール(OpsCenter) のフルバージョン提供 • ETL不要で、オペレーショナルと分析環境を自動レプリケーション • 24時間サポートを提供 DataStax社が販売しているCassandraを含んだSoftware
73.
©2015 DataStax Confidential.
Do not distribute without consent. Gartner Magic Quadrant(MQ)でのDataStaxの位置 2013 2014 2015
74.
©2015 DataStax Confidential.
Do not distribute without consent. インメモリ Time Series DataStax Enterprise (DSE) DataStax社による商用版のCassandra 、 Apache Cassandraだけでなく、 Apache Solr (全文検索), Apache Spark (リアルタイム分析), Apache Hadoop (バッチ分析), GraphDB(本年内予定)を統合したデータベース 上記以外にも、インメモリ、セキュリテー、GUI, 管理機能、チューニン グパッケージ等も提供 ボトルネックの ないリニアな 拡張性 マスターレス でSPOFのな い可用性 オープン ソース ベース ミリ秒単位 での大量 Tx処理 稼働率 100%の信 頼性 GUIで簡単 な監視、 運用管理 セキュリティ 管理ツール
75.
©2015 DataStax Confidential.
Do not distribute without consent. DataStaxでは、オペレーショナル・分析・全文検索が可能 • ETLなしでレプリケーション(余計な設定、HW、SW必要なし) • 別ワークロードを分離してパフォーマンス問題が発生しにくい • 高可用性も提供 • マルチデータセンターも簡単に実現 • リニアにスケール C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* C* Cassandra (オペレーショナル) Cassandra (全文検索) Spark(分析)
76.
©2015 DataStax Confidential.
Do not distribute without consent. ありがとうございました! Twitter account: @cassandrajapanで情報発信しています
78.
SQL Server データベース エンジン Azure
SQL Database リレーショナル (SQL)非リレーショナル (NoSQL) 分析 Azure マネージド サービス オペレーション Microsoft Analytics Platform System
79.
高速で安定したパフォーマンス 構成可能な整合性レベル エラスティックなスケーリング セカンダリ インデックスなしで JSONをクエリ ネイティブ JavaScript
トランザク ション処理 SQL ベースのクエリ言語 REST、JSON、JavaScript 簡単、フル マネージド エンタープライズ対応の Azure
80.
DocumentDB は Web/モバイル アプリで特に よく使われている カタログ データ ユーザー設定、状態 イベント
ストア UGC (ユーザー生成コンテンツ) データ交換
81.
コレクション ドキュメント 1 ドキュメント
2 ドキュメント 3 ドキュメント 4 DocumentDB Application { "name": "John", "country": "Canada", "age": 43, "lastUse": "March 4, 2014" } { "name": "Lou", "country": "Australia", "age": 51, "firstUse": "May 8, 2013" } { "docCount": 3, "last": "May 1, 2014" } { "name": "Eva", "country": "Germany", "age": 25 } JSON
82.
Java .NET
83.
Azure ポータル Azure
DocumentDB Studio portal.azure.com github.com/mingaliu/DocumentDBStudio
85.
アンケートにご協力ください。 ●アンケートに 上記の Session
ID のブレイクアウトセッションに チェックを入れて下さい。 ●アンケートはお帰りの際に、受付でご提出ください。 マイクロソフトスペシャルグッズと引換えさせていただきます。
86.
ROOM J Ask the
Speaker のご案内 ●本セッションの詳細は、EXPO 会場内 『Ask the Speaker』コーナー Room A カウンタにてご説明させて いただきます。是非、お立ち寄りください。 Ask the Speaker EXPO会場MAP
Download