Sparkがもたらすビジネス革新 - データドリブン・ソリューションの迅速な展開
スピーカー:Director of Marketing, IBM Analytics, IBM Corporation, Joel Horwitz氏
このセッションの資料が こちらのページ からダウンロードできます。
2015年6月、米IBMはApache Sparkへの投資を発表した。3500名の研究員を割り当てることや、同社の機械学習ツール「IBM SystemML」のオープンソース化などが盛り込まれていた。登壇したHorwitz氏は、この背景には何があるのか、Sparkがどのような可能性を秘めているのか、今後データドリブンとなるソリューションはどう展開していくのかについて解説した。
![Director of Marketing, IBM Analytics, IBM Corporation, Joel Horwitz氏](http://cz-cdn.shoeisha.jp/static/images/article/9125/Horwitz.jpg)
Horwitz氏は冒頭にIBMと技術への投資の歴史を振り返った。IBMがこれまで各方面に向けて技術投資をしたなかで大きなものが3つあるという。まず1つは1964年のSystem 360。ここから周辺ソリューションや情報サイエンスが生み出された。次に1999年のLinux。ここから500種類以上のサーバーソリューションが生み出された。これらはIBMの中でも重要かつ転換点となる投資だったという。そして、2015年にIBMが発表したのがApache Sparkへの投資である。System 360やLinuxへの取り組みに並ぶものとして掲げたことからも、IBMがApache Sparkに相当な熱意や期待を抱えていると見ていいだろう。
IBMはSparkを「アナリティクス用のOS」と目している。Sparkは多様なデータ環境に対応し、また処理と開発の高速化に寄与するため、分析用のプラットフォームに向いているというのがIBMの見方である。ほかにも、Horwitz氏は、開発者コミュニティで急速に成長していることや、先進的な分析ソリューションを開発するときのハードルが低くなること、機械学習ライブラリが提供されていることなどもSparkの利点として紹介。その上で、「IBMはSparkと連携することで、IBMの各種プラットフォームのコアに組み込んだり、Bluemix上のサービスとして販売するなどの施策で、顧客のニーズを満たしていく」(Horwitz氏)と意気込みを露わにした。
先述したIBMの6月の発表では、Spark Technology Centerを開設してデータサイエンス新興のためのコミュニティ形成にも取り組むというのもあった。この施設は11月に完成した。場所は米国・サンフランシスコにある。また、時期は前後するが、IBMはSparkのマネージドサービス「IBM Analytics for Apache Spark」を10月27日より提供している。
IBMでは、以前よりHadoop関連システムとして「IBM BigInsights for Apache Hadoop」を提供している。また、IoT分野で用いられる「IBM Infosphere Streams」もある。これらには今後、Spark技術が採り入れられていくのだという。ほかにも、SparkはInformixやDB2などのデータ管理ソリューションとも多様な形で連携していくことが予定されているとHorwitz氏。つまり、今後SparkはIBMのあらゆる製品やサービスに組み込まれていくということである。
最後にHorwitz氏は「IBMはお客様の既存の投資に最新のオープンなハイブリッド機能を統合できる環境を提供します。Sparkと連携することで、データサイエンスとデータエンジニアリングをサポートする先進ソリューションを提供します」と話した。
SystemMLによる機械学習について
スピーカー:Software Developer, Spark Technology Center, Arvind Surve氏
このセッションの資料が こちらのページ からダウンロードできます。
このイベントには、IBMのSpark Technology Centerから2名のSparkエキスパートがわざわざ来日し、Sparkに関する最先端かつ高度な解説を行った。トップバッターはArvind Surve氏である。
Surve氏はまず「SystemML」に触れた。MLはマシンラーニングを表し、IBMがオープンソース化を発表した機械学習ツールである。IBMのアルマデン研究所から開発が始まり、2010年ごろからスケーラブルな環境に対応するようになってきた。
![Software Developer, Spark Technology Center, Arvind Surve氏](http://cz-cdn.shoeisha.jp/static/images/article/9125/Surve.jpg)
用途として、Surve氏は自動車製造業を例に挙げた。修理の履歴や診断結果などのデータを分析することで、顧客がいつごろ車を買い換えるかを予測するとしよう。このような条件では高度なセマンティックスや柔軟性などが必要になってくる。
現状では、データサイエンティストは自身のコンピュータに必要なデータを取り込み、RやPythonといった言語で分析することが多い。しかし、分析に必要なデータが大容量となると、自身のコンピュータに取り込んで処理することができなくなる。また、ビッグデータを用いるとなると、データサイエンティストはHadoopやSparkのプログラマを通じてプログラムを書くことになり、スキルのあるエンジニアの関与が必要となっている。
「IBMは機械学習が宣言的な言語の仕組みを使ったフレームワークで実行できることを目指している」とSurve氏はいう。「データサイエンティストはどの分析言語を用いようと、クエリは最適化されて各種データソースにアクセスできるようにする」(Surve氏) そのため、SystemMLにおいてはフロントエンドから複数の実行環境へのアクセスに、コストベースのオプティマイザを用いるというアプローチをとっている。多様な言語と多様な環境をつなぐ鍵となるのが、SystemMLのオプティマイザであるというわけだ。
現在、SystemMLのソースコードはGitHubのリポジトリ「SparkTC/systemml」から入手できる。