Apache Spark 4.2 発表:AIネイティブ分析とデータガバナンスのマイルストーン
Apache Spark 4.2 は、モダンデータとAIスタックの中核機能をエンジンに組み込み、メトリックビュー、ベクトル検索、ArrowファーストのPython実行、自動変更データキャプチャ(CDC)、リアルタイムストリーミングなどの機能を導入し、Sparkを統一分析エンジンとしてさらに強化します。
Apache Spark 4.2が正式にリリースされ、モダンデータと人工知能スタックのより多くの中核機能がエンジン自体に組み込まれました。このリリースはSpark 4.xをベースに、ガバナンスされたメトリック、ベクトルおよびTop-Kプリミティブ、よりArrowファーストなPythonパス、ファーストクラスの変更データキャプチャ、そしてより強力なストリーミングと運用基盤を追加しています。
これらの改善により、SparkはAIアプリケーションの両側でより有用になります。AIエージェントに供給されるデータの品質と鮮度が向上し、アプリケーションやエージェントがSparkをリモート実行サービスとして呼び出すことが容易になります。Spark 4.2は、信頼できるセマンティクス、ネイティブ検索プリミティブ、新鮮な変更データ、そしてSpark規模の計算へのオープンインターフェースを提供します。
Spark 4.2の主な利点は以下の4つにまとめられます。
一度定義すればどこでも使用可能:メトリックビューはガバナンスされたビジネスメトリックをSparkに導入し、SQL、BIツール、アプリケーション、AIシステムが同じ定義を使用できるようにします。多くの重要なメトリックは安全に加算できず、比率、ユニークカウント、リテンションなどは、各コンシューマーが異なる粒度で数式を書き換えると誤った結果を生む可能性があります。メトリックビューはディメンションとメジャーをSparkが理解する第一級オブジェクトとし、エンジンが意図された集約セマンティクスを保持できるようにします。
どこからでもSparkにアクセス:Spark Connect、PySpark、Arrow、Pythonデータソースの改善により、SparkはサービスやPythonエコシステムからより簡単に呼び出せるようになりました。Spark ConnectはgRPCとArrowベースのプロトコルでクライアントとサーバーを分離し、クライアントは完全なSparkランタイムや同じJVMを必要とせずに論理プランを構築し結果を取得できます。Spark 4.2では、RDD API互換性の向上、DataFrame入力のサポート、デバッグ容易性の改善、エラー伝播、ステータス報告、YARNクラスタモードサポートなど、Spark Classicとの互換性ギャップをさらに縮小しています。
SQLでAIネイティブ分析を実行:ベクトル距離および類似度関数、ベクトル正規化、ベクトル集約、およびNEAREST BY(距離ベースのマッチングのためのTop-Kランキング結合)を追加し、検索、レコメンデーション、エンティティ解決、候補生成などのユースケースをサポートします。組み込みのGEOMETRYおよびGEOGRAPHYタイプとST_*関数により、外部の空間拡張なしで位置認識分析が可能です。さらに、完全修飾組み込み関数(SYSTEM.BUILTIN)および一時ビュー(SYSTEM.SESSION)、SQL検索パス(SET PATH)、カーソルサポート(DECLARE/OPEN/FETCH/CLOSE)、Tupleスケッチ、time_bucket時系列分析、QUALIFYウィンドウフィルタリング、Top-K集約(max_by/min_by)、IGNORE NULLSなどの機能が追加されました。
変化するデータを安全に移動:Spark宣言的パイプライン(SDP)にAuto CDCサポートが導入され、Python APIを使用してCDC変更をSCD Type 1ターゲットテーブルに適用し、削除や順序外れのイベントを自動的に処理します。リアルタイムモード(RTM)はPySparkに拡張され、ステートレスストリーミングクエリでミリ秒単位のエンドツーエンドレイテンシを実現します。今後のSpark 4.xリリースでは、新しいストリーミングシャッフル、並行ステージスケジューリング、ステートフルオペレーターサポートなど、ステートフルサポートが追加される予定です。Data Source V2(DSv2)はさらに進化し、ファーストクラスのCDCサポート、CHANGES SQL句、行レベルのDML、スキーマ進化、トランザクションAPI基盤、ストレージパーティション結合の最適化などが追加されました。
要約すると、Spark 4.2は組織が1つのオープンエンジンを使用してデータ準備、ビジネス意味定義、関連コンテキスト検索、分析およびAIアプリケーションの最新状態維持を行うことを支援します。これらの改善により、SparkはAI時代における統一されたスケーラブルでオープンなデータおよびAIワークロードの基盤としての役割をさらに強化します。