「実践 Apache Iceberg」と「Apache Iceberg活用入門」は両方「今」読むとお得な2冊。

全国に数多いるIceberg愛好家の皆さん、こんにちは。
この記事は Iceberg - Qiita Advent Calendar 2025 - Qiita の2日目の記事です。

qiita.com

今年も Open Table Format(以降、OTF)は盛り上がりを見せ、今年は特にバッチ領域のデータレイクから、ストリーミング領域への適用がより進んできました。

とりわけ国内は、Icebergに関する本が2冊出版されました。こちらの2冊について、著者・出版社から献本を受けました。
また、とても嬉しいことに「Apache Iceberg活用入門」については、翻訳レビューアとして貴重な機会を得ました。

本来は個別に紹介記事を書くのが筋なのかもしれないのですが、あえて1本の記事にしました。
私はIceberg自体は2023年4月頃からハマりだし、PoCから本番運用含め2年近くの経験を踏まえ、この2冊について、Iceberg 導入を検討中 または 導入済みで運用設計を強化したいデータエンジニア・プラットフォーム責任者向けに紹介していきます!

Apache Iceberg活用入門」の紹介

まず1冊目は、 Apache Iceberg: The Definitive Guide の日本語訳版である「Apache Iceberg活用入門」です。

book.impress.co.jp

こちらはまさに待望の1冊ではなかったでしょうか。

翻訳・監修を行った蛯原さんや佐野さんは、本当に丁寧に翻訳を行っており、翻訳本特有の英語独自の表現を著者のカラーを崩さずに、日本人にも伝わりやすい表現となるように苦悩しながら調整したり、地味に認知負荷がゴリゴリ削られる「言葉の使い方や表記」の揺れも統一しているので、読みやすい訳になっていると考えます。

そして、この本は原著にない、「LINEヤフー社の国内の活用事例」やSQLクエリエンジンとして「Trino」や「Hive(最新のv4.1.0)」のハンズオンもあります。特にOTFではHiveを雑に扱われがちですがこれを読めば「Hiveやるやん!」ってなるのではないでしょうか。他にも、PyIcebergやIceberg Rustの紹介も盛り込まれていたりします。

他にも、「Apache Iceberg活用入門の原著 Apache Iceberg: The Definitive Guide は 2024/6 出版の本でIcebergが古い内容になっているから、実践 Apache Icebergで良いやん」って考える方もいるかもしれません。ただ、その点については、大事なところが 監修や補足で補われています。例えば、SparkやFlinkのハンズオンについてはIceberg v1.10 で補足してたりします。

「実践 Apache Iceberg」の紹介

次に2冊目は、完全オリジナルのIceberg本である「実践 Apache Iceberg」です。

gihyo.jp

べりんぐさん(疋田さん)が「Icebergの本書きたいなぁ」と言ってたのですが、田中さんと一緒に本当に実現するとは、流石の行動力です。

日本人による本なので、(当たり前だけど)翻訳本特有の分かりにくい文化的な背景とかそれに伴う表現が一切ないのがありがたいです。 内容についてもタイトルの「実践」とつくだけあり、とても濃い内容になっており、公式ドキュメントだけでは理解しにくかったところや、どう使えば良いのかについて踏み込んでおり、特に第3部の「ユースケースと応用」については、本番運用を控えている&している人にはうれしい内容だと考えます。

なぜ「両方」を「今」読むとお得なのか

では本題です。

なぜ「今」読むとお得なのか?

OTFの世界は変化が激しく、Icebergも例に漏れず、どちらの本もIcebergテーブル仕様は基本的に バージョン2 が前提ですが、Upstreamでは バージョン3の仕様が確定し、徐々に各エンジンで実装が進んでいます。その為、後からこれらの本を読んだ場合、内容が古くなってしまい誤った理解をする可能性が高まります。どちらの本でもバージョン3の仕様に関する話題はありますが、実装が整うのはまだ先です。

特にバージョン3の特徴的な機能である Deletion Vector、Row Lineage、新しい型(Unknown/VARIANT/Geo)、デフォルト値などは実装が整えば、運用の仕方に大きく影響するので、「今」のタイミングで読む事で、現状を正しくキャッチアップし、次に備えることが出来ます。

また、データ界隈の技術について、OTFの流れがひっくり返される事はとても考えにくいので、早めにキャッチアップしておいて損はないです。

なぜ「両方」読むとお得なのか?

まず、「Apache Iceberg活用入門」は原著にあるように、Icebergテーブルのプロパティやメンテナンスに重要なSparkプロシージャについてパラメータ含めて厚めに解説がある点です。ただ、「公式ドキュメントを機械翻訳したら良いやん」って考える方もいるかもしれないですが、ちゃんと中身を分かった人が理解しやすく解説されているので、本番運用するにあたり正しい解釈でプロパティやパラメータについて理解出来るのはとても心強いです。

逆に、「Apache Iceberg活用入門」だけでは不十分な点もあります。まず、「実践 Apache Iceberg」のクエリエンジンに関する説明が手厚いところです。特にSparkに関する内容については、Spark初心者が理解しにくいところがフォローされていたりします。他にも、FileIOの説明だったり、カラム統計情報、テーブルのモニタリングの話などについては本番運用の際はとても参考になります。また冒頭でも挙げましたが、第3部以降の内容が特に良いです。第9章の「ユースケースとソリューションパターン」は実務で利用する際のイメージが湧きやすいと考えます。また、第11章の「運用管理」のデータライフサイクルの説明はIceberg入門者にはとても理解しやすい内容になっていると考えます。その後のコンパクション、モニタリングについても同様です。

他にも第12章の「パフォーマンス最適化」についても上手くまとまっていて本番運用する際には必ず抑えないといけない点になっています。

個人的には、以下のようにして、1 → 2 の順で補完していくとIcebergについてより理解が深まると考えます。

  1. Apache Iceberg活用入門」でIcebergのアーキテクチャや抑えないといけないIcebergを「活用」するために必要な基礎を学ぶ
  2. 「実践 Apache Iceberg」で本番運用を想定した利用方法や運用といった「実践」的な内容を理解

最後に

いかがだったでしょうか。 どちらの本も両方買うには安くはないですが、これがきっかけでIcebergをより深く学ぶきっかけになれば幸いです。
以上、 Iceberg - Qiita Advent Calendar 2025 - Qiita の2日目の記事でした。

謝辞

「実践 Apache Iceberg」について、サンプルを献本してくれた田中さん、疋田さん、技術評論社様、ありがとうございます!

次に「Apache Iceberg活用入門」について、翻訳のレビューといった機会を与えてくださった蛯原さん、佐野さん、サンプルを献本してくれたインプレス様、ありがとうございます!

おまけ

個人的には以下の本も日本語版読みたい。。

www.packtpub.com

www.oreilly.com

www.oreilly.com

そして、こちらも良ければ参加お願いします!(結構空いてるので、、

qiita.com