Microsoft、「Extensible Storage Engine」(ESE)のソースコードを公開自社製品に長年採用してきた組み込み/ISAMベースのDBエンジン

Microsoftは、自社製品で使用してきたNoSQLデータベースエンジン「Extensible Storage Engine」(ESE)のソースコードをGitHubで公開した。

» 2021年02月09日 16時00分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは、2021年2月、25年以上にわたって自社製品で使用してきた組み込み/ISAM(Indexed and Sequential Access Method)ベースのNoSQLデータベースエンジン「Extensible Storage Engine」(ESE)のソースコードをGitHubで公開した。

 ESE(旧称:JET Blue)は、「Windows NT 3.51」に初めて搭載されたデータベースエンジン。直後に「Exchange Server 4.0」にも採用されている。1990年代に2回の書き換えを経て、2000年代に入ってから20年間、活発に更新されてきた。現在でもMicrosoftの中核資産としてさまざまな製品で使用されている。

 例えば、「Microsoft 365」のメールボックスストレージのバックエンドサーバでは、数十万台のマシン(数百万台のディスク)でESEが使われている。「Active Directory」を大規模に展開している環境向けのTBクラスのメモリを備える大型SMP(対称型マルチプロセッシング)システムだ。また、「Windows XP」以降のWindowsクライアントSKU(Stock Keeping Unit)でも使用されてきた。

 アプリケーションはESEを用いて、テーブルへのデータの格納とテーブルからのデータの読み出しを実行できる。ESEは非正規化スキーマをサポートしており、アプリケーションがトランザクション型のデータ更新や読み出し時に一貫性のあるデータ状態を維持できる。システムクラッシュ時もデータの一貫性が維持されるように、クラッシュリカバリーメカニズムも提供される。さらにライトアヘッドログやスナップショット隔離モデルにより、データとスキーマのACID(Atomicity Consistency Isolation Durability)トランザクションを実現できる。

 MicrosoftはESEのデータベースエンジンだけではなく、同期/ロックライブラリやSTL(C++ Standard Template Library)と似たデータ構造ライブラリ、OS抽象化レイヤー、ブロック/キャッシュマネージャーのソースコードも提供した。

 Microsoftによると、GitHubで今後公開されるESEのソースコードのバージョンは、Windowsの最新リリースにコンパイルされるバージョンよりも少し先行している可能性があるとのことだ。

「JET Blue」と「JET Red」は何が違うのか

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。