メジャーアップデート版となる「Apache Spark 2.0」リリース、APIや性能が強化されSQL2003にも対応

 クラスタコンピューティングフレームワーク「Apache Spark」の開発チームは7月26日、最新版となる「Apache Spark 2.0」をリリースした。SQL 2003のサポートが加わり、APIの使い勝手の向上や性能の強化などが加わった。

 Apache Sparkは大規模なデータ処理向けの高速な汎用エンジン。Apache Spark 2.0は2014年5月の「Apache Spark 1.0」に続くメジャーアップデートとなる。なお、バージョン1系では1月にバージョン1.6がリリースされている。

 APIの安定性を強化し、2系のすべてのリリースで実験的ではないAPIの安定性を保証する。1系とほぼ同じだが、一部後方互換性のない変更があると注意している。新しいAPIとして、構造化データにアクセスする手法であるDataFrameとDatasetをマージしたSparkSessionなどが挙げられている。SparkSession向けの設定APIもある。

 SQLではSQL2003をサポートし、全99種のTPC-DSクエリを動かせるようになった。ANSI-SQLとHive QLの両方をサポートするネイティブSQLパーサー、ネイティブDDLコマンドの実装なども強化点となる。

 Databricksのspark-csvモジュールを土台としたネイティブCSVデータソース、キャッシュとランタイム実行向けのオフヒープメモリ管理などの機能も加わった。性能では、新しいテクニックにより、SQLとDataFramesにおける一般的な演算が2~10倍高速になるという。Parquetスキャン、ORCについても性能を強化し、Catalystクエリ最適化も強化した。

 また、Structured Streamingの実験的リリースも盛り込んだ。Spark SQLとCatalyst最適化上のハイレベルストリーミングAPIで、ユーザーはDataFrame/Dataset APIを使ってストリーミングソースに対してプログラムを書くことができる。

 Apache Spark 2.0はプロジェクトのWebサイトより入手できる。

Apache Spark
http://spark.apache.org