SQL Server on Linux についての情報が記載された SQL Server on Linux: How? Introduction が公開されました。
翻訳こんにゃくを使いながら、一通り目を通したのですが、かなり面白い内容となっています。
SQL Server on Linux は、Drawbridge のテクノロジーとの関連性が以前から言われていました。
それについても触れられており、MSR が携わっていたオリジナルの Drawbridge は、Windows 上での実行を想定していたものとなっていましたが、今回の SoL で使用されているものは、SQL Server 向けに変更をしたものを使用しているということについても記載がされており、読み物としても面白かったです。
SQL Server はもともと、SQLOS を内包しており、スケジューリング管理や、メモリ管理等に関して、SQLOS 上で制御が行われているアーキテクチャとなっています。
SoL は、Drawbridge + ライブラリ OS + SQLOS を組み合わせて、SQLPAL という抽象化レイヤーを作成することで、Windows と Linux のシステムコールを吸収するアーキテクチャとなっていますが、最初から、SQLOS のようなレイヤーが挟まっていたので、SQL Server 内の世界として完結しやすかったのかもしれないですね。
SoL は SQLPAL を介すことで、OS の違いを吸収する構成となっており、Windows 向け バイナリ、Linux 向けバイナリという分け方ではなく、Windows 向けバイナリを Windows / Linux で共通して動作させるというアーキテクチャで動作させるのはとても面白い構成ですね。
次の記事の公開がとても楽しみです。