Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
HPIntegrity NonStop サーバーって
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
H/WとS/W
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
NonStopSQL/MX
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
HPNonStop SQL/MX はなぜグローバ
ルに分散DBを構築できるのか
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without n...
Upcoming SlideShare
Loading in …5
×

[db tech showcase Sapporo 2015] A22:HP NonStop SQLはなぜグローバルに分散DBを構築できるのか、 データの整合性を保てるのか by 日本ヒューレット・パッカード株式会社 後藤宏

750 views

Published on

NonStop SQLはなぜグローバルに分散DBを構築できるのか、データの整合性を保てるのか、その深層に迫る。ニューヨーク、ロンドン、東京と世界を舞台に活躍する企業の心臓を支えるRDBMS。なぜ、地球規模で同期の取れるデータをいとも簡単に作れるのか、機械は壊れるもの、でもデータを一件たりとも失わない、トランザクションを死守する真のデータインテグリティを実現する実装、その神秘に大阪に引き続き、東京でも迫ります。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

[db tech showcase Sapporo 2015] A22:HP NonStop SQLはなぜグローバルに分散DBを構築できるのか、 データの整合性を保てるのか by 日本ヒューレット・パッカード株式会社 後藤宏

  1. 1. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HPNonStopSQL/MXはなぜグローバルに 分散DBを構築できるのか、データの整合 性を保てるのか 2015年 9月11日 日本ヒューレット・パッカード株式会社 プリセールス統括本部 サーバー技術本部 後藤 宏
  2. 2. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.2 自己紹介 Jim Gray を見て、これだ、と感じてはや24年。よもやこんなにデータベースにかか わるとは思いもせず。以前は皆さんと同じどんな障害にも立ち向かうぞと徹夜もい とわずでしたが、今やコンピューターシステムを信頼し、「ひと」ではなく「もの」に頑 張ってもらい、もっとクリエイティブな仕事をしようとしつこく「標準化」を唱える。 1986年 非常勤講師 (統計学など) 1990年 日本ディジタルイクイップメント入社 DEC Rdb (現Oracle Rdb) 支援 1992年 ISV 技術支援 (Oracle, Informix, Sybase) 2005年 IPA OSS実証プロジェクト参加 2010年 「国境なき医師団 (Medecins Sans Frontieres=MSF)」へITでボランティア
  3. 3. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.3 Hewlett-Packard Enterprise HP Inc. HP は業界をリードする, 2つの新会社に 日本は一足早く 8月1日に分社 Source: (1) Based on publicly reported last 12 months from Q4 fiscal 2013 to Q3 fiscal 2014 revenue and OP after allocating Corp. Unallocated costs; (2) CQ2’14 IDC WW Quarterly Server Tracker (3) CQ2’14 Dell ‘Oro WW Tracker (4) CQ4’13 IDC WW IT Services Tracker (5) CQ2’14 IDC WW External Disk Tracker; (6) CQ2’14 IDC WW PC Tracker(7) CQ2’14 IDC WW HCP Tracker (8) Forrester – Forrester Wave November 2013 フォーチュン 50 規模の企業 ~$580億 (売上⾼1) ~$60億 (営業利益1) #1 サーバー2 #2 ネットワーキング3 #2 サービス4 #4 ストレージ5 フォーチュン 50規模の企業 ~$570億(売上⾼1) ~$50億(営業利益1) #1 企業向けPCs6 #2 個⼈向けPCs6 #1 インクジェット プ リンター 7 #1 レーザジェット プリンター 7プライベートクラウドをリード 8
  4. 4. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.4
  5. 5. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.5
  6. 6. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.6 垂直統合型無停止データベースプラットフォーム HP NonStop SQLをご存知ですか? 4 3 2 止まらないDBサーバー スケールアウト可能なDBサーバー 導入コスト・運用コストが削減可能 他データベースからの移行も容易に 1台のHP NonStop サーバーで他では実現できないレベルの可用性を提供 HW増設により直線的に性能増加が可能、ボトルネックのない並列構成 プラットフォーム費用、保守費用、運用ランニングコストすべて削減できます 他データベースと高い互換性を実現、移行ツールにより工数削減も可能 1
  7. 7. HPIntegrity NonStop サーバーって
  8. 8. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.8 外観
  9. 9. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.9 HP Integrity NonStop X システム概要図 10Gb Ethernet SASディスク (HDD, SSD) ディスクI/O コントローラ (Storage CLIM) ディスクI/O コントローラ (Storage CLIM) ディスク サブシステム ディスク サブシステム Ethernet サブシステム Ethernet サブシステム LANコントローラ (IP CLIM) メインCPU モジュール メインCPU モジュール XP7 (HDD, SSD) InfiniBand FDR LANコントローラ (IP CLIM) C7000エンクロージャに ハーフハイトブレード 最大16台を搭載 C7000 エンクロージャ 背面に2台搭載 Bonding & Fail over pair構成 4柔化された ディスクI/Oパス 標準構成で単一障害点の無い冗長構成を提供 * 本情報はリリース前の内容を含みます。掲載の情報は予告なく変更されることがあります。
  10. 10. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.10 ワールドワイドでのお客様ご利用状況 HP NonStop SQLによるミッションクリティカルOLTPシステム 金融サービス 通信・メディア 流通・製造 サービス ヘルスケア 政府・公共機関 – ペイメントシステム クレジット、デビット、 POS、資金決済 – 為替取引、証券取引 – 全世界の ATM トラン ザクションの 70% を 処理 – 全世界のクレジット カードトランザクショ ンの 2/3 を処理 – HLR (Home Location Register) – インテリジェント・ネット ワーク、第3世代サービス メッセージング – 世界最大の ISP にお けるメッセージングシ ステム – HLR ソリューションで 管理されている端末 は3億以上 – 世界最大規模の自 動車メーカにおける 生産管理システム – 世界規模の旅行予 約システム – 生産管理、製造制御 – 受発注、チケット予約 – EDI、データ集配信 – 電子患者記録 – 国防関連 – 警察、消防の緊急指 示システム – 多くの世界最大級の 大学付属病院を含む、 200以上の病院 – 国家安全保障
  11. 11. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.11 基幹データベースに求められる機能 「高性能」・「拡張性」 • 検索・更新のバランスの取れた 高速性が必要 • データ量、アクセス処理量の 増加に柔軟に対応できる 拡張性が求められる 「データ整合性の保証」 • HWのみに依存しない万全の データ保全機能が必須 • トランザクション整合性が必須 この相反する要求をバランス良く満たすデータベース技術が求められているこの相反する要求をバランス良く満たすデータベース技術が求められている
  12. 12. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.12 Based on the IDC classifications of availability, HP NonStop is AL4 1. 無停止) 最高レベルの可用性を提供 Availability Level Characterization Impact of Component Failure System Protection Factor Availability level 4 (AL4) Fault-tolerant server Switch to alternate resources is not perceptible to end users 100% component and functional Availability level 3 (AL3) Clustered server Short outage is needed for failover to take place User workload fails over to alternate Availability level 2 (AL2) Workload balancing Balancing may not be perceptible to end users because of retry User request is redirected to alternate resources Availability level 1 (AL1) Not shipped as highly available Need to switch to redundant resources before processing resumes No special protection for availability Source: IDC, Sept. 2012 , Doc #236946 Worldwide and U.S. High-Availability Server 2012-2016 Forecast and Analysi http://www.gii.co.jp/report/id205877-worldwide-us-high-availability-server-2011-2015.htmls HP NonStop サーバーは、 IBM MF sysplexと並び AL4 (FT サーバー) 注:最新版は Worldwide and U.S. High-Availability Server 2014-2018 Forecast and Analysis IDC Availability Spectrum
  13. 13. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.13 性能の拡張性 • コンポーネントを横に並べ、並列処理により高速性と拡張性を確保する実 装が広く採用されている • 特に疎結合型アーキテクチャは直線的な拡張性を提供できることが実証さ れている • ただし、一般的には参照系データベースに適用される技術である  疎結合分散コンポーネント間でのトランザクション整合性保証を 実装しつつ、高性能・拡張性を確保するのは困難である プロセッサ OS DB プロセッサ OS プロセッサ OS DB プロセッサ OS DB インターコネクト DB 古くて新しい課題、 • SMPか、MPPか • 高いか、安いか • 信頼性の確保は
  14. 14. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.14 マスターノードの不要:真のMPP構成 HP Vertica = Shared Nothing MPP マスターノードがあるMPP →多数の同時処理に弱い→多数の同時処理にも強い Clients Clients Clients Clients 超並列機能(MPP)でデータ及び処理の分散を行 えるため、リニアな拡張性を持ちます。また、マス ターノードが無いため、特定ノードがボトルネック とならない強みがあります。 Node#1 CPU Memory Node#2 CPU Memory Node#3 CPU Memory Node#N CPU Memory Node#1 CPU Memory Node#2 CPU Memory Node#3 CPU Memory Node#N CPU Memory Master Node ClientsClientsClients マスターノードの冗 長化が必要、またパ フォーマンスボトル ネックになります。 HP Vertica の例
  15. 15. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.15 プロセス間のメッセージ通信機能を提供 NonStop OSのメッセージシステム マイクロカーネル システムライブラリー Monitor MemMan 各種制御テーブル Disk Process DISK CPU #0 APPL マイクロカーネル システムライブラリー Monitor MemMan 各種制御テーブル CPU #1 APPL マイクロカーネル システムライブラリー Monitor MemMan 各種制御テーブル Disk Process DISK CPU #2 APPL マイクロカーネル システムライブラリー Monitor MemMan 各種制御テーブル CPU #3 APPL APPL Tape Process WAN Process SWAN • 位置の透過性(CPU内、CPU間、 ノード間を意識せず通信可能) – アプリケーションは稼動する CPUを選ばない • DISKやTPAEやWAN回線などのデ バイス名はプロセス名と同一に なっており、デバイス利用も通常 のプロセス間通信と同じI/Fで可 能 • 図は内部構造を示しており、特 殊なコーディングは不要 – SQL文やsocket APIを使用する と、内部的に上図のような動 作となる • この機能があるためにCPU増設 によって容易に処理分散が可能 となる
  16. 16. H/WとS/W
  17. 17. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.17 シングルシステム として稼動 H/WとS/Wの両面で無停止機能を実現している唯一のサーバーです! AL4を実現するNonStopサーバーにおけるFT性と無停止運用とは Storage LAN ServerNet POWE RPOWER POWER POWER POWER FAN FAN FAN FAN FAN FAN FAN FAN FAN FAN FAN ALERM ALERM Storage Network Network クラスター不要!全てのH/Wを多重化、又は2重化して おり、電源を入れるだけで無停止サーバーとして稼動 HP NonStop サーバー OS OS OS OS POWER プロセスペア技術 OSに組みこまれた無停止 機能でプロセスも2重化 CPU モジュール Backup Primary Primary Backup Primary Backup Primary Primary Backup Primary Proc. A Proc. B 障害 障害 BackupからPrimaryに昇 格し処理を継続 (Takeover) CPU モジュール CPU モジュール CPU モジュール CPU モジュール CPU モジュール CPU モジュール ある一定間隔(チェックポイント 毎)でPrimary側のメモリー内容と 実行箇所の情報が同期される InfiniBand MEM Core MEM CoreCore CoreCore Core Core Core IB IB CPU モジュール CPU モジュール MEM CoreCoreCore Core IB CPU モジュール MEM CoreCoreCore Core IB CPU モジュール 多重化されたCPU モジュール
  18. 18. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.18 1 CPU Blade = 論理 1 CPUとして稼働、複数CPUで1つのシステムが構成される CPU Blade NonStop Blade CPU HW仕様 • Intel® Itanium® Processor 9500 Series (quad-core 1.60-1.73 GHz/20MB L3 cache) • 16, 24, 32, 48, 64GBメモリをサポート • PCI-X ServerNet I/Fカード(メザニン)搭載 Multi-coreでの動作環境 • 4つのコアでメモリを共有 – コア専用エリア 128KB • 4つのコアで並列に4つのプロセスの処理を実施 – core 0がインタラプト処理を実施 – すべてのcoreがI/O処理を実施可能 CPU 0 X-fabric Y-fabric core 0 core 1 core 2 core 3 Memory ServerNet Interface
  19. 19. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.19 SASとFCのHBAを搭載可能なストレージコントローラー Storage CLIM 2枚分のHBAスロット (SAS もしくはFCのI/F) 3 X4 3 X4 3 X8 4 X8 4 X16 4 133 5 X8 5 133 PCIe MHz MHz PCIe PCIe PCI-X 2 X4PCIe PCIe 1 X4 UID 2 1 iLO2 背面 前面 -NBシリーズ標準のストレージコントローラー -標準ではSASのHBA(ホストバスアダプター)が1枚 2ポート分が搭載されている -予備のスロットが1枚分あり、そこにはSASかFCの HBAをオプションで追加することが可能 -標準では2つのStorage CLIMと2つのDISK Enclosure で高可用な構成を推奨 (2C2D) -TAPE装置や、P9500をNonStopに接続する場合は、 FCのHBAを搭載し、そこからFibreで接続をする 空き SASStorage CLIM 空き SAS DISK -P -M 2C2D構成 SAS SAS -P -M 2C4D構成 SAS SAS -P -M SAS SAS -P -M FC 空き Tape Storage CLIM TAPEを接続する場合
  20. 20. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.20 HP NonStop SQLの実装: オーバーヘッドを限界まで削減 1. CPU間通信にHWベースの高速通信機能を採用 − InfiniBand FDR • HP ServerNet™のASIC実装を継承 • チェックサムによるデータ保護機能を内蔵 • ネットワーク型接続によりブレード数に応じた通信帯域を提供 • TCP/IP通信と比較し80%以上CPU負荷を低減 ※1 ※1 … メッセージ長4KB、弊社社内性能試験結果より
  21. 21. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.21 2) ソフトウェアに組み込まれた無停止機能 NonStop Server 無停止実現のアーキテクチャー プロセスペア技術による 基本ソフトウェアの無停止化 • フェイルオーバー(再起動)ではなく、テイク オーバー(処理継続)がコンセプト • NonStop OS や、基幹ミドルウェアは、すべ てプロセスペアにて実装 • 2CPUに、2プロセスがペアとして存在する • 実稼動するのは、Primaryプロセスのみ • Backupプロセスは継続に必要となる情報を Primaryプロセスから定期的に受信 • 論理的には、1プロセスとして扱える • Primaryプロセスの異常終了や、CPUダウン が起きると、自動的にBackupがPrimaryに 昇格して、ダウン直前の状態から処理を継 続実行する • データの整合性もトランザクション保護製品 により、自動的に一貫性を保持 CPU 0 CPU 1 CPU 2 CPU 3 PrimaryBackup Primary Backup Primary Backup PrimaryBackup Primary Backup CPU 0 CPU 1 CPU 2 CPU 3 Primary Primary Primary PrimaryBackup Primary Backup CPU 障害
  22. 22. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.22 疎結合アーキテクチャと高拡張性 MEM Core MEM Core MEM Core MEM Core MEM Core MEM CoreCore Core Core Core Core CoreCore Core Core Core Core Core Core Core Core Core Core Core IB IB IB IB IB IB 処理 性能 (TPS) CPU モジュール Add-on Add-on CPUモジュールの追加 HW性能を最大限活かすために設計されたメモリー を共有しない疎結合アーキテクチャーにより直線 的な性能向上が得られる 1台のNonStopサーバーでシングルアプリケーショ ンでCPUモジュールを最大4080枚まで拡張可能 • CPUモジュールは16枚ごとにシステムディスクが定 義され、ノードという単位で管理 プロセス間のメッセージ通信によりOSバウンダリ を意識せずDBやアプリを構築可能 全てのHWはサービスを止めることなくオンライン で増設が可能 CPUモジュールが最大4080 枚まで拡張が可能! ・・・・ ・・・・ 4CPU モジュール 6CPU モジュール CPU モジュール CPU モジュール CPU モジュール CPU モジュール CPU モジュール …
  23. 23. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.23 他のDB プロセッサ OS DB プロセッサ OS DB プロセッサ OS DB プロセッサ OS DB ServerNet <あるUser Groupの調査結果> • ユーザーの 90% がシステムダウンを経験 • そのうち、25% は10時間以上復旧せず <NonStop の実績調査> • NonStop SQL/MX のシステムダウンタイム発生 率は、年間 0.026%。Oracleの3500倍の可用 性 DB Server OS DB Server OS Cluster Server OS Server OS DB DB NonStop SQL/MX 可用性が担保できない クラスターという上かぶせで対応するしかない クラスターにすると障害点が増え挙動も変化 高可用といいながら頻繁に停止する •ソフトウェアレベルでの高い可用性をもつ NonStop OSの中に 実装されたデータベース •1台のサーバーでそもそも高可用が実現できている 他のDBでは実現できないレベルの可用性を提供 止まらないDBサーバー
  24. 24. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.24 NonStop SQL/MX 実機検証結果
  25. 25. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.25 HP NonStop オープン性 Java JBOSS ODBC JDBC 疎結合 無停止 並列 アプリケーション サーバー データベース API NonStop SQL/MXANSI準拠 標準SQL Eclipse統合 開発環境 各種商用 Solution データ連携 (DR) 他にも、数多くのオープンソースや、商用ソフトウェアをサポート
  26. 26. NonStopSQL/MX
  27. 27. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.27 NonStop SQL/MXのパラレルアーキテクチャ Pipelined Parallelism •各処理間のメッセージはキュー渡し、プロセス間はNoWaitのI/O •直前のオペレーションの完了を待たず、データは逐次上位のオペレーションに引き継がれてゆく Merge Join Union Partition Access ESP ESP Scan Scan DP2 Partition Access Join Partition Access ESP Scan Scan DP2 Partition Access
  28. 28. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.28 すべてのデータベース更新情報を格納しておくログファイル AUDIT TRAIL • COMMIT時にはAUDIT TRAILへ確実に書き込むことによりデータの保全性を保証 • データベースの変更自体は、キャッシュ上でI/Oが完了可能 APPL DISK APPL APPL DISK DISK AUDITTRAIL ドライバ ドライバ ドライバ キャッシュ キャッシュ キャッシュ 更新I/O 更新I/O WRITE AUDITTRAILには、データ 整合性を保持するため に必要なすべてのデータ が確実に書き込まれて いる Storage CLIM COMMIT時に更新 情報は必ずAUDIT TRAILにWRITEされ る Storage CLIMは キャッシュを持って いない HDD内のキャッ シュはデフォルト 設定で無効
  29. 29. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.29 データリカバリー機能① トランザクションRollback • CPU障害、アプリケーションプロセス障害、アプリケーションからのロールバック指示時にデー タベース更新を巻き戻すことで、データ整合性が保持される 注文 在庫 履歴 ① BEGIN TRANSACTION ②更新 ③更新 TMFにより ROLLBACK TRANSACTION COMMITされていないデータベース更新 は、AUDIT TRAILの情報を使ってすべて 巻き戻される(バックアウトされる) APPL ④プロセス 異常終了
  30. 30. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.30 • AUDIT TRAILを元に確定更新をRedoし、未確定更新はUndoする • これによりボリュームダウン時の確定更新を含むデータまで復旧される データリカバリー機能② Volume Recovery DISK ドライバ キャッシュ APPL AUDIT WRITE & COMMIT DISK ドライバ キャッシュ APPL AUDIT WRITE DISK AUDIT ドライバ キャッシュ APPL 完 未 完 DISK AUDIT Volume Recovery 障害発生 システム復旧後 自動的に修復 はCommit済み はCommitされてない 完 未 完 完 未 完 未 リカバリーには、ダウン時の データディスクとAUDIT TRAILが アクセス可能であることが必要
  31. 31. HPNonStop SQL/MX はなぜグローバ ルに分散DBを構築できるのか
  32. 32. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.32 そこに必要な技術とは • 従来、2フェーズコミット処理は 非常に重く、利用を避けるべき 技術とされてきた 複数コンポーネント間のデータ更新を単一トランザクションとして 制御する「高性能 2フェーズコミット機能」を実装する必要がある • トランザクション管理を実行する モジュールがボトルネックになり易い < 技術的課題 > • オーバーヘッドを限界まで削減 − メッセージ交換オーバーヘッド の削減 − 下位レイヤーでの実装 • 分散型トランザクション管理機能 − 各処理ノードで並列稼働する トランザクション管理実装
  33. 33. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.33 HP NonStop SQL/MX の実装 オーバーヘッドを限界まで削減 2. トランザクション管理機能をOSに統合 − トランザクション管理テーブルの更新機能をインタラプト処理内に実装 • プロセスディスパッチのオーバーヘッドを削減 • カーネルモードとユーザーモードのスイッチオーバーヘッドを削減
  34. 34. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.34 2フェーズコミット フェーズ1 : コミット要求フェーズ フェーズ2 : コミットフェーズ コーディネータ データ Redo Undo ログ DBMS データ Redo Undo ログ DBMS データ Redo Undo ログ DBMS コミット 準備! コミット 準備! コミット 準備! 完了! 完了! 完了! コーディネータ データ Redo Undo ログ DBMS データ Redo Undo ログ DBMS データ Redo Undo ログ DBMS コミット 確定! コミット 確定! コミット 確定! 完了! 完了! 完了! トランザクション 全体でコミットOK コミット完了 ロック解放 ロック解放 ロック解放 Trx 101: ph1 Trx 101: ph1 Trx 101: ph1 Trx 101: ph1 Trx 101: ph2 Trx 101: ph2 Trx 101: ph2 Trx 101: ph2 単一トランザク ションで、 3レコードを更 新します
  35. 35. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.35 データ DBMS Trx 101: ph1 InfiniBand 割り込みハンドラ OSレベルでのトランザクション管理 実装例 フェーズ1 : コミット要求フェーズ コーディネータ 特殊パケット で返信 完了! CPU宛て特殊 InfiniBandパケット コミット準備! コミット 準備! 完了! トランザクション 全体でコミットOK 全CPUで同期されたトランザクション制御 テーブルを保持 データ DBMS Trx 101 InfiniBand 割り込みハンドラ 制御テーブルを 参照し処理実行 データ DBMS Trx 10: InfiniBand 割り込みハンドラ 制御テーブルを 更新 Trx 101 Act CPU 0,1,2 Trx 100 Act Trx 101 CPU 0,1,2 Trx 100 Act Trx 101 Act Act CPU 0,1,2 Trx 100 Actプロセス WAKE Redo/Undo ログ Redo/Undo ログバッファ Redo/Undo ログバッファ システムで1つのログファイル ログ ディスク プロセス-B ログ ディスク プロセス-P WALフラッシュ WALフラッシュ 同時実行トランザクション数が多い 時は、複数パケットを単一パケット に詰めて送信 (待ち時間を自動で調節) Ph1 Ph1 Ph1
  36. 36. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.36 Disk processはWAITしていて、InfiniBandから特殊パケットを受信すると、割り込みハ ンドラが関連するDisk processをWAKEします。(文字通りプロセスをディスパッチする という意味です。) プロセス間通信やsocket通信などではなく、割り込みレベルで関連プロセス間の同期 が処理されるという点がポイントです。 WAL = write ahead log
  37. 37. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.37 •1ノードとは • 最低2CPUから最大で16CPUで構成される • 単一のシステムDISK上の同じOSイメージが ロードされる • 稼働中のNonStop OSは1つに見えるので、 運用の単位は1サーバーとなる • イベントログや、更新ログ(Audittrail)も1つ • ノード間接続 • EXPANDというノード間専用プロトコルにより、 プロセス間通信や、ファイル・DBアクセスは、 ノード内と同じI/Fで行うことができる。ノードの 透過性もメッセージシステムが提供している • 物理的には、ServerNet直結(Blade Cluster)か、 IPで接続可能 2CPU~16CPUで1ノード = 1サーバー という運用の単位 NonStop Serverのノードという概念 ノードA ノード B EXPAND OS OS APPL APPL APPL
  38. 38. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.38 シングルデータベース 分散データベースへの拡張 並列アーキテクチャのCPU間距離を延伸することで、分散データ ベースを実現 −理想的な疎結合アーキテクチャでは、通信速度・帯域さえ確保できれば、コンポー ネント間の距離は問題とならない −データ利用者からは透過的に、データ量の増加などに対応して最適な場所にデー タを配置し、必要なデータアクセス性能を提供・維持できる機能を提供する CPU CPU CPU OS DB InfiniBand OS DB OS DB CPU OS DB サイトA 通信回線 CPU OS DB CPU OS DB InfiniBand サイトB
  39. 39. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.39 分散データベースが提供する具体的な機能 1. 単一のテーブルのパーティションを、地理的に離れたノードに 透過的に分散配置することができる 2. 配置の変更も透過的に、データアクセスを実行中に実行できる 3. データ更新はトランザクション保護され整合性が保証される アプリケーションからは単一データと同様に扱えながら、常に性 能面・管理面で最適なデータ配置を実現することを可能とする
  40. 40. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.40 分散データベース事例 アプリ1 アプリ2 アプリ2アプリ1 米国拠点 バックアップセンター バックアップセンター (米国) 東京拠点 シングル データベース • 単一の“顧客テーブル“を、東京-米国のパーティション構成で保持 • 日本顧客のデータは東京ノードに、米国顧客のデータは米国ノードに配置 • アプリケーションは、世界中の顧客のデータを自由にアクセス可能 - 各拠点に接続のアプリの大半のアクセスはローカルノードで完結 - 多少のアクセス時間はかかるが、アプリケーションはデータ配置を 全く意識せずに全顧客のデータにアクセスが可能
  41. 41. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.41 木構造によるトランザクション管理の階層化 ノード間通信は遅延時間が大きいため、トランザクションコーディ ネータを階層化し、ノード間のメッセージ数を削減することでグ ルーバルトランザクション制御のオーバーヘッドを最小化する ノード間メッセージ数 4×2 = 8メッセージ サブ コーディネータ コーディ ネータ サブ コーディネータ コーディ ネータ ノード間メッセージ数 1×2 = 2メッセージ
  42. 42. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.42 木構造によるトランザクション管理の階層化 サブ コーディネータ サブ コーディネータ コーディネータ Node A Node B Trx 101: Orig Node=Node A Sub Node = ( A, B ) CPU 0 CPU 1 CPU 2 CPU 3CPU 0 CPU 1 CPU 2 CPU 3 Trx 101: Orig Node=Node A CPU = ( 1, 2 ) Trx 101: Orig Node=Node A CPU = ( 0, 2 )
  43. 43. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.43 木構造によるトランザクション管理の階層化 HP NonStopサーバーでの実装例 1. ネットワーク接続されたノード間で、自動的にトランザクション 連携機能が提供される (特別な設定は不要) 2. 複数メッセージをまとめて送受信する等の最適化を実装 ローカルノードがトランザクション開始ノードの場合のコーディネー タと、リモートノードがトランザクション開始ノードの場合のサブ コーディネータの機能を兼ね備えたトランザクションモニタープロ セス (TMP)がノード毎に起動される
  44. 44. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.44 重障害発生時の2pcの限界 2pcを厳密に適用し、データ整合性を堅持しようとすると、 障害発生時には復旧までデータのロックが持続してしまう < 可用性に関する技術課題 > • 2pcはネゴシエーション結果を互いに待ち続けられことを前提にデータ整合性を保証 するプロトコルである • 実際のシステムではタイムアウト時間を設定し、コミット指示に対しRMやサブコーディ ネータからの応答が返らない場合、まだコミットされていないものとして処理を続行す るのが通常(Presume ABORT) - コーディネータはトランザクションをロールバックし、制御テーブルから情報を削除 • 実際のデータ更新は、コミットされていてデータ整合性が損なわれてしまう可能性が あるため、通常はあまり短いタイムアウト時間に設定することはできない 一般的な2PC の例
  45. 45. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.45 障害発生時の挙動 コーディ ネータ コミット指示 サブ コーディネータ 準備完了 更新データ <ロック中> 障害 発生 <障害復旧後> コミット確定 コミット ??? ロールバック ??? コミットかロールバック か 確定するまでロックは 解放されない 一般的な2PC の例
  46. 46. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.46 Heuristic completion • 実際には更新がCommitされている場合もあるため、データ整合性は保証 されていない これがHeuristic completionの発生した状況である • 障害を起こしたノードが再起動した時点で、データ不整合が発生したこと が判明し、手動でのデータ修正が必要となる 許容される待ち時間を超えてコーディネータから応答が無い場合、 通常は障害が発生したと仮定しロールバックする (Presume Abort 実装の場合) 一般的な2PC の例
  47. 47. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.47 分散データベースに求められる “可用性” • 障害時にも、業務で許容可能なタイムアウト時間内にトランザクション管理 機能が再開できる可用性が必須である • 基幹業務の典型的なタイムアウト時間は最大でも数十秒であり、HP NonStopサーバーは無停止機としてその要件を満たすことができる データ整合性の保証が絶対な基幹データベースでは、Heuristic ケースが発生しないノード可用性が必須である 無停止ノード B無停止ノード A 無停止ノード C Trx Log A Trx Log B Trx Log C DB DB DB 当然、ネットワークには 十分な冗長構成実装が 必要です
  48. 48. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.48 HP NonStop SQL の障害時挙動
  49. 49. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.49 分散データベースに求められる “自立性” (autonomy) • HP NonStop SQL/MX ではアプリケーションコードで、「全ての データがアクセス可能な時だけ処理を行う」、「アクセス可能 なデータ範囲で処理を行う」を選択可能 • 一部のデータがアクセス不能と想定される場合、 SQLExceptionで警告が通知される − 処理の続行、中止をアプリケーションで選択できる 万一の災害などでリモートノードがアクセス不能となった場合に も、アクセス可能なデータの範囲で処理が実施できる自立性を 持つことが望まれる
  50. 50. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.50 まとめ 基幹グローバル分散データベースを可能とする 垂直統合型データベース技術 「HP NonStop SQL/MX」 1. 堅牢・高速かつ拡張性のあるトランザクション管理機能をOSレベルで実装  必要な時にブレード追加。基幹データベースにスケールアウトの柔軟性! 2. 地理的分散データベースを実装可能とする、障害時にデータ不整合を起こさ ない無停止トランザクション管理機能  複数DCに常に最適なデータ配置を実現! 3. ミッションクリティカル領域での豊富な運用実績  基幹データベースでお悩みの際にはHPにご相談下さい。
  51. 51. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.51 アンケートにご協力ください
  52. 52. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Thank you! 後藤 宏 プリセールス統括本部 サーバー技術本部 サーバー技術二部 部長 Hiromu.goto@hp.com 直通 050 3138 0848 携帯 090 8770 0963 FAX 03 5628 2698 日本ヒューレット・パッカード株式会社 本社 〒136‐8711 東京都江東区大島2‐2‐1
  53. 53. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.53 優れたコストパフォーマンス低TCO (参考情報) • 移行時のコストシミュレーション • Oracle DB RACからの移行 • 特にソフトウェアにかかるライセ ンスと保守費用を大幅に削減 他社DBシステム 5年トータル費用 HP NONSTOP 5年トータル費用 HW SW 5年保守(HW) 5年保守(SW) 約1億7,000万円 約5,700万円 66% TCO削減 * 性能などの要件によっては、上記のとおりにならない可能性があります 構成要素 HP NonStop SQL Oracle DB RAC ハードウェ ア HP Integrity NonStop Server NS2300 HP ProLiant DL380 x 2 HP 3Par StoreServe 7200 ソフトウェ ア NonStop OS NonStop SQL Red Hat Enterprise Linux Oracle DB Enterprise Edition Oracle Real Application Cluster 保守 5年間 (24時間)

×