「Apache Spark 3.1」では、70超のバグ修正とパフォーマンス改善によってSpark-on-Kubernetesが一般提供レベルに達し、本番環境で使えるようになった。
おもな機能追加および改善としては、ノードシャットダウン処理が改善され、スポットノードを使用する際の堅牢性とパフォーマンスが向上するとともに、グレースフルエグゼキューターが廃止される。また、マウント可能なボリュームオプションとして、NFSおよび動的に生成されたPersistentVolumeClaims(PVC)が追加されている。
そのほか、PySparkのドキュメントがよりPython的でユーザーフレンドリーに書き直されるとともに、タイプヒントにコード補完と静的エラー検出が搭載された。さらに、Spark History Serverが実行した構造化ストリーミングクエリに関する統計を表示するようになったほか、動的割り当てが有効になっているYARNおよびKubernetesデプロイメントでは、ステージレベルのスケジューリングに対応し、ステージの粒度で要求するエグゼキュータリソースの量とタイプをコードで制御できるようになっている。
また、シャッフルハッシュ結合のパフォーマンスを改善し、部分式除去と触媒オプティマイザに新たなルールが追加された。PySparkでは、メモリ内の列形式のApache Arrowバージョン2.0.0がバンドルされ、SparkとPandasのデータフレーム間でデータを変換するアプリの高速化が実現している。