GoogleがBigQueryを安価に提供できる理由は、Borgによる大規模分散コンテナ環境があるから

2020年9月1日

いまから6年前の2014年、当時ようやくDockerコンテナが世の中に知られるようになってきた頃、Googleはすでに社内のすべてのソフトウェアをコンテナ化しており、毎週20億個ものコンテナをクラウド上で起動していると発表し、多くのエンジニアを驚かせました。

Google and Containers

この大規模なコンテナの制御、すなわちオーケストレーションを行っていたのが同社内で「Borg」と呼ばれるソフトウェアです。

そしてKubernetesはこのBorgを基に、Googleがオープンソース化したコンテナオーケストレーションソフトウェアだとされています。

Borgの大規模分散コンテナ基盤でBigQueryが成立する

このBorgによる大規模分散コンテナ基盤があるからこそ、BigQueryが安価に提供できるのだと、Google CloudのDeveloper Advocateを務める佐藤氏がツイートしていました。

これがコンテナによる分散環境の威力をうまく表していて印象的だったので、下記にまとめてみました。

Borgによる大規模分散コンテナ基盤があるからこそ、クエリの実行を数百から数千に分解して実行する機構をもつBigQueryの仕組みが成立すると。

gVisorとは、コンテナの軽量さを保ちつつ、より高い分離を実現するGoogleのコンテナランタイムです。2018年にオープンソースで公開されています。

Googleがオープンソースとして公開したテクノロジーは同社の中ですでに古くなったものだ、と言われています。すでに同社のコンテナ基盤は外からは分からないものの、もうずっと先に進んでいるのでしょう。

ちなみにAWSもコンテナの軽量さと高い分離性を両立させるというgVisorと同じコンセプトのマイクロVMであるFirecrackerをオープンソースで公開しています。

FirefcackerはAWS FargateやAWS Lambdaなどコンテナを基盤としたサービスで使われているとのこと。

gVisorはコンテナの分離性を高めるというアプローチで実装され、一方のFirecrackerはマイクロVMが示す通り、仮想マシンをコンテナのように軽量化するというアプローチがとられています。両者のアプローチの違いも興味深いところです。

あわせて読みたい

AWS Google Cloud Kubernetes クラウド コンテナ型仮想化 Google




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本