azure webiner: より安定したwebサイト構築のためのazure paas サービス群
TRANSCRIPT
#azurejp#azurejp
https://www.facebook.com/dahatake/https://twitter.com/dahatake/https://github.com/dahatake/https://daiyuhatakeyama.wordpress.com/
#azurejp
1
2
3
4
5
6
7
8
9
10
11
0 2 4 6 8 10 12 14 16 18 20 2222
33
44
566
820
時間(年)
驚異的に短縮
スマ
ート
フォ
ン
$499$10
2007
2015
単価
ドロ
ーン $100,000
$7002007
2013
単価
3D プ
リン
ター
$40,000$100
2007
2014
同程度の機能を実現する機器の単価
DNA
検査 $2.7BN
$10M$1,000
2000
2007
一回あたりの検査費用
2014
テクノロジーの製造コスト ビジネスが 10 億ドル規模に拡大するまでに要する時間
Source: World Economic Forum
4
#azurejp
+ Agileこれまで通りの
開発・運用スタイルに加えてAgile / DevOps もサポートしたい !
OpennessWindows でも Linux でも
アプリケーションが動けばよい !
Stable運用管理はセキュリティ・
コンプライアンスもよしなにやって
#azurejp
レアル マドリードは、スポーツ界随一のプロ スポーツ チーム(Forbes 、 2013 年および 2014 年 )
… しかし、デジタル プレゼンスは極めて限定的で、成長の余地がありました。
2015 年初頭、デジタルによる変革を進めていくため、 Microsoft とテクノロジ パートナーシップ契約を締結しました
収入源 ( 出典 : Deloitte)
チケットと会
費25%
その他13%
TV 放映権30%
マーケティングと
スポンサー25%
#azurejp
店舗での 購入
試合の観戦者がアプリを使用し
てソフト ドリンク
を購入アプリのダウンロードプロフィールの更新
チケットの購入レアル マドリードの ID
レアル マドリードのファン、スマートフォン アプリのユーザー
Adidas が好き。スポーツウェアのズボン
を愛用
Facebook ユーザー ID
2015 年 9 月 10 日にスタジアムに行く予定
コカコーラが好き 2015 年 9 月 10 日に観戦
Cristiano Ronaldo が好き
Ronaldo が RM を退団することを心配している
Facebook への登録
ソーシャル センチメント
#azurejp
#azurejp#azurejp
Fan Engagement Extended Video Consumer Apps Telemetry and Data Analysis
マーケティングのバックオフィスエンジンの仕組みを提供
ファン個々の反応を収集、記録モバイルを使ったスタジ
アムへのチェックイン履歴
クラブのサイトにおけるオンラインプロファイル
購買履歴など
Dynamics CRM OnlineDynamics MarketingOffice 365/Power BIAzureAzure を活用してソーシャル情報を収集統合して分析する基盤がファンとのつながりに効果を発揮
最新と過去の試合のビデオを視聴できる仕組みを提供
ファン個々へのビデオ配信個人の要件にあったフィ
ルタによる検索特定ゲームの得点シーン
だけを表示など
Azure Media ServicesAzure Search
メディア配信履歴からどんな人がファンで、どの地域でよく見られ、どんな期待があるかを理解しやすくなった
マルチデバイスで利用できる App を提供(モバイル、タブレット、ウェアラブル等)どこでも体験できる環境の
実現試合前、中、後いつでも
アクセスして状況確認過去を含む選手データ確認
特定ゲームから詳細の分析をファンができるように など
Azure AD B2C Identity Services (Preview)
Facebook 等のソーシャルアカウントを使ってシームレスにログイン。 Azure AD でコード開発費低減
ファンとのつながりを強固にするための分析環境
ファン個々の動きを可視化モバイルアプリでどのような行動を取っているかの収集
どの経路でアプリを活用しているかを分析 など
Visual Studio Application Insight (Preview)
Power BI
コード開発時の設定一つでコードの追加なく、ファンがどこから来て、どんな行動をとったかを分析可能に
#azurejp
#azurejpCloud を活用した Contents Platform
Core Web Platform安定したインフラ
多様なデータ。 AI と機械学習何か違う
Big Data と CRMユーザーを理解する
#azurejpIaaS を本番環境で使う上の必須知識…
障害ドメイン
Blob ストレージの単一ファイルのスループット
ディスクキャッシュ
ロードバランサーIP Address 管理
可用性セット
バックアップ・リストア監視項目と閾値。そのアクション
セキュリティ監視用の別サーバー
アプリケーションのインストール
インストール用アプリケーションのリポジトリ設定済みで
運用されているため、「殆ど」考慮する必要がない
#azurejpIaaS と PaaS は サイジング の概念が違う• パフォーマンスと容量。そしてオンデマンドで変えられる
IaaSハードウェア リソース
PaaS処理量 : トランザクション、容
量DTU – SQL Databaseコア数、メモリ、ディスク
QPS – Azure Search
#azurejp
Big Data と CRM
多様なデータと AI
Core Web Platform
Contents Platform の主要サービス群
Customer
CDN Web App
SQL Database
Functions
Redis Cache
Application Insight
SQL Data WarehouseHDInsight Data lake
Power BI
ショッピングカート
カタログ、レビュー
購買
Web キャッシュ
RDB キャッシュ
イベントドリブン /
サーバーレス
Big Data as a Service DHW as a Service
CRM
ERP
Streaming + AI
全文検索
アプリの状態
EventHubs Stream Analytics
Big Data as a Service
Cognitive
ML Search MediaDocument DB
TableBot
#azurejpAzure App Service ~ 5 つの主要サービス
Web アプリ
ビジネスに合わせてスケールする Web アプリ
Mobile アプリ
あらゆるデバイス向けのモバイル アプリを構築
Logic アプリ
SaaS とオンプレミスにわたるビジネスプロセスを自動化
API アプリ
クラウドで簡単にAPI を構築、利用
Functions
サーバーレスアーキテクチャコードによるイベント処理
#azurejp
開発環境• NET, PHP, Python,
Node, Java, Framework インストラー
• リモートデバッグ• DevOps• ステージングデプロイのた
めのサイトスロット• サイトエクステンションギャラリー
• ブラウザーベースのエディタ
• Kudu• など
Web Apps
Mobile Apps API Apps Functions
フルマネージ• スケールアップ、スケール
アウト• オートスケール• WW のデーターセンター• OS と Framework• ロードバランサー• モニタリング&アラート• Web ジョブ (WebJobs)• など
Enterprise• Enterprise グレードの
SLA• セキュリティとコンプライ
アンス• ロールベースアクセスコン
トロール• バックアップスケジュール• カスタムドメイン、 SSL証明書
• Azure Active Directory 統合
• オンプレミス統合 VNET 統合 /ハイブリッド接続
• App Service Environment
• など
Logic Apps
多くの機能を搭載
#azurejp
クラウドネイティブな database as a service高可用性、耐障害性世界中に簡単にスケールインメモリー カラムストアSQL Server 互換透過的データ暗号化 (TDE)フルテキスト サーチ
Elastic Database Pool
SQL DBSQL DB
SQL Database
#azurejpAzure SQL Database の構成
読み取りは Primary のみで完了書き込みは Secondary への伝播を確認してから完了
論理データベース
Write
Write Ack
Ack
Readvalue writeAck
ミッション クリティカルを支える機能
99.99% の可用性障害の検知 フェールオーバー 新しいレプリカの作成 データの同期 一貫性の確保
#azurejpAzure Redis Cache• メモリの KVS
• 複雑なデータ構造(文字列、バイナリデータ、リスト、集合、ハッシュなどを)を保存
• データをディスクに定期的に保存• トランザクション、クラスタリング• 様々な言語に対応したクライアントライブラリ
• .NET – StackExchange• Java – Jedis• PHP – Predis• Python – redis.py• http://redis.io/clients
#azurejpアプリケーションパターン• DB へのコールをキャッシュ
性能改善とスケーラビリティ Redis の STRING データ型を使ってステートメントの結果を保持
• DB へのコールを避ける ユーザーセッション、ショッピングカート、カウンター、ランキング
等、 RDBMS で保持する必要がない情報 Redis の STRING やハッシュを利用する場合 Azure
Redis CacheRedis プロトコルJava .NET
…
TDSAzure
SQL DB
#azurejpAzure CDN = マルチ CDN• 地球規模のスケール、高パフォーマンス、高セキュリティ• キャパシティ管理の簡素化とコスト削減• One-Stop サービス
• A
• Akamai と Verizon
• 分析用ツール、 API と開発者ツール• Pop の場所
• https://azure.microsoft.com/en-us/documentation/articles/cdn-pop-locations/
#azurejpAzure Search とは ?• クラウドで提供するフルマネージド全文検索サービス
• Web およびモバイルアプリケーション向けの強力な検索機能を短時間で容易に構築することができる• 検索・管理機能は REST API もしくは管理ポータルで操作可能。
API は HTTP プロトコルでシンプルな JSON フォーマット。
• フルマネージドサービスで運用管理の複雑さを軽減• インデックスサイズ、検索処理能力( QPS )ともに容易にスケール可
• 充実したテキスト解析、ランキング調整機能• Apache Lucene言語解析アナライザに加え
マイクロソフト独自アナライザを利用可能
• 他 Azure サービスと連携することで完全マネージドなリッチ検索エクスペリエンスを容易に導入可能
“Simplify the Search Experience”
#azurejp1. 検索速度• とにかく爆速。データ量が多くなっても速い。
転置インデックス : トークンからドキュメントを引き当てるデータ構造
テキスト解析
インデクシング
Doc#
ドキュメント内容
1 Microsoft is introducing SQL Server
2 Windows Server on Azure
3 Microsoft is introducing Azure
4 Application programming on Microsoft Azure
単語(トークン)
含まれるドキュメント
microsoft 1, 3, 4
introducing 1, 3
sql 1
server 1, 2
Windows 2
azure 2, 3, 4
application 4
programming 4
#azurejp2. 検索結果の適合率• 適合率が高い≒精度が高い、キーワードに適したものがヒット
「キング」 ⇒ 「バーガーキング」 「ライオンキング」 「 Azure でのセキュアネットワーキング」
「京都」⇒ 「東京都庁」 「京都観光」
「ダイアモンド」 ⇒「ダイヤモンド」もヒット
• 語幹変化• 見出し語変化• 同義語展開• 正規化• ストップワード除去
• アンチフレージング
• スペルチェック• クエリサジェス
ト• ファセット
検索精度向上のための主要技術・ソリューション• N-gram• 形態素解析
#azurejp3. 検索結果の並び順• ORDER BY ではなく関連性(ランキング)によるソート
• クエリとドキュメントの関連性を評価して結果を並べる
• データベースの ORDER BY句による結果ソートとは全く異なる評価手法
#azurejp2種類のインジェスト方式
Document DB
Blob Storage
Microsoft Azure
SQL Database
Table Storage
オンプレ
Azure Search
PULL( インデク
サ )
PUSH (API)
Pull方式 : インデクサの利用• 4種類のデータソース• 定期的実行(最小 5 分)• 差分更新• マスタ DB としての利用• 全件再インデクシングはここから
Push方式 : API で直接更新• アップロード 、マージ、削除など• 1 度のバッチ : 最大 1,000 ド
キュメント• リアルタイム に近い データ 更新
インジェストする人
• クローラー• バッチ• カスタム
ツール
#azurejp
付加価値を提供する多くのパートナーソリューション
Streaming /CDN
コンテンツ保護
Processing取り込みと保管
メディア 配信の コア 機能を
API として提供
Azure Media Services
PlayerAnalytics
#azurejpAzure Media analyticsSpeech-to-text話しているテキストを抽出現在、 8言語対応
Face & Emotion detection顔のカウントおよび性別・年齢・感情の判定
Hyperlapseスタビライザーとタイムラプス
Video summarizationハイライトシーンによるサマリービデオの自動作成
Motion detection動きのあった箇所の検知
Object Character Recognition (OCR)ビデオ内の画像から、テキストを抽出
開発中Content moderation, face/object obfuscation, action tagging, and more450 6th St.
San Francisco
#azurejp新たな価値を生む、ワークフロー• 生徒たちが均等に映っているか ?
Face Detector
Media Encoder Standar
d
Cognitive
Services
Media Encoder Standar
d
AVCHD MP4 仮 ID と映っている時
間
仮 ID と画像
元の顔画像
誰が何回映っている
か ?
エンコード 顔認識
サムネイル作
成顔一致
ネットワーク越しのファイルコピーを最小化 !
#azurejpAzure DocumentDB• フル マネージドの NoSQL ドキュメント データベース サービス• スキーマレスなデータ• JavaScript サポート、 JSON に対する SQL クエリ、
トランザクション
信頼性、パフォーマンス
高速で安定したパフォーマンス
構成可能な整合性レベル
エラスティックなスケーリング
セカンダリ インデックスなしで JSON をクエリ
ネイティブ JavaScript トランザクション処理
SQL ベースのクエリ言語
REST 、 JSON 、 JavaScript簡単、フル マネージド
エンタープライズ対応の Azure
JSON に対する高度なクエリ、トランザクション
開発
#azurejpJSON ドキュメント{
“locations”:[
{“country”: “Germany”, “city”: “Berlin”},
{“country”: “France”, “city”: “Paris”},
],“headquarter”: “Belgium”,“exports”:[{“city”; “Moscow”},{“city:
”Athens”}]};
JSON document as tree
Locations Headquarter
Belgium
Country City Country City
Germany Berlin France Paris
Exports
CityCity
Moscow Athens
0 10 1
#azurejp
DocumentDB
REST overHTTPS/TCP
MongoDBプロトコル
MongoDB ドライバー
Java .NET
Java .NETRuby…
MongoDB プロトコル サポート ( プレビュー )• MognoDB の各言語向け公式ドライバーをサポート• MongoDB の既存のアプリ、ツールの活用
#azurejpPower BI Dashboard~ Microsoft Azure 上で提供される SaaS 型 BI サービス~
• Azure AD の組織アカウントもしくは Office 365 のアカウントが必要
• オーサリングツール• Power BI Designer• Excel
#azurejpあらゆるデータの可視化を
Web browser
HTML
Microsoft cloud
Power BI
Partner apps
Office 365
Dynamics
Azure data services
Microsoft cloud
Non Microsoft cloud software systems(e.g., SaaS applications, IOT scenarios, and data streams)
Non-Microsoft cloud
On-premises data
SQL Server analysis services
Databases andother data sources
Mobile apps
iOS
Power BI Designer
Business analyst tools
#azurejpPower BI の主要な構成要素• データセット
• 分析対象となるデータ
• レポート• データセットのデータを様々な
視覚エフェクトで表現• 1つのデータセットから作成• Power BI Service の他に
Power BI Desktop や Excel の Power View により作成可能
• ダッシュボード• 異なるレポート / データセット
の複数のタイル ( 視覚エフェクト ) で構成
• 共有すると、タイルの元であるレポートへのアクセスも可能
Q&A 検索ボックス
タイル
タイル
タイル
タイル
#azurejpWeb / EC サイト構築・運用に適した Microsoft Azure• 直ぐに小さく始めて、グローバルスケールまでが容易な
PaaS• そのまま動く• 安定したインフラ• スピード感 !
• 豊富なサービス群とパートナーアプリケーション• 後でサービス追加が容易• 検索エンジン / 動画配信
• AI/ 機械学習にも着手できる• 差別化
#azurejp自分の目と手で試しましょう !ビデオで過去のウェブセミナーを視聴する
▶▶▶ http://aka.ms/dx-ondemand
セミナー・ウェブセミナーに参加する
▶▶▶ https://aka.ms/azjp-events
Azure の活用を電話で相談する
▶▶▶
0120-952-593または
お問い合わせフォーム https://aka.ms/adj
相談会に行く ▶▶▶ https://aka.ms/azjp-sodan-desk
#azurejp
© 2016 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.