第17回 Spark Labsレポート

皆様こんにちは。
第17回目のラボは、
クラウドエース株式会社
取締役CTO 高野遼様による

「Google Cloudを支える技術」

としてご講演いただきました。
高野様、多数プロジェクトを同時並行に抱えている中、今回ご講演くださり、誠にありがとうございました!

なお、本内容に関しましては、高野様の個人的な見解に基づくものであり、クラウドエースやGoogle、Google Cloudの公式見解ではありません事をあらかじめご了承ください。

サマリー
GCPは、扱うデータはすべて自動で冗長化されるため障害に強く、自動で暗号化されるので安全性も高く、超高速ネットワーク + 分散処理の仕組みでめちゃくちゃ速いインフラストラクチャー

詳細
クラウドエース株式会社とGoogle Cloud Platform(GCP)のご紹介
  • クラウドエースは、クライアント数で日本1、2を争うGCP専門のクラウドインテグレーターになります。
  • 10億人以上が常時利用し、Googleが提供するサービス群(Youtube、Google Map、Gmailなど)を支える基となる技術の数々。これを安価かつ簡単にクラウド上で利用できるサービスがGCPです。
GCPは100近いサービス群から構成されており、お客様のビジネスに合わせて最適なソリューションを提供するのが、クラウドエースの主な業務内容になります。


誰でもわかる(?)GCPを支える技術
  1. Colossus(ファイルシステム)
    • 概略
      1. Colossusはファイルシステムであり、ハードディスクやソリッドステートドライブと同様のもの
      2. 仮想マシンのドライブやCloud Storageといったオブジェクトストレージ、DatastoreやSpannerといった最新のデータベースのデータもColossus上に保存されている
      3. Colossusが提供する機能は以下
        1. データの自動冗長化
        2. データの自動暗号化
        3. 高速なアクセス
        4. データの信頼性
      4. Colossusの詳細な仕様はGoogleが開示していないため、謎に包まれている
        基となったGoogle File System(GFS)は技術論文が公開されているため、学ぶことができる
      5. GFSは、ハードウェアは必ず壊れる事を前提として冗長化されたシステム設計がされている
      6. 高速化のために、ネットワークボトルネックを可能な限り排除するシステム設計をしている
      7. データはすべて暗号化しており、Colossusを利用しているサービスはすべて自動的に暗号化される
  2. Jupiter(データセンターネットワーク)
    • 概略
    1. Jupiterは、1ペタビット毎秒の通信が可能なネットワーク
      ※インターネットは全体で100テラビット毎秒の通信なので、ざっくり10倍は速い
    • 生まれた背景
      1. データセンタートラフィックが外部ネットワークを利用した通信から同一ネットワーク内の通信に変わってきている
      2. マイクロサービスアーキテクチャやサービスオリエンテッドアーキテクチャが変化の理由の1つ
      3. 上記の課題にたいして、Closトポロジーネットワークと呼ばれる水平スケールしやすいネットワーク設計が考案された
    • 進化の過程
      1. Firehose1.1 配線がすごい大変

      2. Watchtower 裏側に配線を隠してみた

      3. Jupiter 
        1. Closトポロジーネットワークを採用し、Middle Block単位で出し入れすることで運用を簡略化できる
        2. オンプレミスだと、ハイパーコンバージドインフラストラクチャと呼ばれている
  3. MapReduce(分散処理システム)
    • 概略
      1. MapReduceは大規模データ処理のためのプログラミングモデル
      2. 大量のデータがあった時に、どう効率よく単純集計や数え上げといった問題を解くかの1手法
    • 現実例
      1. 選挙
        1. 各投票所でまずは集計する
        2. 複数の集計場で再度集計する
        3. 最終合計結果から、当選者を発表する
支える技術を組み合わせると。。?

  • ストレージとコンピューティングを分離し、超高速データセンターネットワークが支える現代最強のインフラストラクチャーが完成する

終わりに


  • Googleは、過去19年間に渡って分散処理を高速で実施するための技術を突き詰めてインフラストラクチャーを構築し、10億人を超えるユーザーが安定してサービスを利用できる様にしている
  • 今回の話は原始的な基礎技術のみであるが、GCPの各サービスはさらに応用技術の組み合わせで構成されている
  • 基礎技術の理解によって、より良い技術選択が可能になるので勉強は怠らず
  • 以下にGoogleの公開論文がいっぱい置いてあるので、興味がある人はどんどん読んでみて欲しい
  • https://ai.google/research/pubs

記事作成者:吉岡

人気の投稿