Successfully reported this slideshow.

[D35] インメモリーデータベース徹底比較 by Komori

13,223 views

Published on

Published in: Technology
  • Be the first to comment

[D35] インメモリーデータベース徹底比較 by Komori

  1. 1. デインメモリーデータベース 徹底比較徹底比較 2014年6月20日2014年6月20日 日本ヒューレット・パッカード株式会社 プリセールス統括本部 / データベース・ソリューション部 小森 博之 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential. 小森 博之
  2. 2. データベースの技術動向 行指向 列指向 新しい流れ現在のOLTP ○:OLTP性能が高い ×:I/O負荷が高い ○:検索性能が高い、圧縮率が高い ×:更新性能に課題 現在のデータウェアハウス ディスク依存 インメモリ ○:容量単価が安い ×:I/O性能が低い ○:I/O性能が高い ×:永続性のためにストレージが必要 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.2
  3. 3. データベースの技術動向 行指向 列指向 必要なカラムだけを選択して読めるので検索が速い全てのカラムを読む必要があるので検索が遅い C1 C2 C3 C4 C1 C2 C3 C4 C1 C2 C3 C4 C1 C2 C3 C4 C1 C2 C3 C4 行指向 列指向 C1 C1 C1 C1 C2 C2 C2 C3 C3 C3 C4 C4 C4 ディスク依存 インメモリ © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.3 DRAM : ~100nsフラッシュメモリ : ~50μsハードディスク : ~10ms
  4. 4. クラスタ 化および更新可能クラスター化および更新可能 列ストア 削除済み ビット マップ ⾏ストア
  5. 5. 列指向の効果を検証してみました….. 通常のテーブル Date_Key Product Key Retail_Sales_FactClustered ColumnStore Indexを作成 Product_Key Store_Key Promotion_Key Customer_Key Employee_Key POS_Transaction_Number S l Q i /秒 /秒 Sales_Quantity Sales_Dollar_Amount Cost_Dollar_Amount Gross_Profit_Dollar_Amount Transaction_Type Transaction Time byte/ 時間 byte/ 時間 Transaction_Time Tender_Type 9.23GB 0.22GB select sum(Sales_Quantity) from Retail_Sales_Fact where Sales Dollar Amount > 100 ;必要な列だけを読み込むことと 圧縮の効果で © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.5 where Sales_Dollar_Amount 100 ;必要な列だけを読み込むことと、圧縮の効果で I/Oが大幅に減少
  6. 6. インメモリデータベースとは? インメモリデータベース(IMDBあるいはメインメモリデータベース、MMDB)はデータスト レージを主にメインメモリ上で行うデータベース管理システムである。ディスクストレーを リ 行う タ 管 あ 。 ィ ク ジ機構によるデータベースシステムと対比される。メインメモリデータベースは内部最 適化アルゴリズムが簡素であり、相対的に少ないCPU命令を実行するので、ディスク 最適化されたデータベースと比較して高速である。 (ウィキペディア) フラッシュメモリを従来型データ 従来型データベースで メモリキャッシュフラッシュメモリを従来型データ ベースで使用するのは、インメモリ データベースではない。 ハードディスクを速いストレージで 従来型データベースで、メモリキャッシュ にデータを全て乗せても、インメモリデー タベースではない。 あくまで、ストレージの存在を前提とした © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.6 ドディスクを速いストレ ジで 置き換えただけ。 あくまで、ストレ ジの存在を前提とした 動作になっているため無駄が多い。
  7. 7. インメモリデータベースの歴史 1990 1995 2000 2005 2010 20151990 1995 2000 2005 2010 2015 HP研究所 Oracle 12c In-Memory研究所 IRIS Kevin Wilkinson, Smallbase Kevin Wilkinson, Marie-Anne TimesTen社 Oracle社が買収 TimesTen In Memory Option , Marie-Anne Neima, Sang Kyun Cha Neima, Sheralyn Listgarte, Kurt Shoens Transact In Memory 社 P*Time SAP社が買収 HANA SQL Server 2014 HANAをきっかけに市場 が活性化。 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.7
  8. 8. 主要データベース・ベンダのインメモリ対応 SAP HANA Microsoft SQL Server Oracle DatabaseHANA インメモリデータベース のパイオニア SQL Server SQL Server 2014 インメモリOLTPエンジン Database 12c In-Memory Option (2014年7月予定) ネイティブなインメモリデー タベースを列指向で実装。 OLTP高速化を重視した実 装。 既存環境との互換性を重 視した実装。 更新も検索も速い OLTPとOLAPを一つのデータベースで実現します 更新も検索も速い! © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.8 OLTPとOLAPを つのデ タベ スで実現します リアルタイムなデータを分析可能になります
  9. 9. SAP HANA ネイティブなインメモリ データベースを列指向で 実装。 Insert Update D l t Select メモリ 列指向 行指向のテーブルも可能 だが列指向が基本 列指向形式で全て デルタストア Delete C1 C1 C1 C2 C2 C2 C3 C3 C3 C4 C4 C4 列指向形式で全て のデータをメモリ上 に置くことが基本 デルタストア (行指向) C1 C2 C3 C4 Delta Merge 起動時にデータファイルからメモリ へデータを読み込み コミット時にログを 書き込み 定期的に 書き込み データファイル ログ ファイル へデ タを読み込み © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.9 ログファイルは高速なストレージ上 に配置
  10. 10. HANAのテクノロジー SAPのHWとSWの革新と融合により実現された SAPのインメモリ・コンピューティングが HW Technology Innovations SAP SW Technology Innovations SAPのHWとSWの革新と融合により実現された インメモリ・コンピューティング SAPのインメモリ コンピュ ティングが もたらす主な効果 全てのデータをメモリ上に置くことでDISK I/O ボトルネックを解消 HW&SW ⾏およびカラムストア + マルチコア アーキテクチャ ボトルネックを解消 カラム単位とパーティショニング単位で並列処 理を⾏うことにより処理速度向上 HW&SW パーティションニング 圧縮 マルチ ア ア キテクチャ ⼤規模並列スケールアウト カラム単位の圧縮によりメモリ 最適化によるデータ処理効率向上 SW 集計テーブルなし 64-bit アドレススペース 2TB メインメモリ 100GB/s データスループッ 集計テーブルが不要になることで 開発&運⽤⾯での⼯数削減 SW S © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.10 読込、書込の最適化 + + ++ 100GB/s デ タスル プッ ト ⾼圧縮率と⾼速書込、⾼速読込を同時に実現 カラムストア アーキテクチャー SW
  11. 11. Intel Xeon E7プロセッサに最適化されているHANA • HANAでは、インデックスとしてCSB+ツリー(Cache Sensitive B+ Tree)を使用してい る。CSB+ツリーのnode listは、Xeon E7のCache line sizeの64Bに合わせることで、 不必要なキャッシュミスを回避している。 • SSE で実装されているSIMD(Single Instruction Multiple Data)を使用して並列に演 算を実行している。 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.11
  12. 12. SQL Server 2014 インメモリOLTP OLTP高速化を重視し た実装。列指向のイン メモリ実装はしていな い。 メモリ最適化テ ブル Query ExecutionQuery い。 高速化したいテー 通常 ブメモリ最適化テーブル ブルだけを指定し て行指向でメモリ 上に置く。 通常のテーブル Table2 Table1Table3 永続化しない テーブルが 可能 インデックス は永続化さ Index2 Index1起動時にデータ をメモリに読み 込み、インデック スを作成 必要に応じて キャッシュに 読み込み れない Table1 Index1 Table1 Index1 Table2 Table2 永続化しない ものはログを 書かない © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.12 データファイルトランザクションログメモリ最適化 データファイル 書かない
  13. 13. SQL Server に統合され、最新ハードウェアのトレン アプリケーションSQL Server に統合され、最新ハ ドウェアのトレン ドに合わせて設計された新しい⾼パフォーマンスのメ モリ最適化 OLTP エンジン SQL Server リレーショナル データベースに統合 完全な ACID サポ ト SIP (株式情報処理) –⾼ボリュームのリアルタイム取 引データを取り、売買が終わった後に市場株式価格を 公開。待機時間は 0.5 ミリ秒以下であることが要求さ れる インメモリ OLTP ソリ シ ン完全な ACID サポート メモリ最適化インデックス (B ツリーおよびバッファー プールなし) ブロック不可マルチバージョン オプティミスティック同時 実⾏制御 ( ク/ラ チなし) れる。 インメモリ OLTP ソリューション テーブル上の競合がなく、ネイティブにコンパイルさ れたコードからのパス⻑が短いので、アプリケーショ ンは 0 4 ミリ秒の予測可能なエンド ツ エンドの待実⾏制御 (ロック/ラッチなし) ネイティブ コードにコンパイルされた T-SQL お客様の利点: ンは 0.4 ミリ秒の予測可能なエンド ツー エンドの待 機時間を達成 待機時間 (ミリ秒) お客様の利点: • 短い待機時間 • 最⼤ 10 倍のパフォーマンス向上 • 2 〜 5 倍のスケーラビリティ向上 SQL Server 2014 SQL Server 2008 SP1 待機時間 (ミリ秒) 2 5 倍のスケ ラビリティ向上 • SQL Server の投資を活⽤ 0 0.5 1 1.5 SQL Server 2014
  14. 14. Oracle Database 12c In-memory option 既存環境との互換性を重視 した実装。検索高速化のた めにデータを二重持ち。 SGA In-memory領域 OptimizerQuery Optimizerがどちらをアク セスするか決定 高速化したいテーIn memory領域 C1 C1 C1 C2 C2 C2 C3 C3 C3 C4 C4 C4 C1 C2 C3 C4 C1 C2 C3 C4 C1 C2 C1 行指向 列指向 高速化したいテ ブル/パーティショ ンを指定して、行/ 列指向の両方で デ タを持つ 列 必要に応じて キャッシュに 読み込み C1 C2 C3 C4 C3 C4 変更ログは書かない データを持つ。列 指向データはメモ リ上に配置。 読 込 データ ファイル ログ ファイル Archive ログ データを行指向と列指向(インメモ リ)の両方の形式で持つ(二重持ち) 変更ログは書かない ストレージにも書かない 起動後に行指向から列指向データを作成 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.14 起動後に行指向から列指向デ タを作成 データ更新は、同時に両方に反映する本資料は、Oracle Open World 2013でのOracleによる講演及び2014年6月10日の発表会 での内容を元にしています。 リリース前製品のため、実装方法が変更される可能性があります。
  15. 15. インメモリデータベース比較 HANA SQL Server 2014 Oracle 12c リリース時期 2010年末 2014年4月 2014年7月(予定) インメモリ機能 標準 標準 オプション製品 行指向/列指向 テーブルごとに指定可 列指向が基本 インメモリOLTPでは行指向。列指 向クラスタインデックスが可能 1つのデータを両方の形式で 持つ メモリに保持するデータ 全てのデータを列指向で 指定したテーブルを行指向で 指定したテーブル/パーティ ションを列指向で データの永続性 ディスクに保存 ディスクに保存。保存しない指定 も可能。インデックスは保存しない。 ディスクに保存。列指向デー タはメモリにだけ存在 メモリ上での圧縮 あり なし あり? 更新時ロック あり インメモリテーブルに対してはなし あり スケールアウト構成 対応 未対応 RACで対応 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.15 ケ ルアウト構成 対応 未対応 で対応 CPU高速機能の使用 SIMD、Xeon E7最適化 なし SIMDを使用
  16. 16. インメモリデータベースの可用性 インメモリデ タベ ス 従来のクラスタ構成 (ディスク共有) Primary Secondary インメモリデータベース でのクラスタ構成 (ディスク⾮共有) Primary SecondaryPrimary Secondary Primary Secondary 切り替え時に、Secondary側でディスク 上のデ タ ファイルからメモリへの読 データベースのリプリケーション機能を 使用し メモリの状態まで同期しておく © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.16 上のデータ・ファイルからメモリへの読 み込みが必要になり、時間がかかる。 使用し、メモリの状態まで同期しておく ことで素早い切り替えが可能。
  17. 17. HP Serviceguard によるHANAの自動フェールオーバー 自動FailOverを実現するHANA向けクラスターソリューション 標準機能では実現できない障害検知、IP制御、インスタンス制御を実現 Q クォーラム H/W、プロセス監視 自動FailOver(インスタンス起動、停止制御) クライアントアクセス制御 Q プライマリ セカンダリ サーバ A kSAP HANA Package SAP HANA Package sync SAP HANA System Replication Scale-up HP CS for HANA Scale-up Ack © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.17 Serviceguard for Linux HP CS for HANA HP CS for HANA
  18. 18. HPは社内ITでインメモリデータベースHANAを活用して います!います! 克服すべき課題 ゴール: 環境をシンプルにし、新たなビジネスを加速し、ITコストを劇的に削減 進行状況克服すべき課題 • 大規模なSAPインスタンス (30TB超) • データ量の増加 TCO削減のプレッシャ 進行状況 • サプライチェーン分析システムと SAP Business Planning and Consolidation (BPC) のHANAへの 移行を完了• TCO削減のプレッシャー • 高度な利用方法と使い易さへの強い要求 移行を完了 • SAP Business Suiteを使った販売管理システム を移行中 成果 処理時間が 2時間以上から 88秒に改善 1.5時間以上かかってい たクエリが HANAでは リアルタイムデータの見え る化により素早い経営判断 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.18 88秒に改善 たク リが HANAでは 1.02秒に る化により素早い経営判断 が可能に
  19. 19. ミッションクリティカルな X86サーバーを開発 NEWNEW • 16CPU/240コア (業界最大) • メモリ 最大24TB (業界最大)リ 最大 (業界最大) • x86サーバーの常識を覆す 信頼性機能 • 標準のWindows/Linuxを利用 (如何なるアプリも利用可能) 20102010 20142014((予定予定)) ド © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.19 Superdome 2 HP-UX 開発コードネームDragonHawk Windows/Linux HP Confidential – NDA required
  20. 20. 1分間に最速2万回転するHP独自の冷却ファン。 きめ細かなスピードコントロールにより、 必要最低限の回転に抑え、冷却ファン自体の消費電力を削減。 アクティブ冷却ファン HP Superdome 2 新開発 HP クロスバ フ ブリ クHP クロスバーファブリック 複数セルブレード同士、 IOエンクロージャ同士を 相互に接続する ファブリックモジュール。 二重化済み セルブレード×8 Itanium® プロセッサー ×128コア メモリ 最大4TB インターコネクトスロット HP BladeSystemと同サイズ。 I/Oの仮想化モジ ルI/Oの仮想化モジュール (HP バーチャルコネクト)や、 様々なブレード用新モジュールが Superdome 2でも利用可能に © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.20 変換効率最大92% 高効率パワーサプライ 単相200V・三相200Vどちらでも利用可能
  21. 21. 物理パーティション nPartition (nPar) CPU1 CPU2 CPU1 CPU2 CPU1 CPU2 CPU1 CPU2 CPU1 CPU2 CPU1 CPU2 CPU1 CPU2 CPU1 CPU2 メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ 最小単位は 「ブレード1枚」 複数のブレードを一台のサーバとして利用可能 (スケールアップ・最大で256 CPU コアまで拡張可能) © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.21 パーティション間を「電気的・物理的に分離」 故障の影響を最小限に閉じ込める
  22. 22. HP ConvergedSystem 900 for SAP HANA 2014年6月2日発表 D H kを使用したHANAアプライアンス SAPとの共同プロジェクトProject Krakenの実現 • 12 TBメモリ, 16 ソケット(240コア)を実現する大規模システム 2014年6月2日発表 - Dragon Hawkを使用したHANAアプライアンス メ リ, 6 ソケット( 0 ア)を実現する大規模システム • 異なるトランザクション・ワークロードの共存が可能 • ミッションクリティカルなシステム向けの高可用性 • X86サーバーにはない耐障害性の高さと、高速なI/Oバンド幅によX86サ バ にはない耐障害性の高さと、高速なI/Oバンド幅によ る高性能 SAP : CTO Vishal Sikka Hewlett-Packard(HP) : COO Bill Veghte © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.22 写真ソース : http://news.mynavi.jp/articles/2013/05/17/sap_hana/index.html
  23. 23. Memristor データを永続化でき DRAMと同等のアクセス速度を持つ 新しいメモリ素子データを永続化でき、DRAMと同等のアクセス速度を持つ、新しいメモリ素子 TiN TiO s TiN TiOx TaOx TiOx TiN spacer TaOx TiN x TaOx Top Cross Section © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.23 Cross-Section
  24. 24. メモリとストレージの将来像 CPUs 2 5D メモリとストレージが一緒になったら….. CPUs High Bandwidth Tier 2.5D CPUs 3D DRAM or NVM Extreme Bandwidth Tier DIMM DDR High Capacity DDR TierCPUs Performance + Capacity NVM Tier High Capacity DDR Tier Intelligent Flash SSD Tier HDD DISK C ld S HDD i Intelligent Flash SSD Tier Cold Flash Tier © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential.24 HDD DISK Cold Storage HDD tier Archival Storage HDD tier
  25. 25. 小森 博之 プリセールス統括本部 ソリューションセンター データベース・ソリューション部 Tel: 090-7906-4517 Mail: hiroyuki komori@hp comMail: hiroyuki.komori@hp.com 日本ヒューレット・パッカード株式会社 本社 〒136 8711〒136‐8711 東京都江東区大島2‐2‐1 Thank you! Danke ! © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential. T n y ! D n !

×