Webサービスデータ分析基盤を作ることになったけど、データ分析基盤がなんなのか、どんなことをすればいいのかわからない。こんなことありますよね。データ分析基盤初心者の自分が、作る前に読んで、概念がわかるようになった本をまとめました。はじめに最近データ分析基盤チームの立ち上げを行いました。Formationを利用して開発中です。作る要件として以下を設定しました。プロダクトの指標を出す取りたい数字が変わった時に、手戻り少なく変更可能にする少ない人数で運用可能にするデータへのアクセス制御を可能にするプロダクトの指標以外にも応用可能にする「あの数字を取りたいけど、今から数字を取り始めるとダッシュボードに出すまでに時間がかかる...」というの、プロダクト運用あるあるですよね。そんな時のために、データ分析基盤は最初からある程度整えておくことが重要です。途中で取りたい数字が変わっても、手戻り少なく素早く変更することができます。小さい会社だとデータ分析基盤の構築に人手を避けないというのもあるあるです。できるだけプロダクトの開発を優先したいので、手間なく運用できる形にしたいものです。データは貯めるだけではダメで、適切に管理しないといけません。あらゆることを想定して、データが漏れないように適切にアクセス制御できる形で運用したいです。データ分析基盤が育った未来では、売上集計や顧客集計などのプロダクトの指標とは少し別な数字なども、データ分析基盤で取り扱いたくなります。いえ、最初の目的である「プロダクトの指標を出す」というのを忘れてはいけません。最初に出したい「プロダクトの指標」を出しつつ、運用面で後々困らないように整えていく。そんな基本方針でデータ分析基盤を開発しています。前置きが長くなりました。上記のような基本方針のデータ分析基盤を作るにあたり、初心者だった自分が読んだ本を紹介します。どれも最初の章はデータ分析基盤についての初歩的な解説から書いてくれています。その部分を特に読み込み、データ分析基盤とはなんなのか?どんな用語があるのか?などをざっと洗いました。データ分析基盤に登場する各ワードは、正確な定義が存在していないらしく(?)各著者それぞれ微妙に意味合いが異なります。データレイクと一口に言っても、様々な意味がそこに込められる場合があります。言った時に、複数の本から知識を入れることで、概念としてこういうことなのか、というのがわかりました。エンジニアのためのデータ分析基盤入門gihyo.jpまずはじめに「エンジニアのためのデータ分析基盤入門」を読みました。最初に選んだ理由としては、何かに依存した知識ではなく、一般的な知識として知りたかったからです。この本では、データ分析基盤の歴史(シングルノードなど)から始まり、現在主流のクラウド型のデータ分析基盤についての解説が書かれています。データウェアハウスとデータレイクはデータを貯めておく場所で、それぞれの違いとしてはデータが分析のために整理されて置かれているかどうかくらいの違い、みたいなことがわかりました。データレイクにデータを集めるのにも、コレクティングレイヤーでデータを集中的に一箇所に集める。その後加工してデータウェアハウスに入れておく、などの大体の流れもわかりました。データ分析・システム基盤編」を選びました。選んだ理由としては、1冊目でざっくりと概要は把握したので、次はGCPのBigQueryを例にどのように実データを処理するのか、というのを知るためです。この本でも1章ではデータ分析基盤の概要について解説しています。GCPのことが主体の本なので、具体的にこういった処理ではGCPのこのサービスを使う、というように書いてあります。1章をざっと読むだけで、データ分析基盤をGCPで構築する際の概要が把握できるようになっています。2章からはハンズオン形式でBigQueryを実際に触ってみる内容になります。実際に手は動かしませんでしたが、スクリーンショットなどで大体は想像できますので、追体験できた気になりました。後半はGKEを使った構築が書かれていましたが、GKEを使うような規模でもないので読みませんでした。Cloudで始める実践データエンジニアリング入門」を選びました。選んだ理由として、2冊目よりも詳しくBigQueryについて書かれていると感じたからです。この本でも例に漏れず、1章ではデータ分析基盤の概要について書かれています。ここまで3冊読んできて、大体概要については同じことが書かれているため、より理解が深まりました。データ分析基盤に必要なデータウェアハウスとデータレイクの構築、それらを繋ぐETL処理とワークフロー管理、そしてセキュリティ関係やBIとの繋ぎこみの部分まで、GCPでデータ分析基盤を構築するのに必要な全てが書かれていました。これでGCPにおけるデータ分析基盤の構築はわかった気になりました。実践的データ基盤への処方箋gihyo.jp知識の総仕上げとして、1冊目以来の特定ツールに依存しないデータ分析基盤の作り方についての本として「実践的データ基盤への処方箋」を選びました。この本ではデータ分析基盤に必要なデータの整備、作り方、それを支える組織について書かれていました。組織について書かれているのはこの本だけだった気がします。データ分析基盤は常にセキュリティとの戦いです。データ分析基盤のセキュリティがガバガバだと、それだけで会社が終わる可能性があります。それらのセキュリティポリシーの策定などについて書かれており、今からデータ分析基盤チームを立ち上げる自分にはとてもマッチしていました。実際に、データ分析基盤のチームメンバーにはこちらの本を読むのをお勧めしました。この本は珍しく、データ分析基盤構築をAWSで解説してくれている本です。実は上記の4冊を読んでいる時点までは、データ分析基盤をGCPで構築する想定でいました。GCPの選定理由としては、「データ分析基盤と言えばBigQueryでしょ」との謎の思想があったためです。データ分析基盤の書籍にはGCPを利用したものが多数存在します。AWSの書籍は少ない傾向にあります。いった理由から、当初はGCPでの構築を想定していました。現在のインフラがAWSを利用していることや、AWSのソリューションアーキテクトに相談できる環境や運用面を考えて、現在ではAWSで構築中です。その為に、最後としてAWSでのデータ分析基盤構築をざっくり学ぼうと、この本を読みました。この本で、データレイクを構築するのに必要なAWSのサービスについて学べました。Formationを使い、データレイクを構築中です。さいごに全部で5冊の本を読んで、初心者だったデータ分析基盤の概要についてなんとか把握することができました。GCPについての本が多かったですが、基礎となる考え方はGCPもAWSもほぼ同じため、あまり問題ありませんでした。データ分析基盤が完成したわけではありません。これから運用面でハマるところなどあるかもしれませんが、なんとかチームで完成させたいと思います。データ分析基盤の構築に悩んでいる人がいたら、一緒に議論したいので、気軽にTwitterなどで話しかけてください。D1のローカル開発環境を構築するその殺人、本格ミステリに仕立てます。3はてなブログをはじめよう!henteko07さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。