“Empower every person and every organization on the planet to achieve more”
地球上のすべての個人とすべての組織がより多くのことを達成できるようにする
いまMicrosoft が考えていること目指していること
Microsoft Azure
コアインフラストラクチャ
コンピューティング ストレージ ネットワーク セキュリティ
高度なワークロード
Web + モバイル
IoT (Internet of Things)
マイクロサービス
サーバーレス
アイデンティティ管理
データ +分析
Cognitive Services
HPC
ツール
Visual Studio + Visual Studio Code + Visual Studio Team Services
42 regions around the world
https://azure.microsoft.com/regions/
100 か所以上のデータセンター ネットワーク網が全世界でトップ 3 の 1 つ AWS の 2 倍、Google の 6 倍のリージョン 米国国防総省 (US DoD) も採用
https://azure.microsoft.com/ja-jp/support/trust-center/
HIPAA /
HITECH Act
Moderate
JAB P-ATO
FIPS 140-2
FERPA
DoD DISA
SRG Level 2
ITAR CJIS
GxP
21 CFR Part 11
IRS 1075Section
508 VPAT
ISO 27001 SOC 1
Type 2
ISO 27018 CSA STAR
Self-Assessment
Singapore
MTCS
UK
G-Cloud
Australia
IRAP/CCSL
FISC
Japan
China
DJCP
New
Zealand
GCIO
China
GB 18030
EU
Model Clauses
ENISA
IAF
Argentina
PDPA
Japan CS
Mark Gold
SP 800-171
China
TRUCS
Spain
ENS
PCI DSS
Level 1
CDSA Shared
Assessments
MPAA
Japan
My
Number
Act
FACT
UK
High
JAB P-ATO
GLBA
DoD DISA
SRG Level 4
MARS-E FFIEC
ISO 27017 SOC 2
Type 2
SOC 3
India
MeitY
Canada
Privacy
Laws
Privacy
Shield
ISO 22301
Germany IT
Grundschutz
workbook
Spain
DPA
CSA STAR
Certification
CSA STAR
Attestation
HITRUST IG Toolkit
UK
GLO
BA
LU
S G
OV
IND
US
TR
YR
EG
ION
AL
♥
Microsoft と OSS
実は GitHub でOSS に開発貢献した企業 No.1
https://octoverse.github.com/
Red Hat partnership
announcement and
BYOS launch
OMS Log Analytics –
Linux (Preview)
Container Service
Preview
Azure/MCSA
Certification with LF
Red Hat PAYG Launch
VM Depot Shutdown
Phase 1
SQL Server on Linux
announcement
Service Fabric on Linux
announcement
New Java Dev Center in
ACOM
Azure Batch – Linux
CentOS - Fairfax
Container Service GA
PCF in Azure (POC)
Elasticsearch in Azure
Parse Server
PHP7 Support
Terraform/Packer ARM
Support
Service Broker for PCF
More SQL Server on
Linux announcements
.NET Core RTM
Docker Datacenter in
Marketplace
FreeBSD & CoreOS in
China
RHEL BYOS in Fairfax
MySQL in-app
OMS Log Analytics –
Linux (GA)
OMS – Docker (Preview)
PowerShell open source
– Linux support
App Service on Linux
Azure CLI 2.0
RHEL PAYG in Fairfax,
BYOS in Black Forest
RHEL support for SAP
workloads
VM Depot EOL Phase II
PCF GA (incl. Ops Mgr)
Azure Container Service
support for DevOps use
cases
Container Service
announcements
(ACS/K8S, ACS engine)
RHEL PAYG in Germany
Azure VM Agents
Jenkins Plugin
Azure Cloud Driver for
Spinnaker and
QuickStart
Azure DevOps
Integrations portal
RHEL PAYG in China
Feb 16
Red Hat Enterprise Linux available in Azure Marketplace
Dec 15
Launched joint certification with the Linux Foundation
Aug 16
Announced PowerShell for Linux
Apr 16
Launched ARM support for Packer & Terraform
Jun 16
Microsoft is the first cloud provider in China to support CoreOS
Nov 16
Added Kubernetes support to ACS, open sourced ACS Engine
Dec 16
Joined Linux Foundation as a platinum sponsor & board member
Microsoft と OSS : これまでの歩み
Applications
Clients
Infrastructure
Management
Databases &
Middleware
App Frameworks
& Tools
DevOps
PaaS &
DevOps
Microsoft Azure と OSSOSS を今すぐデプロイできる Marketplace
“Big” Data “Massive” Data
“Big” Data “Massive” Data
Apps + insightsWWW & Social
LOB
Graph
IoT
Image
CRM Cloud
On-premises Edge
マイクロソフトの Data + AI Platform
Azure Machine Learning
CPUs
AI Applications (1st & 3rd party) Cognitive Services
Experimentation Management, Data Prep,
& Collab
SparkAI Batch Training
Storage
COSMOS DB ADLSSQL DB/DWBLOBGPUs
FPGA
IOT
DS VM
Model Deployment & Management
Cloud – Spark, SQL, Other Engines
Edge
ML Server – Spark, SQL, VMs
Docker
SQL Server
Hyperscale,
Enterprise Grade
Infrastructure
Developer Tools &
Services
Open platform for
data science
Bot Framework
Machine Learning Toolkits
CNTK Tensorflow ML Server
Scikit-Learn Other Libs. PROSE
ACS
マイクロソフトの Data + AI Platform (全体像)
Build rapidly and connect to the platformLeverage cloud infrastructure
Stakeholders
DBAs and data scientists
Microsoft Azure
Relational
Collective set of
multiple data sets
organized by tables,
records and columns
NoSQL & Cache
Non-relational DBs
where data is modelled
in means other than the
tabular relations used in
relational databases
Big Data
Accept data at a very
high velocity, and store
structured and
unstructured data in an
efficient and scalable
way across nodes
Functions
Operations Developers Business
Cloud-born LOBDev/Test, Production and Lift & Shift Docker, incl. via DC/OS
Azure Open Source Data Platform
Relational
Azure SQL Database
including revamped
client driver support for
PHP, Node.js, Java,
Linux ODBC and more
NoSQL & Cache
Azure Cosmos DB,
including native
MongoDB wire
protocol support, and
Redis Cache
Big Data
Azure HDInsight – full
Hadoop solution
available as a service on
Windows and Linux
MySQL
PostgreSQL
DB 担当の方だけでなく、アプリ開発者の方のニーズや、プロジェクトの様々な要件にもマッチ
DB-Engines. “DB-Engines Ranking”. solid IT Gmbh, 2017. Accessed 10 May 2017 at <http://db-engines.com/en/ranking-trend>
Kerschberg, Ben. “How Postgres and Open Source are Disrupting the Market for Database Management Systems”. Forbes. 8 Mar
2016
商用データベースおよび OSS Database の利用動向
70%2018年までに作成されるアプリのバックエンドのうち実に 70% が OSS Database で構成されると見込まれている
Azure Database for PostgreSQL
Azure Database for MySQL (Preview)
• IaaS ではなく、PaaS
• インスタンス チューニングではなく必要なスループット プランを必要なときに選択
• バックアップ、リストア、パッチ適用などの作業はおまかせで
• SaaS アプリケーションに最適のフルマネージド サービス
• 高可用性と高セキュリティを両立
• ダウンタイム無しでスケールアップ、スケールダウンも自在
• 既存のドライバ、ライブラリ、ツールと完全互換使い慣れたツール、アプリケーションでからすぐに利用可能
MySQL
PostgreSQL
New!
•
•
https://customers.microsoft.com/en-us/story/geekwire
Azure
Azure Database for PostgreSQLおよび
Azure Database for MySQL 共通
• 論理 DB : “インスタンス” ではない• 1 対多のデータベースを作成可能• リソースはすべて同じ論理サーバ内の
DB 間で共有• Database の “エンドポイント”• フェイルオーバーは自動• 接続制御はファイアウォールの
ルールベースで実施
必要なスループット プランの選択だけで OK
• 数分間で簡単にプロビジョニング可能
• 標準で冗長化され、自動フェイルオーバーを実装
• 複数リージョンをまたがったレプリケーションが可能(※)
• ユーザーによるストレージ管理不要の自動バックアップ(35日間)
• アプリケーションのダウンタイム無しでスケーリングが可能
• 休止中でも動作中でもデータを保護する高度なセキュリティ
• マイクロソフト製のツールや開発言語、ドライバなどは不要
• 使い慣れたツールと言語で利用可能
(※) https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-geo-replication-overview
• パッチ適用はデータセンター側で実施
• メトリックの履歴は 30 日分保持
• メトリックアラートルール作成もポータル上から可能
• サーバログは 7 日分保持
• データベースエンジンのパラメータのカスタマイズ可能
利用者は自分自身の提供するサービスに専念可能
PaaS IaaS
Database / Data
MySQL PostgreSQL
AzureSQL DB
OS/Middleware
Database / Data
MySQL PostgreSQL
SQLServer
利用者が対応
データセンター対応
利用者は自分自身の提供するサービスに専念可能
PaaS IaaS
Database / Data
MySQL PostgreSQL
AzureSQL DB
OS/Middleware
Database / Data
MySQL PostgreSQL
SQLServer
利用者が対応
データセンター対応
Azure Database for MySQL / Azure Database for PostgreSQL はこちら
https://docs.microsoft.com/ja-jp/azure/best-practices-availability-paired-regions
ペア リージョン各 Azure リージョンは、同じ geo 内の別のリージョンと組み合わせて、リージョン ペアにして使用※ブラジル南部 : 例外で geo の外部のリージョンとペアになる
ペアになっているリージョン
北米 米国中北部 米国中南部
北米 米国東部 米国西部
北米 米国東部 2 米国中部
北米 米国西部 2 米国中西部
ヨーロッパ 北ヨーロッパ 西ヨーロッパ
アジア 東南アジア 東アジア
中国 中国東部 中国北部
日本 東日本 西日本
ブラジル ブラジル南部 (1) 米国中南部
オーストラリア オーストラリア東部 オーストラリア南東部
米国政府 米国政府アイオワ州 米国政府バージニア州
インド インド中部 インド南部
カナダ カナダ中部 カナダ東部
英国 英国西部 英国南部
例)計画的な Azure システムの更新プログラムは、ペアリージョンに(同時にではなく) 順番にデプロイされる
もしパッチに不具合があっても影響を受けにくい復旧もペアのうちどちらか
がかならず優先される
使い慣れた好きな言語、フレームワーク、ツールを用いて利用可能学習コスト不要
Languages and frameworks
Database Azure Web Apps
Azure リージョン
Azure Resource
Manager
Application
Postgres
Client
Database Tools(Pgadmin, psql)
Postgres
Client
Database Tools(MySQL Workbench,
mysql Client)
MySQL
Client
Azure Database
Mgmt Service
Application
MySQL Client
REST API
AzurePortal
Custom Mgt. Applications
Azure CLI
Azure リージョン
Database Server
サーバーマネジメントAzure Database
Mgmt Service
Azure Resource
Manager
REST API
AzurePortal
Custom Mgt. Applications
Azure CLI
server=myserver.<mysql/postgres>.database.azur
e.com
pg1PG1
IP1:5432 or 3306retry
Gateway
• いったん接続が切れても内部ゲートウェイでリトライしてくれるのでアプリケーションは切断の影響を受けにくい
• さらに慎重を期すならば、長時間トランザクションを避ける実装にすることがおすすめ(トランザクションは接続オブジェクトに紐づくため)
• Azure SQL Database と共通基盤• これまでの運用実績、ノウハウをフィードバック「枯れた」基盤で運用• Virtual Machine 上ではなく、”Service Fabric” 上に実装
https://azure.microsoft.com/ja-jp/services/service-fabric/
PostgreSQL
(preview)
MySQL
(preview)
Po
wer
BI, A
pp
Serv
ices,
Data
Fact
ory
, A
naly
tics
, M
L,
Co
gn
itiv
e, B
ot…
Global Azure with 40 Regions
Compute & Service Fabric
SQL DW
Storage
SQL Database
Flexible: On-demand scaling, Resource governance
Trusted: HA/DR, Backup/Restore, Security, Audit, Isolation
Intelligent: Advisors, Tuning, Monitoring
Azure Managed
Database
Service
• マイクロサービス的な実装
• Azure SQL Database の基盤
• Service Fabric による展開とリソースガバナンス
• 動的なリソース変更と再構成が可能
• それに基づいた高い SLA の設定 (99.99%)
• マイクロサービス フレームワーク
• アプリのデプロイ
• ローリング アップデート/ロールバック
• バージョニング
• サービス ディスカバリー
• データ レプリカ …
Azure SQL Database (SQL Server の PaaS 版) や多くのサービスが Service Fabric 上に構成されている
https://azure.microsoft.com/ja-jp/services/service-fabric/
DC(ゾーン) A DC(ゾーン) B
何らかの手法で
データ転送
フェイルオーバーはDNS
• 物理ラック• 物理マシン• 物理ネットワーク• 仮想ネットワーク• 仮想マシン… これらの上にアプリを展開
• DCやゾーン複数にVMをデプロイ
• SLAはIaaSと同じ99.95% (4.3時間/年)
ノード
ノード
ノードノード
ノード
ノード
アプリケーション: sfMySQL
ゲスト実行のMySQL (ステートレス)
実行状況管理エージェント
バックアップマネージャ
ストレージマネージャ
その他いろいろ
各々の MySQL/PostgreSQL の
インスタンス
• 今年1月にあった性能改善
• Azure SQL Database のサーバ性能Up(自動)
• インフラ環境改善 -> リソース制限解放という流れについてユーザが特に意識せずに恩恵を受けられた
https://azure.microsoft.com/ja-jp/blog/azure-sql-database-is-increasing-the-read-and-write-performance/
とにかくユーザーの管理の手間がはぶけること!
99.99% SLA (GA 時) | フルマネージド |組み込みフェイルオーバー| オンラインでパフォーマンス変更可能
ユースケースシナリオ
• IOPS が変動してもよい• 低めのワークロード• 必要なスループットが Max 100
コンピューティングユニットでよい
プロビジョニングされた IOPS で全体のスループットを重視し、IO とCPU バランスが最適化されたオンデマンドスケーリングを必要とするアプリケーション向け
コンピューティングユニット
50, 100100, 200, 400, 800(近日1600、2000提供予定)
Storage50GB → 1TB磁気媒体
125GB → 1TB (*)リモート SSD(* GA 後 Larger Storage Option が選択可能になる予定)
IOPS 可変最初の 125 GB は 375以降 1 GB ごとに 3 IOPS 増加
サポートされているバージョン
Native PostgreSQL 9.5 and 9.6
管理レイヤー Azure Portal, Azure CLI, APIs
https://azure.microsoft.com/ja-jp/pricing/details/postgresql/
※ これらは Public Preview 版の情報であり、今後変更になる可能性があります
99.99% SLA (GA 時) | フルマネージド |組み込みフェイルオーバー| オンラインでパフォーマンス変更可能
ユースケースシナリオ
• IOPS が変動してもよい• 低めのワークロード• 必要なスループットが Max 100
コンピューティングユニットでよい
プロビジョニングされた IOPS で全体のスループットを重視し、IO と CPU
バランスが最適化されたオンデマンドスケーリングを必要とするアプリケーション向け
コンピューティングユニット
50, 100100, 200, 400, 800(近日1600、2000提供予定)
Storage50GB → 1TB磁気媒体
125GB → 1TB (*)
リモート SSD
(* GA 後 Larger Storage Option が選択可能になる予定)
IOPS 可変最初の 125 GB は 375
以降 1 GB ごとに 3 IOPS 増加
サポートされているバージョン
Community Version MySQL 5.6 / 5.7
管理レイヤー Azure Portal, Azure CLI, APIs
https://azure.microsoft.com/ja-jp/pricing/details/mysql/
※ これらは Public Preview 版の情報であり、今後変更になる可能性があります
運用負荷軽減 高可用性 セキュリティ 利便性
• 既存の実績ある基盤上で動作
• OS、ミドルウェアの面倒は不要
✓パッチ適用、バックアップ、リストアなども不要
• 監視メトリック用意済み
✓ メール通知なども設定OK
• 可用性担保のためのレプリカ、ストレージ費用は追加不要
• ダウンタイム無しでスケールアップ、スケールダウン自在
• 標準冗長化。自動フェイルオーバーを実装
• 基盤となる Azure の高度なセキュリティ
• 常時暗号化でバックアップも運用 DB も保護
• 既定で設定されたホワイトリスト形式のファイアウォール
• 既定で SSL を要求
• 使い慣れた既存のツール、言語で利用可能
• マイクロソフト製のツールやドライバなどは不要
MySQL
PostgreSQL
PostgreSQL :
Azure Database for MySQL – Can’t restore database with error “Got error 1 from storage engine”
https://blogs.msdn.microsoft.com/azuresqldbsupport/2017/06/08/azure-database-for-mysql-cant-restore-database-with-error-got-error-1-from-storage-engine/Do you have an idea or suggestion based on your experience with Azure Database for MySQL?
https://feedback.azure.com/forums/597982-azure-database-for-mysql/suggestions/19271050-add-myisam-engine-support
PostgreSQL
Azure Database for MySQL – Can’t restore database with error “Got error 1 from storage engine”
https://blogs.msdn.microsoft.com/azuresqldbsupport/2017/06/08/azure-database-for-mysql-cant-restore-database-with-error-got-error-1-from-storage-engine/Do you have an idea or suggestion based on your experience with Azure Database for MySQL?
https://feedback.azure.com/forums/597982-azure-database-for-mysql/suggestions/19271050-add-myisam-engine-support
MySQL
MySQL
PostgreSQL
MySQL
PostgreSQL
データ保護
• 標準でデータベースとバックアップ データを暗号化
あなたのデータを守る充実の Security 関連機能
アクセス管理
• SSL 接続
• サーバー ファイアウォール
ID 管理
• PostgreSQL / MySQL
ネイティブ認証
MySQL
PostgreSQL
• MySQL Workbench や pgAdminなど既存のツールを使用して、Azureに移行可能
• Azure Data Factory でデータを移すことも可能
Azure Database for MySQL
https://feedback.azure.com/forums/597982-azure-database-for-mysql
Azure Database for PostgreSQL
https://feedback.azure.com/forums/597976-azure-database-for-
postgresql
• 直接研究開発チームに要望を上げることが可能なフォーラム• すでに上がっている要望に対し投票することも可能
実際に実装されることも少なくない
Azure Database for PostgreSQL
Azure Database for MySQL
Azure Database for PostgreSQL
Azure Database for MySQL
MSDN StackOverflow
MSDN StackOverflow
User Voice
User Voice
https://github.com/Azure/azure-postgresql
https://github.com/Azure/azure-mysql
Twitter: @AzureDBPostgres, @AzureDBMySQL
Azure Cosmos DBMicrosoft のグローバル分散データベース サービス
2006
BigTable 論文
2007
Dynamo論文
2008
Cassandra
2009
MongoDB
Riak
Neo4j
2010
Project
Florence
2012
Amazon
DynamoDB
2014
Azure
DocumentDBプレビュー
2015
Azure
DocumentDB
GA
2017
Azure
Cosmos DB
GA
ターン キー形式の
グローバル分散
すべてのデータを自動的に世界中の Azure リージョンにレプリケート
データベースエンジン
コンテナー
レプリカマシン
… …
…
クラスター
惑星 スタンプデータセンター
Azureリージョン
障害ドメイン
…
…
Variousagents
Resource Governor
Transport
Admission control
Database engine
Resource Manager
LanguageRuntime(s)
Hosts
Query Processor
Index Manager
Log Manager
IO Manager
RSM
Bw-tree++/LLAMA++
•
•
•
•
•
ターン キー方式のグローバル分散
ストレージとスループットを水平スケール アウトしあらゆるニーズに対応
数百万トランザクション/秒
PB 級のデータ
数百トランザクション/秒
GB 級のデータ
Cosmos DB
Read < 2 ms
Writes < 6 ms
Read < 10 ms
Writes < 15 ms
99%50%
•
•
•
https://docs.microsoft.com/azure/architecture/reference-architectures/managed-web-app/multi-region-web-app
ドキュメント
キー/バリュー
グラフ
SQL (DocumentDB)
MongoDB
Azure Table Storage
Gremlin グラフ
マルチ API
マルチモデル
インデックス自動作成
スキーマ中立
SELECT f.id, f.address.cityFROM Families f ORDER BY f.address.city
デモ:Azure Cosmos DBMongoDB API
Azure Cosmos DB:
Graph API
グローバル分散、伸縮性のあるスケーラビリティ、低レイテンシ、自動インデックス作成サービス
独立してスケール可能なグラフ エンジン
(Tinkerpop フレームワークを使用)
Gremlin、SQL クエリ言語
Azure Cosmos DB:
Table API
Azure Storage:
Standard Table APIAzure Storage SDK
100% 後方互換、シームレスなエクスプレス
Azure Storage SDK
Azure Cosmos DB:
Table API
近日対応予定: Standard Table のアップデート (ストレージ最適化)、シームレスな移行
01
Strong
Bounded
Staleness
Session
Consistent
Prefix
Eventual
アプリ
パフォーマンス高可用性
Navigating CAP theorem
Consistent data worldwide
Strong Bounded-stateless Session Consistent prefix Eventual
99パーセンタイルの
レイテンシ SLA
スループット SLA 整合性 SLA
可用性 SLA
2
4
3
1
業界最高の包括的な 99.99% SLA
高可用性
レイテンシ
スループット
データ整合性
4 つの側面の包括的な SLA を備えた唯一のデータベース
Microsoft Azure
グローバル分散 マルチ モデル/API ミリ秒レイテンシの保証
伸縮性のあるスケールアウト 明確に定義された
整合性
包括的な SLA
Azure Cosmos DB
トヨタ
多様で予測不可能な IoT センサーのワークロード応答性の高いデータ プラットフォームが必要
• 自動車のリアルタイム診断
• 伸縮性のあるスケーリング
• 送信、クエリのパフォーマンス
IoT
グローバル分散
伸縮性のあるスケールアウト
保証された低レイテンシ
包括的な
SLA
Azure Cosmos DBキー/バリュー
カラムファミリー
グラフドキュメント
グローバル分散、マルチモデルのデータベースサービス
さらに追加予定…
SQL
5 つの整合性モデル
マイクロソフトのデータプラットフォーム環境に依存しない、同一の開発・利用環境をオンプレミス・クラウドで提供
クラウド
オンプレミス環境
ハイブリッド
SQL Server{}
R
Python
C/C++
C#/VB.NET
PHP
Node.js
Ruby
Top Related