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