Microsoft SQL Server におけるインメモリデータベースの取り組み

The coming in-memory database tipping point. – SQL Server Team Blog – Site Home – TechNet Blogsより一部抜粋、機械翻訳。(記事はFBで河端さんが紹介されていた)

要約

情報技術を形成する力のセットは、メモリ内データベース技術は、今後5-10年間で一般的になる転換点の条件を設定している。大部分が読み取り専用の数値の事実上のクエリまたは数値的にエンコード可能な寸法によって支配、アナリティック·ワークロードは、メモリ内の技術が広く採用されているになっている最初のシナリオである。時間が経つにつれて、メモリ技術にもトランザクション処理のワークロードに適用されます。

あなたは、おそらく今後のインメモリ·データベース技術に関する多くのことを聞くことができます。マイクロソフトでは、我々はこの技術の変曲点を信じて、Microsoft ExcelのパワーピボットとSQL Server Analysis Servicesのいくつかの時間をインメモリデータベース技術を出荷されています。SQL Serverの2012年の導入により、コアのリレーショナルデータベースエンジンでは、columnstoreベースのインデックスとしてメモリデータベース技術における当社の利用します。この新しい列から始まるインデックスを使用してリレーショナルデータウェアハウスのワークロードをお持ちのお客様は、この新しい機能を活用したクエリの広範なクラスの驚異的なスピードアップを経験しています。

Microsoftはまた、技術や成熟した機会として出荷される他のインメモリ·データベース·テクノロジに投資しています。来て何の味として、我々の研究室でのインメモリデータベースソリューションに取り組んでおり、可能性を実証するために私たちの現実世界のシナリオを構築している。Microsoftのオンラインサービス事業の一つに基づいてそのようなシナリオでは、100億行のファクトテーブルが含まれています。1秒の1/3のクエリの応答時間と、合計で300億回の演算 – このシナリオでは、事実ごとに3つの計算を行うことができます。この実装では、ユーザー定義集計はありません。私たちは実際にリアルタイムで圧縮されたカラムストアを介してスキャンします。

メモリデータベース技術で、これらのシステムを構築する人々とそれらを使用する顧客の両方にとってエキサイティングな時間を作る。SQL Server製品のエンジニアリング·チームに代わって、私はあなたがあなた自身の組織内の新たな課題を解決するためにインメモリデータベース技術を使用する機会があると思います。

 

Microsoft SQL Server テクニカルフェロー
デイブ·キャンベル

SQL言語を使用するRDBMSの速度がクラウドや大規模WEBサービスの速度に追いつかずNoSQLのブームが来ましたが、当時から指摘があったように、その遅さの根本的な原因はストレージに対するIOとアトミックな制御のための分散しにくさです。ただ、ストレージに対するIO速度の改善はメモリベースのデータベースを使用することで改善されることは、オラクルのTimesTenなどでも知られていたことです。ただ、過去メモリ(DRAM)の容量は高額なハイエンドサーバーでも限定的で、そんなメモリをただのストレージに大容量を裂くのは特殊な目的でも無い限り肯定できるものではありませんでした。(TimesTenはまさにそうした特殊な目的のためのRDBMSでした)

ただし、近年のDRAMチップの大容量化、価格低下、また仮想化の流行で大規模メモリ搭載に対する要求の高まり、それに伴いx86ベースでもチップセットやCPUが大容量メモリをサポートしたので、数百万で1TBのDRAMを実装したサーバーが購入可能なレンジまで降りてきました。一般的なエンタープライズ向けのデータベース容量であれば十分なレベルまでメモリ容量が増えてきているのです。

つまり、ストレージのIO速度を阻害する要因はハードウェア的にはなくなりつつあるので、後はソフトウェアです。

引用した要約にあるように、マイクロソフトが今後もSQL Serverのインメモリ利用技術に積極的に投資をするのであれば、投資根拠も十分に根拠のあることだし、大きな成果が出てくるよう大きく期待したいと思います。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください