← Back to all announcements
★★★☆☆ 09/06/2026

Run Interactive Workloads on Amazon EMR Serverless with Spark Connect

Develop PySpark interactively in VS Code or Jupyter against serverless Spark—no cluster management, with per-session cost tracking.

View original announcement →

Visual Summary

graph TD A{{EMR Serverless Spark Connect}}:::announced B((Developer IDE)):::external C(SageMaker Unified Studio):::compute D([Persistent Spark Context]):::feature E([Per-Session Cost Tracking]):::feature F(Spark Driver & Executors):::compute G([Spark UI Monitoring]):::feature H(Amazon S3):::storage I([IAM Access Control]):::feature B ==>|"connects via"| A C ==>|"native integration"| A A -->|"provisions"| F A -->|"enables"| D A -->|"provides"| E F -->|"reads/writes"| H A -.->|"observability"| G A -->|"governs"| I classDef announced fill:#ff9900,stroke:#ec7211,color:#fff,font-weight:bold classDef compute fill:#e3f2fd,stroke:#1565c0,color:#1565c0 classDef storage fill:#e8f5e9,stroke:#2e7d32,color:#2e7d32 classDef feature fill:#fff3e0,stroke:#e65100,color:#e65100 classDef external fill:#f5f5f5,stroke:#616161,color:#616161

What's New

Amazon EMR Serverless now supports interactive sessions via Apache Spark Connect, allowing data engineers and scientists to develop and run PySpark applications directly from local IDEs (VS Code, PyCharm, Jupyter) or managed notebooks in Amazon SageMaker Unified Studio without managing Spark infrastructure. The feature introduces a persistent Spark context that spans notebook cells and scripts, blending local Python execution with remote Spark operations on serverless compute. Available starting with EMR release 7.13, it also delivers granular per-session cost visibility and real-time observability through the Spark UI and EMR console.

How It Works

  • Client-server architecture via Spark Connect: The Spark Connect protocol decouples your local PySpark client (IDE or notebook) from the Spark driver process running on EMR Serverless, so application code and Spark infrastructure operate independently.
  • Session lifecycle management: When you invoke StartSession, EMR Serverless provisions a dedicated Spark driver and executors; each session receives a unique endpoint URL and authentication token used to establish the connection.
  • Persistent Spark context: The session remains alive across multiple cells, scripts, and queries until explicitly terminated or an idle timeout is reached, eliminating the cold-start overhead of restarting Spark between operations.
  • Local + remote execution blend: Local Python logic executes in your client environment while DataFrame transformations and SQL operations are serialized and dispatched to the remote Spark driver, then results are returned to the client.
  • IAM-based access control: New fine-grained IAM permissions (emr-serverless:StartSession, GetSessionEndpoint, TerminateSession, etc.) govern who can create, inspect, and terminate sessions, plus iam:PassRole for the execution role.
  • Observability stack: Real-time monitoring is available via the Spark UI (accessible through emr-serverless:GetResourceDashboard), historical job tracking via the Spark History Server, and session management through the EMR console, API, CLI, or SDK.
  • SageMaker Unified Studio integration: Managed notebooks within SageMaker Unified Studio connect natively to EMR Serverless interactive sessions, providing a fully integrated data and ML development environment without manual endpoint configuration.

Why It's Important

  • Eliminates the infrastructure management tax for interactive workloads: Previously, running interactive Spark sessions required provisioning and maintaining persistent EMR clusters; serverless removes that burden while retaining the full Spark engine.
  • Dramatically shortens the inner development loop: Developers can iterate on PySpark logic cell-by-cell against production-scale data without redeploying batch jobs, reducing the time from idea to validated code.
  • Enables true IDE-native Spark development: Setting breakpoints, stepping through PySpark code, and inspecting DataFrames in VS Code or PyCharm against live remote data was not previously possible with EMR Serverless.
  • Granular cost attribution per session: Per-session cost and usage visibility allows teams to track spending at the individual developer or experiment level, enabling chargeback models and tighter cost governance.
  • Bridges the gap between exploration and production: Incremental job development in an interactive session on the same EMR Serverless runtime used for batch production reduces environment parity issues and accelerates promotion to production.
  • Unified data + AI development in SageMaker Unified Studio: Combining EMR Serverless Spark compute with SageMaker's AI/ML tooling in a single interface supports end-to-end workflows from raw data exploration to model training without context switching.

How It's Different

  • vs. EMR Serverless batch jobs: Batch jobs require a full job submission and cluster teardown per run with no persistent context; interactive sessions maintain a live Spark driver across multiple operations, enabling iterative, stateful development.
  • vs. EMR on EC2 / EMR on EKS interactive notebooks: Those options require you to provision, size, and manage persistent clusters or node groups; EMR Serverless auto-scales and bills only for actual compute consumed per session.
  • vs. Amazon Managed Service for Apache Flink or Glue interactive sessions: AWS Glue interactive sessions offer a similar serverless notebook experience but are tied to the Glue runtime and catalog; EMR Serverless Spark Connect uses the full EMR Spark runtime (7.13+) with broader library and configuration compatibility.
  • vs. self-hosted Spark Connect on Kubernetes: Running Spark Connect on self-managed Kubernetes requires cluster provisioning, networking, and security configuration; EMR Serverless handles all of this and adds native AWS IAM authentication and console observability.
  • vs. Databricks interactive clusters: Databricks provides a similar interactive notebook-to-Spark experience but within a proprietary platform; EMR Serverless Spark Connect delivers comparable interactivity within the AWS-native ecosystem with standard open-source tooling.
  • Per-session endpoint isolation: Each session gets its own endpoint URL and auth token, providing stronger isolation between concurrent users or experiments compared to shared notebook kernels on a single cluster.

When to Prefer It

  • Ad hoc data exploration on large datasets: When analysts need to run exploratory queries against S3-resident data at scale without provisioning a cluster, interactive sessions provide on-demand Spark compute with no idle cost.
  • Iterative PySpark job development: When building a new ETL pipeline, developers can write and test individual transformation steps cell-by-cell, inspecting intermediate DataFrames before assembling the final production job.
  • IDE-based debugging of complex Spark logic: When a PySpark job produces unexpected results, engineers can use VS Code or PyCharm breakpoints to step through DataFrame operations against real data rather than relying on log analysis alone.
  • Multi-user notebook environments with cost isolation: When multiple data scientists share an EMR Serverless application and per-user cost tracking is required, the per-session billing granularity enables accurate chargeback.
  • Unified AI/ML and data engineering workflows in SageMaker Unified Studio: When teams want to perform feature engineering with Spark and then immediately feed results into SageMaker model training within a single project environment.
  • Pre-production validation before batch job deployment: When a batch PySpark job needs to be validated against production-scale data before scheduling, an interactive session on the same EMR Serverless runtime provides high-fidelity testing without a separate cluster.
  • Organizations standardizing on serverless compute: When an organization wants to eliminate all persistent Spark cluster management, interactive sessions extend the serverless model to cover the previously cluster-dependent interactive development use case.

Availability

  • General Availability (GA): Spark Connect on Amazon EMR Serverless is generally available as of June 9, 2026, with EMR release 7.13 and later.
  • Regional availability (EMR Serverless): Available in all AWS Regions where Amazon EMR Serverless is currently supported.
  • Regional availability (SageMaker Unified Studio integration): The SageMaker Unified Studio notebook experience is available in 15 regions: US East (N. Virginia), US East (Ohio), US West (Oregon), Europe (Ireland), Europe (Frankfurt), Europe (London), Europe (Paris), Europe (Stockholm), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Mumbai), Canada (Central), and South America (São Paulo).
  • Pricing model: Billed on the standard EMR Serverless consumption model (vCPU-hours and GB-hours for driver and executor resources); per-session cost visibility is provided in the EMR console for granular tracking.
  • Client compatibility: Supported from any PySpark client including VS Code, PyCharm, Jupyter notebooks, and SageMaker Unified Studio managed notebooks; requires the PySpark library compatible with Spark Connect on the client side.
  • Considerations and limitations: Certain Spark features that rely on direct driver-side execution (e.g., RDD APIs, SparkContext-level operations) may have limitations under the Spark Connect client-server model; refer to the EMR Serverless Interactive Sessions User Guide for the full list.

