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
Submit search
EN
Uploaded by
Creationline,inc.
PPTX, PDF
106 views
Mongo db world 2018
mongoDBWorld2018 keynote Recap
Technology
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 73
2
/ 73
3
/ 73
4
/ 73
5
/ 73
6
/ 73
7
/ 73
8
/ 73
9
/ 73
10
/ 73
11
/ 73
12
/ 73
13
/ 73
14
/ 73
15
/ 73
16
/ 73
17
/ 73
18
/ 73
19
/ 73
20
/ 73
21
/ 73
22
/ 73
23
/ 73
24
/ 73
25
/ 73
26
/ 73
27
/ 73
28
/ 73
29
/ 73
30
/ 73
31
/ 73
32
/ 73
33
/ 73
34
/ 73
35
/ 73
36
/ 73
37
/ 73
38
/ 73
39
/ 73
40
/ 73
41
/ 73
42
/ 73
43
/ 73
44
/ 73
45
/ 73
46
/ 73
47
/ 73
48
/ 73
49
/ 73
50
/ 73
51
/ 73
52
/ 73
53
/ 73
54
/ 73
55
/ 73
56
/ 73
57
/ 73
58
/ 73
59
/ 73
60
/ 73
61
/ 73
62
/ 73
63
/ 73
64
/ 73
65
/ 73
66
/ 73
67
/ 73
68
/ 73
69
/ 73
70
/ 73
71
/ 73
72
/ 73
73
/ 73
More Related Content
PDF
MongoDB概要:金融業界でのMongoDB
by
ippei_suzuki
PDF
MongoDB勉強会資料
by
Hiromune Shishido
PDF
NoSQLデータベースと位置情報
by
Koji Ichiwaki
PDF
MongoDBご紹介:事例紹介もあり
by
ippei_suzuki
PPT
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
by
kishimotosc
PPTX
日本語:Mongo dbに於けるシャーディングについて
by
ippei_suzuki
PDF
About NoSQL
by
hideaki honda
PPT
Cassandra v0.6-siryou
by
あしたのオープンソース研究所
MongoDB概要:金融業界でのMongoDB
by
ippei_suzuki
MongoDB勉強会資料
by
Hiromune Shishido
NoSQLデータベースと位置情報
by
Koji Ichiwaki
MongoDBご紹介:事例紹介もあり
by
ippei_suzuki
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~
by
kishimotosc
日本語:Mongo dbに於けるシャーディングについて
by
ippei_suzuki
About NoSQL
by
hideaki honda
Cassandra v0.6-siryou
by
あしたのオープンソース研究所
What's hot
PPTX
Mongo dbを知ろう
by
CROOZ, inc.
PPTX
JSON Value into Power Automate
by
Tomoyuki Obi
PDF
Nosqlの基礎知識(2013年7月講義資料)
by
CLOUDIAN KK
PDF
NOSQLの基礎知識(講義資料)
by
CLOUDIAN KK
PDF
qpstudy 2013.07 NoSQL
by
Akihiro Okuno
ODP
Mongo dbを半年ちょっと運用してみた
by
htty_hasumi
PDF
DBP-009_クラウドで実現するスケーラブルなデータ ウェアハウス Azure SQL Data Warehouse 解説
by
decode2016
PDF
20140418 info talkセミナー資料
by
Takahiro Iwase
Mongo dbを知ろう
by
CROOZ, inc.
JSON Value into Power Automate
by
Tomoyuki Obi
Nosqlの基礎知識(2013年7月講義資料)
by
CLOUDIAN KK
NOSQLの基礎知識(講義資料)
by
CLOUDIAN KK
qpstudy 2013.07 NoSQL
by
Akihiro Okuno
Mongo dbを半年ちょっと運用してみた
by
htty_hasumi
DBP-009_クラウドで実現するスケーラブルなデータ ウェアハウス Azure SQL Data Warehouse 解説
by
decode2016
20140418 info talkセミナー資料
by
Takahiro Iwase
Similar to Mongo db world 2018
PDF
MongoDB社の製品紹介 2019-MongoDB EA&Atlas
by
昌桓 李
PPTX
初心者向けMongoDBのキホン!
by
Tetsutaro Watanabe
PDF
データベース勉強会 In 広島 mongodb
by
Ryuji Tamagawa
PDF
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
by
Akihiro Kuwano
ODP
Mongo db勉強会
by
otmb
PPT
MongoDB
by
あしたのオープンソース研究所
PDF
DB tech showcase: 噂のMongoDBその用途は?
by
Hiroaki Kubota
PDF
MongoDBざっくり解説
by
知教 本間
DOC
20110301 Mongo Tokyo
by
Kenichi Masuda
DOC
20110302 Mongo Tokyo
by
Kenichi Masuda
PPT
Mongodb
by
Satoru Mikami
PDF
Introduction to MongoDB
by
moai kids
PDF
Mongo dbを知ろう devlove関西
by
Ryuji Tamagawa
PPTX
Mongodb World 2014
by
Yoshihiro Iwanaga
PPTX
PHPとMongoDBで学ぶ次世代データストア
by
Takuya Sato
PDF
20120831 mongoid
by
Takeshi AKIMA
PDF
はじめてのMongoDB
by
Keisuke Izumiya
PDF
[MongoDB勉強会 in 2017] MongoDB on AWS
by
Shuji Kikuchi
PPTX
MongoDB: システム可用性を拡張するインデクス戦略
by
ippei_suzuki
PDF
Mongodb 紹介
by
Ryo Matsumura
MongoDB社の製品紹介 2019-MongoDB EA&Atlas
by
昌桓 李
初心者向けMongoDBのキホン!
by
Tetsutaro Watanabe
データベース勉強会 In 広島 mongodb
by
Ryuji Tamagawa
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
by
Akihiro Kuwano
Mongo db勉強会
by
otmb
MongoDB
by
あしたのオープンソース研究所
DB tech showcase: 噂のMongoDBその用途は?
by
Hiroaki Kubota
MongoDBざっくり解説
by
知教 本間
20110301 Mongo Tokyo
by
Kenichi Masuda
20110302 Mongo Tokyo
by
Kenichi Masuda
Mongodb
by
Satoru Mikami
Introduction to MongoDB
by
moai kids
Mongo dbを知ろう devlove関西
by
Ryuji Tamagawa
Mongodb World 2014
by
Yoshihiro Iwanaga
PHPとMongoDBで学ぶ次世代データストア
by
Takuya Sato
20120831 mongoid
by
Takeshi AKIMA
はじめてのMongoDB
by
Keisuke Izumiya
[MongoDB勉強会 in 2017] MongoDB on AWS
by
Shuji Kikuchi
MongoDB: システム可用性を拡張するインデクス戦略
by
ippei_suzuki
Mongodb 紹介
by
Ryo Matsumura
More from Creationline,inc.
PPTX
DevOps - Successful Patterns
by
Creationline,inc.
PPTX
Docker webinar 20170426−01
by
Creationline,inc.
PDF
MongoDB webiner01
by
Creationline,inc.
PDF
Opscode overview july2013 jp
by
Creationline,inc.
PPTX
Docker webinar 20170616 - Modernize Traditional Apps with Docker Enterprise E...
by
Creationline,inc.
PPTX
Docker Community Edition & Enterprise Edition
by
Creationline,inc.
PDF
Docker webinar 20170426−02
by
Creationline,inc.
PDF
DevOpsを実践し成功に導くための ”はじめの一歩” 20171003
by
Creationline,inc.
PPTX
Operating kubernetes clusters and applications safely
by
Creationline,inc.
PDF
コンテナライフサイクルを守るセキュリティソリューション Aqua Cloud Native Security Platform
by
Creationline,inc.
PDF
What's New in Docker Enterprise Edition (in Japanese)
by
Creationline,inc.
DevOps - Successful Patterns
by
Creationline,inc.
Docker webinar 20170426−01
by
Creationline,inc.
MongoDB webiner01
by
Creationline,inc.
Opscode overview july2013 jp
by
Creationline,inc.
Docker webinar 20170616 - Modernize Traditional Apps with Docker Enterprise E...
by
Creationline,inc.
Docker Community Edition & Enterprise Edition
by
Creationline,inc.
Docker webinar 20170426−02
by
Creationline,inc.
DevOpsを実践し成功に導くための ”はじめの一歩” 20171003
by
Creationline,inc.
Operating kubernetes clusters and applications safely
by
Creationline,inc.
コンテナライフサイクルを守るセキュリティソリューション Aqua Cloud Native Security Platform
by
Creationline,inc.
What's New in Docker Enterprise Edition (in Japanese)
by
Creationline,inc.
Recently uploaded
PDF
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
by
NTT DATA Technology & Innovation
PPTX
DrupalCon Nara 2025の記録 .
by
iPride Co., Ltd.
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
by
PC Cluster Consortium
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
PDF
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
by
Sugiyama Yugo
PDF
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
by
TomohiroKusu
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
by
NTT DATA Technology & Innovation
DrupalCon Nara 2025の記録 .
by
iPride Co., Ltd.
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
by
PC Cluster Consortium
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
by
Sugiyama Yugo
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
by
TomohiroKusu
Mongo db world 2018
1.
7/26~28/2018 @ New
York City MongoDB World 2018: Keynote & Product Announcements 2018/09/14 クリエーションライン 鈴木いっぺい
2.
Dev Ittycheria MongoDB CEO
3.
• 顧客開拓、製品エンハンスに加え、昨年は MongoDBはIPOを達成 → データベース企業としては、26年ぶり •
MongoDB Worldの主役はもはや顧客であ って、キーノートでは4社の顧客に登壇し てもらう予定 • 最初の顧客は保険業界からの登壇で、創業 150年のTravelers Insurance社
4.
Travelers社 • データベース=RDB only
と呼ばれていた時代はもはや終わりつつある。 • MongoDBのような新しいデータベース技術は • 昨年のイベント際は2つのコレクションをやっと作り上げつつある状況だったの が、今年のイベントでは、120個のコレクションがプロダクションで運用されて いて、毎日1000万のドキュメントを書き込むようなトラフィックを生んでいる 。 • MongoDBの大きな特長は、使い始めてから習熟するまでの期間が非常に短いと いう事。 • また、MongoDBを採用した大きな理由は次の3つ: • JSON is the Next SQL MongoDBのデータ表記言語であるJSONは次世代のSQL言語である、とい う強い確信と共に、MongoDBのAggregation PipelineがJSONデータをRDB よりはるかに柔軟にアプリケーションに渡す機能を提供してくれる • Scalability with your business データベースが、業務のニーズに合わせてスケールをしてくれる事。High AvailablilityとHigh Consistencyを提供してくれるだけではなく、その特性を 活かしたまま、700万のドキュメントを7億のドキュメントまで増やすこと が容易にできる • Supports all cloud configurations データのクラウド移行に関しても、パブリッククラウド、プライベートク ラウド、マルチクラウドであろうと、柔軟に対応してくれる
5.
Dev Ittycheria氏が再び登壇 MongoDBが選ばれた理由は次の3つのポイントにまとめられ る。 • MongoDBはデータベースとして最も現代のニーズに対応し ている •
ドキュメントモデル • クエリーのAPIが充実 • Aggregation Framework • MongoDBはデータを保存する場所として最も安心 • レプリケーションによるデータの自動的フェールオー バーと可用性 • シャーディングによる分散処理 • ワークロードの独立化 • ゾーン機能によるデータの地理的な分散化 • MongoDBは全てのプラットホーム上でサポートされている • オンプレミス • プライベート/パブリッククラウド • DBaaS (クラウド)
6.
Coinbase社 • Coinbase社は6年前にビットコインの売買を運用するサイトを立ち上げた会社 • 当時は、既に多数のベンダーが存在していたが、Coinbase社は技術力をもって市場 で最も成長の早く、$20B規模の資産価値を持つ企業として成長した。 •
創業してからの6年は、エコシステムが大きく変遷をしたため、成功するための技術 の選択は非常に重要な要件でした。 • MongoDBを選択した最大の理由は、こういった大きな変遷に対応できるデータベー スが必要だったから • 当初提供していたサービスはCoinbase Walletだけ • Coinbase Exchangeをさらに追加 • 複数の仮想通貨を追加(Etherium、Litecoin等) • Asset ManagementとかIndex Fundのような企業向けのサービスも開始 • 新規機能を追加するたびに、データストアのMongoDBのコレクションを変更する必 要が出るが、それが非常に簡単だったことがMongoDBを選択した大きな要因 • また、金融事業者であるため、セキュリティ、特に不正防止の配慮が非常に重要で、 認証機能を提供する3rd PartyベンダーのコンポーネントをMongoDBとたった2週間で 接続し連携されることに成功している。 • 開発者にとって最も重要なことは、楽しく開発しつつ、最も重要な要件に集中できる ことを保障すること。CoinbaseはRuby On Rails中心の開発チームで、オブジェクト 思考のプログラミング環境においてドキュメント型データベースであるMongoDBは 、プログラマのオブジェクトに対するプログラミングを非常に容易にしてくれた。 • MongoDBをコアのデータストアとして採用することにより、コードリリースは数日 の間に完了し、従来の数週間のインターバルを大きく改善している。このようなスケ ールの中で、Coinbaseは昨年だけでも2000万ユーザ増やすことに成功している。
7.
Braze社 • Braze社は、Customer Lifecycle
Engagement Platformアプリ。マーケティングツールの 一種で、モバイル端末をプラットホームにする点が特徴。 • Lyftから届く、運転手からのメッセージや、宅配ピザの注文であと5分で届く、というメ ッセージも、すべてBraze社の技術によるもの。 • Brazeが登録されているアプリをダウンロードやウェブサイトを訪問する度に、Brazeは データベースにそのユーザのアカウントを作成する。このデータが各々のユーザに対する ユニークなユーザ情報を記録する。現時点で、100億ユーザが登録されている。 • 2011年からこのデータベースとしてMongoDBが採用されており、事業にとっては重要な 役割をもっている。 • 顧客の位置情報などの情報もスキーマ構成で登録する • 14億人のアクティブユーザ • 毎日、1.5Bのメッセージ(メール、テキストメッセージ、等)を送信 • これらをすべてかなり大きいMongoDBのクラスターで運用 • 1000個のシャードによって構成されている。 • 毎秒、25万ものオペレーション • アメリカとヨーロッパでそれぞれ、12のデータベースクラスターで運用 • 新規顧客が登録されるたびに、そのユーザに関する属性情報をMongoDBクラスターに登 録 • 今年は、20億人のアクティブユーザをサポートする予定 • 来年以降は、これが30億〜50億人/月に登る見込み • このような環境でMongoDBは重要な要件に対応してくれている • スケーラビリティ:今後も大量に増えるユーザをサポートできる • スピード:そのユーザ増加のスピードにも対応できる • 性能:ユーザが増加しても、システムの性能は維持できる • 現在、Atlasへの移行を計画中
8.
Snag社 • Snag社はフリーランス系のジョブサイトを運営する企業 • 具体的には、時間単位のジョブを提供することに特化 •
現在、9000万人を対象に数千箇所の地域に対してサービスを提供し、そのシステムの中 核としてMongoDBを7年前から採用 • RDBからMongoDBに移行した大きなメリット: • RDBのスケーラビリティや性能の限界を解消 • 開発者の開発スピード/効率性が大幅に向上 • ORM (Object Relational Mapping)の工数を完全になくした • データベースデプロイメントの工数もなくした • 結果的にスキーマの責任を、DBAから各製品チームに移譲することができた • 驚くほど安定稼働し、特にスケール面ではビジネスの成長にリニアにMongoDBも規 模拡大が容易に対応 • MongoDBの規模は現在は非常に大きく、運用工数も自然と増えていく中、MongoDB Atlasが発表され、移行を検討開始 • すでに規模の大きいAWS上のMongoDBインフラをAtlasに移行する際には、 MongoDBチームを力を借りた • Atlasを評価している点 • TLS暗号化をサポート • VPC Peering接続をサポートし、AWSの既存システムとの接続が容易に • 監視機能が充実していて、MongoDBの下層部の動きもよく見ることができる • サイジングが非常に緻密で、無駄なインスタンスを買わずに済む • 従来の運用コストが大幅に削減:これらは全てAtlasでは自動化されている • 分散しているデータベースシステムのバックアップ工数 • 結構細かいセキュリティパッチのアップデート • メジャーリリースのアップデータの工数 ← クラスターが巨大ゆえ、これが大 きい
9.
• StackOverflowの調査を報告 - 2位以下に大きな差をつけて、Stack
Overflowに て「最も求められるデータベース技術」として 過去2年間、評価されている
10.
• その人気の度合いが、現時点で4000万以上のダウンロ ード数の背景を説明している。 • 過去12ヶ月の間のダウンロード数は、1200万を超えて いる •
現在、ソフトウェア開発者人口は、2000〜2500万人と いう統計がある。 • 非常に広い範囲のユーザベースに成長 • Seven Eleven: 全米に商店をもつBrick and Mortar企業 からモバイルコマース企業への変遷を行なっている • Pitney Bowes: 郵便切手を印刷する機械を製造してい た会社が、デジタルeコマース企業に変身
11.
• こういった顧客でのAtlasの利用が非常に活発になってきている 。 • 2年前のMongoDBWorldで発表された当時は、世界で4箇所でし た運用されていなかった。 •
この2年間の間に、2箇所が54箇所に増加 → 世界で最も広く提 供されているデータベースのマネージドサービス • AWS, Azure, GCPのリージョンほぼ全てで運用されていて、各 社の今後のリージョン展開にMongoDBは追随する予定 • Atlasの成長も顕著 • 顧客数も、2年前は400社しかいなかったが、現在は 4400社に増えている。 • さらにAtlasの無償枠も運用を昨年からスタート、当初 は1万ユーザだったのが、現在は13万ユーザに増加
12.
• MongoDBのグローバル事業は広がっている。 • 65000人が115のMongoDBミートアップイベントに参加 •
100カ国に顧客がいる • 20カ国に従業員がいて、さらに拡張中 • パートナーとの協業関係も強化中 • 過去の4年間の売り上げは毎年、70%以上の成長を遂げ ている • 特に昨年からの一年で80%以上の成長
13.
• この売り上げの大部分はR&Dに投資 • 2012年〜2014年の間は合計$630万ドル •
この投資が、2015年〜2017年には、$244万ドル(約260億円)に 増加している。 • Atlasの開発、トランザクション機能のサポート、等重要な機能/ サービスに寄与している
14.
Eliot Horowitz MongoDB CTO
15.
MongoDB CTO, Elliott
Horowitz氏の登壇 まずは、MongoDB 4.0 の マルチドキュメントACIDトランザクション機能の発表
16.
MongoDB Transactions
17.
• 実際にMongoDBの上でどの様に使われるのかは、eコマースのサイトの事例を通して説明 • アプリ流れは次の通り: •
このドキュメント (doc) はこのeコマースサイトでの商品発注を、品物番号 (item) と注文数 (quantity) の配列 構造で表現 • db.orders.insertOne コマンドを通して、商品発注 (doc) ドキュメントを発注コレクション (orders) に挿入 • db.inventory.update コマンドを通して、発注が起きるたびに、在庫コレクション (inventory) 内の商品 (item) の在庫 (qty) の数値を減らす。
18.
• もし、InsertOneコマンド実行後、updateコマンドを実行する直前に障害が発生して、ordersコレクションと inventoryコレクションの間に不整合が発生したをする。 • もしくは、inventoryコレクションのqtyの数値のアップデートのループの途中で障害が発生したとする。
19.
• MongoDBのトランザクション機能はこのように表記する • セッションの開始は:session.start_transaction()
で宣言 • 全ての read/writeトランザクションを明記 (session=session挿入) • セッション終了時にコミット • 3つの特長 • Familliar: 記述方法は、従来のRDBと全く同じ文法 • Conversational: RDBと同様、対話型で記述 • Performant: ベンチマークで非常に高速処理を記録
20.
• MongoDB v4.0では、レプリカセットでのトランザクション機能がサポートされる •
シャーディング環境でのトランザクション機能サポートは、v4.2 にて提供予定
21.
• トランザクション機能への道のりは段階的なステップを踏んでいる • v3.6でChange
Stream機能(リアルタイムでデータ変更情報をアクセス)や、Retryable Writes機能( ネットワーク障害やプライマリ不在時に書き込みを再度行う機能)等の提供
22.
• MongoDBでのトランザクションの適切な使い方の紹介 • RDBからテーブルをMongoDBのドキュメントに移行し、従来と同じシーケンスでトランザクション処理をプログラ ミングはできるが、MongoDBの特性を活かした、もっと適切な方法がある。 •
図では、RDBから移行した次のテーブルをドキュメントに書き換え、トランザクション処理で両方のデータを同時 に書き換え • order_id : customer_id テーブル(発注ID : 顧客ID) • line_item_id : order_id テーブル(商品ID : 発注ID) • MongoDBでは、この2つのテーブルを一つのドキュメント/コレクションに統合する方が有効
23.
• 2つのテーブルを統合したのが左のドキュメント • order_id
: customer_id : line_items (name, price, quantityの配列) を一つのドキュメントで表 記 • 右の処理 • ordersコレクションの中のorder_total(発注合計)とline_items.$[ ].price(商品価格)の両方に discount(割引率)を乗算する処理を一気に行う • これは、RDBの場合は、各テーブルに対してそれぞれ処理を行う必要がある。
24.
そもそも、トランザクションを無為に使うのではなく、的確なケースに使う事 が重要 • 明確なビジネスオブジェクト • eコマースアプリの発注処理 •
在庫管理 • 人との間のお金のやりとり • そうでないもの • 商品などの配列内のデータの操作 • ユーザプロファイルの属性情報 • 複数のデータソースからデータを収集/統合 • IoTアプリでセンサーデータを収集し、データベースにInsertする際 に、同時にそこから派生しているRoll-upビューやAggregateされた データビューも反映させる • ドキュメント内のシャードキーを変更(v4.2 で提供予定) • シャード化されたコレクション内のドキュメントのシャードキーを 変更可能(v4.2 で提供予定) 今後の利用の割合 • MongoDBユーザの50%がトランザクション機能を使うのでは、と予測 • とはいえ、全体のオペレーションの非常に小さな%しか使わない MongoDB v4.0 のリリースは今日(7/25)からダウンロード開始 • 従来は新規バージョンは年末にGAになるのが通例であるが今年は早い
25.
$lookup 機能:v4.0のトランザクション機能と組み合わせて、RDBと全く同じデータ参 照が可能 • RDBの
JOIN と同じ機能:異なるコレクション内のドキュメントを連携 • v3.2 (3年前)に提供
26.
MongoDB Best DB for
Modern Apps
27.
MongoDBはデータリレーション(データ同士の関係)の表現に優れていて、大きく2種類の 方法がある。 • REFERENCE RELATIONSHIPS:
上記のトランザクション+$lookup でデータを参照 → RDBにもあるデータ管理方式(テーブル+JOIN) • EMBEDDED RELATIONSHIPS: 同一のドキュメント内に配列でデータを表記し、直接 参照 → ドキュメント型DBであるMongoDBに固有な価値
28.
RDBは元来、一つのデータリレーション表現に統一されている • 全てのデータ表記は参照モデル(REFERENCE RELATIONSHIP) •
トランザクション、JOIN等を通して、複雑な参照のプログラミングを可能にしている
29.
これは本質的には、スプレッドシートの上でデータを構築しているだけ。 • 世の中のデータは、もはやこのモデルには当てはまらないデータが多すぎる時代に ==> これがMongoDBの「ドキュメントモデル」の真の価値であり、目指す領域
30.
MongoDB Best DB for
Modern Apps 1. Document Model 2. Distributed Model 3. Runs Anywhere
31.
ドキュメントモデルの特長 • 自然な表記: ドキュメントモデルは実データを最も自然に表現できる方法 ユーザプロファイル、eコマースストアの発注データ、等を複数のテーブルに分割してデータ表記する必要が無い • 動的に運用できるスキーマ ビジネス要件に伴ってデータのスキーマを柔軟に変更可能 同時に、JSONスキーマの属性設定で特定のフォーマットを強制する事も可能 •
優れたクエリー言語 単なる参照から、複雑なデータAggregationにも対応 バッチ/リアルタイムに対応 • 言語ドライバー
32.
分散システム対応の特長 • HA機能 レプリカセットによる高い可用性 • スケールアウト機能 レプリカセットやシャード機能により並列分散処理が容易 •
ワークロードのアイソレーション(隔離) BCP等の複数データセンタの運用でレプリカを異なる場所に配置 • ソーンシャーディング
33.
どこででも運用可能 • 一貫性 ラップトップ/クラウド/オンプレミスであろうと、全く同じ開発/運用環境 • ポータビリティ 1箇所で開発したアプリを容易に他のロケーションに移動できる •
セキュリティ 場所に限らずセキュリティレベルも一定
34.
MongoDB Key Value Document
Model
35.
MongoDB Compass
36.
• プロダクションで動いているドキュメントの編集を細かく行いたい、というニーズが多い ◦ シェルでの編集が難しい、という意見が多かった
37.
• MongoDB Compassを3年前に発表 ◦
GUIでデータの編集を可能に ◦ このGUIをAtlasで直接使えるようにした
38.
Data Explorer =
Atlas上のCompass相当の機能
40.
• Atlas の
Aggregation Pipeline Builder機能 ◦ コレクションを選択し、Aggregation Pipelineのステージ を追加するたびに、右側にサンプルが表示される機能 ◦ 追加されるステージの結果を編集する度にサンプルが反 映されて表示される。 ◦ 途中でステージを追加/削除/編集 しながら最適化され
41.
• 容易にコレクションの生成、追加、削除が可能 • ドキュメントの中身を全て見る事が可能 •
Data Explorer (Compass相当機能) ◦ Index View - インデックスの生成/編集/削除 ◦ Find View - ドキュメントの編集/アップデート/ インサート/コピー - クエリーの実行
42.
MongoDB Aggregation Pipeline
43.
• MongoDB 4.0のAggregation
Pipelineの3つのエンハンス項目 ◦ Date Manipulation 日付情報を自由に加工する事が可能 ◦ String Manipulation 文字列情報を自由に編集可能 ◦ Type Operators 文字列/数字を自由に変換可能
44.
• 新機能:Atlas の
Aggregation Pipeline Builder機能 ◦ コレクションを選択し、Aggregation Pipelineのステージを追加するたびに、右 側にサンプルが表示される機能 ◦ 追加されるステージの結果を編集する度にサンプルが反映されて表示される。 ◦ 途中でステージを追加/削除/編集 しながら最適化されたAggregation Pipelineを構築できる
45.
MongoDB Stitch
46.
MongoDB Stitch Query Anywhere
47.
• MongoDB 4.0のStitchの基本機能 ◦
Stitch Functions Stitch環境でJavaスクリプトをプログラミングできる環 境 ◦ Stitch QueryAnywhere Atlasから直接データベースに対してクエリーを発行でき る機能
48.
• MongoDB 4.0のStitch機能 ‣
認証機能が提供 facebook、Googleでの認証を利用可能 ‣ アクセス権ルールの設定も用意 Stitch上でユーザのアクセス権限を設定可能 ‣ MongoDBのクエリー言語を100%サポート
49.
• 病院でのアプリの事例 ‣ 患者、医者、看護師、保険会社、それぞれの医療デ ータに対するアクセス権を管理 ‣
データを別の場所にコピーする事なく別のアプリか らStitchを経由して直接操作可能 ‣ MongoDBのクエリーがすべて使える
50.
MongoDB Stitch Triggers
51.
‣ データベースでのイベントを監視し、任意のアクションに基づいてMongoDBに通知 し、特定の操作を自動的に実行 ‣ 元はv3.6の機能にあった、Change
Streamsの機能 → アプリサーバの関与が必要だった ‣ Atlas上でのChange Streams = Stitch Trigger ‣ DB内のアクションに基づいて、Java Scriptプログラムを実行 例:ドキュメントが挿入されると、Twilloを起動し携帯にテキストメッセージを送信 ‣ アプリサーバ介在せず、コーディングもほとんど必要なし ‣ MongoDB外で処理が行われるため、DB性能に全く影響なし
52.
MongoDB Stitch Mobile Sync
53.
• MongoDB Mobile
Sync機能 ‣ MongoDBが稼働する他のプラットホーム、MongoDB Mobileを同期 ‣ モバイル機器の上でオフラインアプリの開発 ‣ Mobile Appの同期機能をコールするだけ - ドキュメントIDを入力 - Conflict Resolverの定義(データ不一致の倍の対応ルール) - eventListenerの設定(モバイル機器のアクション:振動、Notification Pop Up、等) ‣ 常にMobile App上のデータを最優先 - 高速なローカルR/W - オフラインでの利用 - Stitch経由で自動的にデータはホストと同期(バックでChange Streams機能)
54.
• MongoDB Mobile ‣
モバイル機器上でMongoDBを稼働 ‣ MongoDB Mobile - iOSもしくはAndroid上で動く内蔵型のMongoDB - 既存のMongoDBと全く同じAPI,機能セット - 現在ベータ
55.
MongoDB BI Connector
56.
• BI Connectorの新機能 ‣
BI Connector v2.5 ‣ ODBCドライバー MongoDBにMS SQLを接続、Atlas上のMongoDBドキュメント からExcelファイルにデータを展開する ‣ MongoDB Charts 中間レイヤを介さずに、直接MongoDBからグラフや表を作成、 表示
57.
MongoDB BI Connector: ODBC Driver
58.
• ODBCドライバーデモ ‣ AtlasダッシュボードでBI
Connector を Enabledに設定 ‣ MongoDBのネストされているドキュメントを 複数のテーブルに移行し、Excelで表示 ‣ PIVOT Tableを生成
59.
MongoDB BI Connector: Charts
60.
• MongoDB Charts ‣
広範囲にグラフ/表モデルを提供 ‣ 配列も含め、ドキュメントが自動的に展開、個別 に表示可能 ‣ ダッシュボード上で複数のグラフ/表を表示 ‣ ダッシュボードを共有 ‣ 全て、MongoDBに直接アクセス
61.
MongoDB Key Value Distributed
Model
62.
• 分散型データベースのキーポイント ‣ High
Availability 障害が起きても稼働保証が容易 ‣ スケールアウト ワークロードの急激な増加にも迅速、柔軟に対応 ‣ ワークロード分離 お互いの性能に影響を及びさない ‣ Zone Sharding データを地理的に異なる場所において管理
63.
MongoDB Atlas
64.
• Atlasでのエンハンス項目 ‣ Global
Clustersのサポート ‣ Google Computing Platformでの無償枠の提供開始 ‣ エンタプライズセキュリティ機能 ‣ AWS KMS(Key Management Service)サポート 自分のAWS KMSキーを使って暗号化(Data encryption at rest) ‣ 社内のLDAPサーバを利用、Atlasでの認証を実施 ‣ Atlas上でのフル監査機能 ‣ HIPAA(米国医療業界のセキュリティ規制)サポート ‣ 無停止でオンプレミスMongoDBクラスターからAtlasへ移行可能
65.
MongoDB Zone Sharding
66.
• Zone Shardingのキーポイント ‣
データを特定の国の中で運用するニーズ - 各国の法律や規制に基づく制限 - 各国での運用Latencyを最小限に ‣ 短時間にグローバル規模でAtlasクラスターを構築可能 - 普通のデータベースだとものすごい時間がかかる
67.
• Zone Shardingのデモ ‣
Global Cluster Configuration設定画面 ‣ 各国でのWrite Latencyが色で表示 ‣ Global Write テンプレート ‣ 3つのクラウドで提供(AWS, Azure, GCP) ‣ 複数の段階を選択可能 ‣ アプリケーションを接続 ‣ Data Explorerでコレクションの最適化 ‣ 国コードを設定し、シャードキーとする ‣ 各リージョンを個別に変更可能 ‣ 新規リージョンの追加 ‣ 特定リージョンでシャードを増やしキャパシティ増強 ‣ Read専用のレプリカを追加 (Readだけローカル)
68.
MongoDB Key Value Runs
Anywhere
69.
MongoDB Cross Cloud Support
70.
• Cross Cloud
サポート ‣ 複数のパブリッククラウドにまたがったMongoDBクラスターが構築/運用可能に ‣ 今年の後半に提供開始
71.
MongoDB Private Cloud
72.
• Private CloudでのMongoDBユースケース ‣
Kubernetesがプライベートクラウドのデフォルトプラットホームになり つつある。 ‣ Native Kubernetes ‣ OpenShift ‣ CloudFoundry ‣ MongoDB Ops ManagerとKubernetesの統合 ‣ Kubernetes上で簡単にMongoDBクラスターを立ち上げ、運用する
73.
MongoDB Mobile
Download