DataCoreの技術がSQL Serverの速度を驚異的なスピードに引き上げる

Table of Contents

DataCoreの技術がSQL Serverの速度を驚異的なスピードに引き上げる

DataCore は、IO 要求を同時に実行してスループットを向上させる SQL Server 用のドライバーを作成しました。

同社の並列 IO テクノロジーは、一連の SPC-1 ベンチマーク テストで効果的であることが実証されており、テストされた共有ストレージ リソースの中で、最高のパフォーマンスと最低のコスト パフォーマンスを実現しています。

SQL Server のようなデータベースをトランザクション処理、リアルタイム分析、および同様の IO 集約型の作業に使用する場合、オペレーティング システムが IO をスケジュールする方法の制限により速度が低下します。

現代のCPUは複数のコアを搭載しており、それぞれが複数のスレッドをサポートしています。Intelのハイパースレッディング技術では、コアごとに2つのスレッドがサポートされており、例えばXeon E7-8870 v4 CPUは20個のコアと40個のスレッドを備えています。

マルチスレッドアプリケーションでは、コアごとに2つのスレッド、あるいは複数のコアで同時にスレッドを同時に実行できます。しかし、DataCoreによると、SQL ServerのIOには制限があり、一度に1つのスレッドしかデータの読み書きができません。SQL ServerのIO要求は、同時実行かつ独立しているにもかかわらず、仮想化マシンでもベアメタルマシンでも、オペレーティングシステムによって1つのキューで1つずつ処理されます。これらの要求はシリアル化され、1つのスレッドで実行されます。他のスレッドは順番を待たなければならないため、処理が遅延し、CPUリソースが無駄になります。

DataCoreのドライバーはMaxParallelと呼ばれ、SQL Serverとオペレーティングシステムの間に挿入されます。これにより、複数のコアがSQL ServerのIOリクエストを同時に実行し、並列化できるようになります。DataCoreによると、複数の独立したクエリや更新が別々の処理コアで実行されている場合、単一のキューで待機する必要がなくなり、遅延なく並列にデータにアクセスできるようになります。

SQL Serverには2016、2014、2012、2008など様々なバージョンがあり、オンプレミスでもパブリッククラウドでも実行できます。MaxParallelはこれらすべてをサポートし、コードの変更は一切不要です。加速効果はSQL Serverのバージョンによって異なりますが、最新版でも大幅に高速化します。

SageのプラチナパートナーであるDesk Software and Consulting GmbHのCTO、Joachim Dreher氏は、この件について次のように述べています。「SQL Server 2016でMaxParallelをテストしましたが、SQL Serverはすでに世界で最も最適化されたデータベースソリューションの1つであるため、それほど期待していませんでした。しかし、DataCoreによって生産性が30%以上向上したことには本当に驚きました。」

SQL Server 2012では、MaxParallelは40ユーザーシステムにおいて、1分あたりの新規注文数(NOPM)をユーザーあたり1,637.85から6,326.425に増加させることができました。HammerDBのテストによると、これは4倍の増加です。SQL Server 2016でも同様の効果が見られました。

最大並列NOPMレート増加

受注入力用のSQL Serverシナリオでは、ユーザー数が40人程度のシステムでは応答時間は許容範囲内ですが、ユーザー数が50人に増えると応答が遅くなります。データベースキャッシュを追加すると、60人までは良好な応答時間が得られますが、100人になると再び応答が遅くなります。

データベースキャッシュの代わりにMaxParallelを追加すると、ユーザー数が150に増加し、以前よりも応答速度が向上します。テストしたシステム(240GB RAM、44GBデータベース、16コア)では、200ユーザーレベルで処理能力が不足しました。

DataCore チャートにはこれら 3 つのシナリオが表示され、下の 4 行は MaxParallel データ セクションです。

最大並列乗数

このソフトウェアは Azure で実行できるため、古いバージョンの SQL Server のユーザーはアプリケーションをクラウドに配布し、MaxParallel ソフトウェアを組み込むことで、データベースの実行速度が上がり、1 分あたりに完了するトランザクション数が増加し、サポートされるユーザー数が増えると DataCore は主張しています。

MaxParallel はコアごとに価格設定されており、2 コア パック (最低 4 コア) で販売され、SQL Server と同じコアごとのライセンスが使用され、SQL Server の推奨小売価格の 15% で販売されます。

許容される最小限のサーバー構成は何ですか?

8GB の RAM を搭載した 2 ソケット、4 CPU の Windows Server (物理マシンまたは仮想マシン) が最低限必要ですが、より多くのリソースとより重い負荷を備えたより大規模なシステムが望ましいです。

MaxParallelのロードマップはコンセプトが明確で、より多くのデータベース、パブリッククラウド、高IOレートアプリケーションのサポートをターゲットとしています。最初の成果物は来年中に公開される予定です。

なお、このソフトウェアはクラスター化されたSQL ServerまたはAlways On可用性グループではまだ使用できません。今後のリリースで対応予定です。

Azure Marketplace で提供される 30 日間の試用版でソフトウェアを試すことができます。®

Discover More