ビックデータ処理の「高速化」と「信頼性」を支える、数々のオープンソース技術はどう生まれたのか?
第4回:ビッグデータ処理最適化──レイクハウスを支える技術

今までの記事では、データウェアハウス/データレイクからレイクハウスに至った過程や役割の利用イメージについて論じてきた。本稿では、レイクハウスを構成するコンピュート、ストレージレイヤーの技術に焦点を当て、代表的なオープンソースのテクノロジーが生まれた背景やその概要について述べる。なお、レイクハウスとは何かについては第2回で述べているのでそこで確認してほしい。
データ利活用を妨げる課題「処理速度と信頼性」
データを活用して新たなビジネス価値を生み出す重要性は疑念の余地がないだろう。マッキンゼーが発表したレポートによるとデータに基づいた意思決定を行っている企業は、そうではない企業と比べて23倍顧客を獲得しやすく、19倍利益を生みやすいという。データに基づいた意思決定を行っている企業例としては、GoogleやAmazonなど「BigTech」と呼ばれる米国の企業が挙げられる。彼らはデータに基づいた意思決定を行っており、継続した企業成長を遂げているのだ。
どの企業も一刻も早く自社が保有しているデータを活用した意思決定を行い、ビジネス価値を創出したいと思うはず。一方でデータ活用にまつわる課題には枚挙にいとまがなく、ビジネス価値を創出するまでに行く手を阻まれることも多い。代表的な課題として「データの処理速度」と「データの信頼性」が挙げられるだろう。データの処理に数十時間または数日かかってしまうこともあり、データの信頼性が損なわれるようなデータ基盤はビジネス価値の創出を妨げている。次章以降ではこれらの課題を解決する、レイクハウスを構成する代表的なオープンソースの技術について述べる。
計算のムダを削ぎ落とす:MapReduceからSparkへ
ビッグデータ処理の技術として著名なものに「Apache Hadoop」がある。その基本となるコンポーネントの一つは分散データ処理基盤である「MapReduce」。MapReduceは、Googleが2004年に発表した論文に端を発しており、その後は旧Yahoo!(現、Yahoo)で開発が始まり、2006年にApache Hadoopとして発足したプロジェクトに組み込まれた。
MapReduceは広く受け入れられていたものの、複数の課題を抱えていた。一つは途中の計算結果をストレージに書き込んでしまうことで入出力に時間がかかること。処理によっては十数時間、酷い場合だと数日かかってしまうのだ。これはMapReduceが開発された時代には、処理するべきデータ量に対して小さいメモリしか使えなかったことに起因する。また、Hadoopはバッチ処理には向いていたものの、ストリーミングのユースケースや機械学習、SQLクエリのようなインタラクティブな処理には不向きであった。
そこでHadoopのMapReduceの欠点を解消した「MapReduceよりも使いやすくて速い」技術を目指し、データブリックスの創立者でもあるカリフォルニア大学バークレー校の研究員たちを中心として「Apache Spark」の原型が開発された。安価になったメモリの恩恵も受けたのに加え、メモリ上で途中の計算処理を保持することができることもあって、概してHadoopよりも高速にデータ処理を行うことができた。当初の論文では特定のタスクにおいてSparkはHadoopよりも10倍以上高速に処理ができることを示している。

また、処理速度、使いやすさ、高度な分析を行うための機能が充実しており旧Facebook(現、Meta)やNetflix、Yahoo、Baiduといったテクノロジー業界を代表する企業に採用されてきた。着実にデータエンジニアたちに受け入れられて市民権を獲得してきており、少し古い数字ではあるが、2021年8月時点で月間ダウンロード数が2000万を超える人気のオープンソースプロジェクトとなっている。

上記に加えてSparkは、ScalaやPython、SQLといったプログラミング言語で開発ができ、ストリーミングや機械学習、SQLを使ったインタラクティブな分析などデータとAIに関わるすべてのユースケースに対応。そのため、エンジニア、データサイエンティスト、データアナリストといった幅広いペルソナにとって使いやすいフレームワークである点が特徴だ。下図はSparkがサポートしているプログラミング言語とユースケースを表している。

その後もストリーミングデータ処理に端を発した「Apache Flink」などが生まれて、ビッグデータ処理技術は日々進歩している。それでも先に世間に浸透していたこともあり、Sparkは現在でもビッグデータ分析の世界においてはデファクトスタンダードになっていると言えるだろう。

この記事は参考になりましたか?
- Databricksと見る、データ×AIの世界連載記事一覧
-
- 「非構造化データ」の活用が進まない2つの理由──企業に眠る、膨大な“金脈”を活かす糸口を探...
- 「MLOps」の考え方とは?──機械学習が“当たり前”の時代になる前に知っておきたいこと
- ビックデータ処理の「高速化」と「信頼性」を支える、数々のオープンソース技術はどう生まれたの...
- この記事の著者
-
新井 康平(アライ コウヘイ)
一橋大学を卒業後、アクセンチュア株式会社デジタル部門に入社。金融、エネルギー、メディアなどの業界においてビッグデータ分析基盤や機械学習パイプラインの構築・運用に従事。その後、オービタルインサイトにおいてAPAC地域を管掌するソリューションエンジニアとして、衛星画像を使った物体検出や位置情報データ(携...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア