More Related Content Similar to これまでのアーキテクチャの変遷と今後の技術戦略 (20) More from Kazuyuki Nomura (9) これまでのアーキテクチャの変遷と今後の技術戦略2. Microsoft Architect Forum 2013
アーキテクチャの再注目
成熟社会
要求の多様化
要素技術の高度化、複雑化と選択肢の多様化
陳腐化していく資産の維持管理
リアルタイム性
人間の思考スピードが基準
人、もの、金、情報の経営資源のスピードの制約
H/W の進歩
ただ既存アプリをクラウドに載せただけとは違うアーキテク
チャをめざして
3. Microsoft Architect Forum 2013
アーキテクチャをめぐる 10 メガトレンド
H/W の進化と仮想化
アーキテクチャ設計
3ティアアーキテクチャの進化: Shared Nothing, DSM
Elasticity
Resiliency
データ統合
Client 技術
論理、物理設計
開発の競争優位性
4. H/W の進化と仮想化
CPU, GPGPU
Cache, Pipeline, Pre-
fetch, SIMD
FPGA
ストレージ
SSD とフラッシュ
In-memory
Network
SDN(router, firewall,
load balancer)
Open Compute
Disaggregated Rack
5. 3ティアアーキテクチャの進化
分散システム + トランザク
ション処理(1980~)
データ指向トランザクション
実行制御(2010~)
一貫性モデル(時間的、空間
的な強弱調整)
ファーストティアでの(時間
的), 例 weak consistency
Shared Nothingの同期点(空
間的), 例 BSP
User-centric と data-centric
トランザクションデータと非
構造化データの重要化
ロードバランサ
Web サーバ ビジネスロジック
RDB サーバ
デバイスへサービス データサービス
7. DSM: Distributed Shared Memory
Region にまたがったスト
レージ上に
各 region に隔離ドメイン
が存在
Multi-tenant ストレージ
ストレージはアプリケー
ションスキーマを定義
マルチデータモデル
サイロデータモデル共通化
スキーマエボリューション
ICF に発展
アプリケーション アプリケーション アプリケーション
…
Web/
ロジック層
RDB
クラウド
オブジェクトストア データ層
分散キャッシュ
アクセス層
分散キャッシュ
アクセス層
分散キャッシュ
アクセス層
r
分散キャ
ッシュ
サービス
キャッシュ層
プロセス指向
アプリケーション
データ形式(非正規化)
データ中心
マスター データ
管理 (正規化)
非同期書き込み 各種データ モデル...
分散キャ
ッシュ
サービス
分散キャ
ッシュ
サービス
RDB
RDB
8. Elasticity
Scale-out と scale-up
Workload 毎の仮想化によ
る構成定義
Adaptive なルール駆動
Auto-scaling
Workload 予見
ResilientResilient
9. Resiliency
H/W 障害をソフトウェアで保証
冗長化、multi AZ
Failover クラスター、再構成
Design for Failure
“How complex systems fail” – SPOF
対策では不十分
障害モデルによるアルゴリズムの選択
対称と非対称
一貫性モデルは Eventual や Causal
consistency, Linearizability など
分散合意プロトコル(クォーラム)、有
効期限付きトークン(リース)
Elastic なバックエンドサーバは DHT
クライアント
サーバプール(scale out)
合意プロトコル
(cluster)
リース
複製(パーティション毎)
クォーラム(読み取り、書き込み)
AP
CP
DHT やプロセスグループ
インメモリ
一貫性モデル
10. データ統合
ICF: Information Capability Framework
MDM と SOA
データ統合パターン、共有
必ずしも統一だけではない
Capability モデル
リソースプール
メタデータ駆動
データ分析プロセス
その他の Verb
非機能要求はデータアーキテ
クチャ内で実現
Shared Nothing
Locality, Co-location
サイロ
リソー
ス
サイロ
リソー
ス
サイロ
リソー
ス
サイロ
リソー
ス
統合、共有、プール化
Capability 化
Elasticity
メタ
verb
メタ
verb
メタ
verb
メタ
verb
メタ
verb
ワークロード
ワークロード
11. Client 技術
Web vs. Native アプリ
Rich client/Thin server
Latency が売上に直結
Web
WebSocket, HTTP/2.0
HTML5, JavaScript
Native アプリ
コード生成
オフライン、課金、発見性
Resilient
12. 論理、物理設計
SLA, QoS, Latency
CAP 定理の C と A の調整
Tunable 一貫性モデル
Elasticity, Resiliency
DevOps による PDCA
Data-driven, 分析プロセス
データモデル選択
データ設計(カラムファミリ,
Partition など)
明示、暗黙スキーマ適用
ResilientResilientResilientResilient
SELECT name, salary*.19 AS tax
FROM employee
WHERE age > 25
age name salary
tax
selection
vector
25
0.19
SCAN
PROJECT
SELECT
tuple 毎
の繰り返し
14. まとめ
アーキテクチャの重要性
10 メガトレンド
Microsoft が提供する
「ひと」中心のコンピュー
ティング
エンタープライズとコン
シューマ
Devices & Services
15. Microsoft Architect Forum 2013
Resources
Gartner: “3層アプリケーションの概念を脱する時が来た”, 2013
"HadoopDB: An Architectural Hybrid of MapReduce and DBMS
Technologies for Analytical Workloads”, 2009
“Design for Failure”, http://broadcast.oreilly.com/2011/04/the-aws-
outage-the-clouds-shining-moment.html
“CAP Twelve Years Later: How the "Rules" Have Changed”,
http://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-
have-changed
"Warehouse-Scale Computing: Entering the Teenage Decade", 2011
“分散システムの概念とアーキテクチャー(仮称)”, 近日出版