Sparkが注目を集めている。Hadoopがデータ分析基盤のデファクトスタンダードとして定着した今、なぜSparkが登場したのだろうか。田中裕一氏(右)Hadoopの登場により本格的なビッグデータ時代が到来ビッグデータ分析や機械学習など、大規模データ処理のベースとなるのが分散コンピューティング技術である。以前の分散コンピューティングアーキテクチャは多くの課題を抱えていた。一つはプログラムが高度化・複雑化してしまうという問題だ。データの同期や分散・並行処理においては、独自に機能を実装しなければならず、その傾向が顕著であった。対象のデータを1か所にまとめて格納しなければならない中央集中型のアーキテクチャが多く、ネットワークを介して大量のデータを転送する際に大きな負荷・長い時間がかかってしまう。複数台のサーバで並列処理を行うために、全体的に見るとサーバ単体で稼動する小規模システムより障害率が高くなるといった問題もあった。した課題を解決する新技術として登場したのが「Hadoop」だ。オープンソースの分散コンピューティングミドルウェアであるHadoopは、ユーザに並列・分散を意識させないフレームワークを提供しており、ユーザはアプリケーションの開発に専念できる。従来の中央集中型とは異なり、データを1か所にまとめることなく複数のサーバに分散して格納し、格納場所での処理が可能であるため、データ転送の負荷が発生しない。ノード追加により処理容量を容易に増やせる上、ノードに障害が発生してもシステム全体は停止せず、複製によりデータが保護されるなど、スケーラビリティ、耐障害性にも優れている。Computing)がなくても複数のサーバを使って、これまでは不可能・非現実的と思われていた容量・頻度でデータを処理できる。スパコンに投資できない企業でも、安価に大規模データ処理が可能になるということだ。Hadoopが本格的なビッグデータ時代の到来を大きく後押ししたと言っても過言ではないだろう。高度な処理への要望から生まれたSparkかつては、広告やネット系企業向けの技術というイメージが強かったHadoopだが、データの分析・活用の範囲が大きく広がる中、今では金融、製造、ヘルスケアなど数多くの業界でデータ活用のための技術として活用されている。活用が進むにつれ、新たな課題が見えてきた。Hadoop技術は、大容量のデータを処理できること、つまりスループットを重視した設計であるため、データ処理の際のレイテンシが比較的高く、機械学習などの繰り返し処理を多く含む処理では時間がかかるという課題だ。スケールアウトによるシステム増築の結果サーバ台数が増加し、運用が複雑になりがちといった課題も出てきた。そんな中、大規模データ処理をより速く短時間で行いたい、トライ&エラーでより手軽にデータ活用を模索したいといった新たな要件も出てくることになったのである。BigInsights)技術を活用していち早く実現。Hadoopによりデータの分析・活用の範囲が広がり、製造業、金融などの多くの分野で取り組みが始まっている。欧州PSAプジョー・シトロエン社での事例Sparkは、こういった状況を背景にカリフォルニア大学バークレー校のAMPLabによって開発され、のちにオープンソースとして公開された。Graph)というプログラミングモデルを採用し、オンメモリでデータ処理を行うことで、高速化を実現している。近年メモリ単価が大きく下がっており、以前よりも低いコストで大容量のメモリを利用できるようになったことも、Sparkが注目を集めた理由の一つとなっている。Core」と、その上で動作する各種機能のライブラリで構成される。Streaming」、機械学習機能の「MLlib」という4つの標準ライブラリのほか、必要に応じて他のライブラリを組み合わせて利用することが可能だ。分散処理を記述するために80以上の演算子が用意されており、Java、Scala、Python、Rで容易にプログラムを作成できる。Spark」登場の背景と、押さえておきたい活用ポイント』(PDF)の全文は、こちらから無料で入手いただけます。期間限定公開のため、ぜひお早めにダウンロードしてください。ナオミ)SE、通信教育講座の編集、IT系出版社の書籍編集を経てフリーランスへ。IT分野で原稿を書いたり編集したり翻訳したり。圧縮・解凍UNIX基本講座@CodeZine『CodeZine(コードジン)』の公式アカウントです。【NEW】デブスト2019デブサミ2019福岡・関西デブサミ2019夏デブスト関西デブサミ2019×ログインEメールパスワード※旧SEメンバーシップ会員の方は、同じ登録情報(Eメール&パスワード)でログインいただけます。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。