Tags

Servicesother-aws
Typenew-featurega-launch
Conceptsmlopsdata-analytics
Use Casesdeveloper-toolsdevops
GeographyGlobal

Related Resources

AI Radar AWS

AWS AI/ML news — curated, researched, explained

An automated intelligence platform that curates, researches, and analyzes AWS AI/ML/GenAI announcements daily. Every report is backed by real research — the system reads linked blog posts and documentation to provide accurate, in-depth analysis.

How Each Report Is Generated

  1. Collection — Daily monitoring of the AWS "What's New" RSS feed
  2. Filtering — AI-powered relevance detection for AI/ML/GenAI topics
  3. Taxonomy Tagging — LLM-based classification across 6 dimensions
  4. Importance Scoring — Point-based system with tag bonuses (1-5 stars)
  5. Research Phase — Follows links to blog posts and documentation
  6. Report Generation — Claude Sonnet produces structured 6-section analysis
  7. Visual Summary — Claude Opus generates Mermaid diagrams for key items
  8. Publishing — Static website rebuilt and deployed via CloudFront

Features

  • Faceted filtering by service, type, concept, and more
  • Multi-dimensional taxonomy with 80+ tags across 6 dimensions
  • Geographic availability badges (Global, APJ, EMEA, AMER) with filtering
  • Timeline visualization of announcement volume
  • PDF export for offline reading
  • Mermaid visual summaries for key announcements
  • Daily automated updates — no manual curation
What makes this different: Each report involves a dedicated research phase where the system reads linked blog posts and AWS documentation pages. This produces analysis that goes beyond the original announcement text.

Technology

Built with Python, AWS Lambda, Amazon Bedrock (Claude Sonnet 4.6, Opus 4.6, Haiku 4.5), S3, CloudFront, WAF, EventBridge, and CDK.

Open Source

This project is open source. Fork it, customize it for your needs, and deploy your own instance.
📦 github.com/bbonik/ai-radar-aws

How Importance Scoring Works

Each announcement receives a point score based on multiple factors. The total score maps to a 1-5 star rating:

1★ < 2 pts 2★ ≥ 2 pts 3★ ≥ 3.5 pts 4★ ≥ 5 pts 5★ ≥ 6.5 pts

Point Breakdown

FactorPointsWhen
Core AI service (Bedrock, AgentCore, SageMaker AI)+4Service named in title
Key AI service (SageMaker, Kiro, QuickSight)+2Service named in title
Other AI-related service+1Default
Blog post link+3Link to aws.amazon.com/blogs/
GitHub samples link+2Link to github.com/aws*
Documentation link+1Link to docs.aws.amazon.com/
New model+1.5Tagged as "new-model"
New service+1Tagged as "new-service"
New feature+0.5Tagged as "new-feature"
Anthropic / OpenAI provider+2Provider explicitly mentioned
Instance / notebook announcement-2Hardware/capacity, not feature
Performance / pricing / security-0.5Incremental updates
Region expansion to APJ+1Expands to Asia Pacific
Region expansion (non-APJ only)-1.5Only expands to other regions

Geographic Relevance Badges

Each announcement card shows a small badge indicating whether the feature is available in your region:

🌐 Global Available in all regions
🌏 APJ Asia Pacific
🌍 EMEA Europe / Middle East / Africa
🌎 AMER Americas (US, Canada, South America)
No badge Geography unknown
How geography is detected: The system detects ALL geographies mentioned in each announcement. If the text mentions specific regions (Tokyo, Frankfurt, Oregon, etc.), the corresponding geography badges are shown. If it says "all regions" or is a new feature with no region specified, it gets the Global badge. Geography is also filterable — click a geo chip to see only announcements available in that region.