カーキ色はヒンディー語らしい

技術記事は https://zenn.dev/notrogue

Designing Cloud Data Platforms読んだ

www.manning.com

Designing Cloud Data Platformsという本を読みました。

どんな本か

  • 2021年に出版されたデータ基盤の本です
  • 大企業のデータ基盤の設計(コンサル・SIer?)の人が著者です
  • データ基盤を大きく6つのレイヤー(下図)に分割し、それぞれの章で説明しています
    • Data Lake(②)とDatat Warehouse(⑤)を組み合わせた基盤を、この本では「Data Platform」と呼んでいるかと思います(Data Warehouse単体との対比)
  • 書名に「Cloud」とついていますが一般論的な話がメインです。個別のクラウド・プロダクトの話題は軽く触れる程度です
    • (Egressの通信量気をつけましょうとか、無限にスケールするオブジェクトストレージ良いよねとか)
  • The Cloud Data Lakeや、 Fundamentals of Data Engineeringあたりと近いジャンルの本です

Designing Cloud Data Platforms 3章より

(Designing Cloud Data Platformsの3章より)

この本で紹介されていること

この本では、

  • データ基盤の概論(歴史、ユースケース
  • データ基盤の6つのレイヤーに関して、必要性、プラクティス、サービス・プロダクトの例

が主に紹介されています。

特に、

  • Schema管理
    • AvroのSchema EvolutionやSchema Registryの話
  • Operational Metadataの話  * パイプラインの成功失敗、処理したデータ量等のメタデータ
    • Business Metadataではないことに注意
  • Realtime IngestionとRealtime Processingの区別
    • Realtime Ingestionはデータ元からDWH・Data Lakeに入れる処理、Realtime Processingはビジネスロジックに対応する変換です
    • この本では、共通化の意味でRealtime Ingestに統一するのはあり、Realtime Processingは難しいし必要で無い場合もあるので要件次第という話でした
  • オブジェクトストレージのバケットの整理

あたりが、他の本であまり触れられていない、ユニークな話題だとお思います。

この本では(あまり)紹介されていないこと

  • いわゆるModern Data Stack的なツール(Reverse ETLとかdbt)
  • Fundamentals of Data Engineeringで触れられていた、チームやプロダクト選びの観点
  • DWH・Data Lakeの先の話(BIとか機械学習

思ったこと

  • 全体的に、大規模企業のデータ基盤を意識した本かと思います
    • 通化を意識した話(Realtime IngestionとかConfigurable Pipelineとか)が多い点からの判断
  • 大規模管理以外に関しても、RDBからのデータ取得のパターン(4章)や、Common Data Processing(5章)など、「なんとなくパターンを思っていたけど、明文化されていない?」話題が参考になりました