本書は、より多くのビジネス成果を生み出す「データ分析基盤」(data platform for analytics/data analytics platform, データ基盤)の構築/運用の知識を平易にまとめた本です。
データ分析基盤とは、すでに社内外に存在する各種システムのデータを統合し、ビジネス成果の創出をサポートするシステムのことです。
社内のシステムは大別すると、分析(レコメンドやSQLによるログ分析など)のために作られたシステムと、分析を主としないシステム(たとえば、動画配信やさまざまなWebサービス、勤怠管理システム)で成り立っています(本書では後者をスモールデータシステムと呼ぶ)。また、社外のシステムは、データ提供をサービスとして行っている企業や組織のシステムを指します。
データ分析基盤は分析のために作られたシステムであり、分析を主としないサービスや社外のシステムからのデータをデータ分析基盤の内部に蓄え、整形し、管理します。それらのデータをできる限り多くの人が利用できるようにして、データ活用(=ビジネス成果の創出)を進めていくための中心となるシステムでもあります。
このデータ分析基盤においてデータを集めたり、整形したり、データの管理をするなど、データ活用するまでの一連の作業が「データエンジニアリング」(data engineering)です。実際の開発現場では、このようなデータ活用する前4のステップに多大な時間がかかります。そこでは実に、80%以上もの時間をデータエンジニアリングに割いているとされています※。
見方を変えると、データエンジニアリングというデータ活用全体の80%を占めるプロセスを理解することにより、データ活用のアウトプットに影響する根幹を学ぶことができると言えるでしょう。
現在のデータエンジニアリングの立ち位置としては、パブリッククラウドやSaaS(Software as a service)の登場により、一部の単純なデータエンジニアリング(たとえば、サーバー構築や運用監視といったインフラ作業など)に割く時間が減っている感覚はある一方で、外部企業との連携の増加や組み合わせによるデータパイプライン(data pipeline)の複雑化、より多くの分析ユーザーとの関係を重視したシステム作りを求められるように変化してきています。
今回の改訂に合わせ本書では、時代の変化に対応し続けるデータエンジニアリングの基本を掴つかめるように、第0章と第9章を新設し大きく5つに分けて解説を行っています。
- 第0章:データ分析基盤と周辺知識
- 第1章~第4章:データ活用/データ分析基盤に関するベースとなる知識や技術
- 第5章~第7章:多くのユーザーを集め、より多くの成果を創り出せるデータ分析基盤を構築するための技術や開発方法
- 第8章:データ分析基盤における開発の方向性の定め方
- 第9章:第0章~第8章までの知識を活用した、データ分析基盤の設計における実践基礎
本書を通して、エンジニアやデータ分析に携わる方々をはじめ広くデータ活用を考えている方々が、新たなデータ分析基盤の構築やデータの利用価値を最大限に引き出す基盤の整備、データ分析基盤を取り巻く新たなしくみの創出にチャレンジをするきっかけにつながればうれしく思います。