lakehq/sail

Drop-in Apache Spark replacement written in Rust, unifying batch processing, stream processing, and compute-intensive AI workloads.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 25 minutes ago
Added to GitGenius on September 20th, 2026
Created on December 21st, 2023
Open Issues & Pull Requests: 288 (+0)
GitHub issues: Enabled
Number of forks: 219
Total Stargazers: 3,382 (+0)
Total Subscribers: 20 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 6.5 hours
Mean response time: 34.0 days
90th percentile: 107.3 days
Tracked items: 374

Most active contributors

Sign in to see contributor activity.

How this project is maintained

About 10% of issues opened in the past year have never received a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. 53% of tracked open issues have had no activity in three months. 66% of issues opened in the past year have been closed, leaving a working backlog. Three people close 83% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 145
New in 7 days: 6
Closed in 7 days: 1
Avg open age: 319 days
Stale 30+ days: 124
Stale 90+ days: 97

Recent activity

Opened in 7 days: 4
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • help wanted (57)
  • good first issue (45)
  • non-trivial (21)
  • bug (15)
  • high priority (10)
  • epic (8)
  • enhancement (7)
  • documentation (2)

Detailed Description

Sail is a drop-in Apache Spark replacement written in Rust that unifies batch processing, stream processing, and compute-intensive AI workloads.

Spark has become the standard for distributed data processing, but its JVM foundation creates overhead and complexity when handling modern workloads that blend traditional analytics with machine learning. Sail addresses this by reimplementing Spark's core functionality in Rust, leveraging the language's performance characteristics and memory safety guarantees. The tool maintains API compatibility with Spark, allowing existing Spark code to run with minimal changes while benefiting from Rust's efficiency. It integrates with Apache Arrow for columnar data handling, supports Apache Iceberg and Delta Lake table formats, and uses DataFusion as its query execution engine.

Teams should consider Sail if they are already committed to the Spark ecosystem but want to reduce resource consumption and latency, particularly for workloads that combine batch analytics, streaming, and AI inference. The drop-in replacement approach means minimal migration effort for projects with established Spark pipelines. Sail supports PySpark for Python users and implements Spark Connect, enabling remote execution and language-agnostic client access. This makes it suitable for organizations looking to modernize their data infrastructure without rewriting applications.

The project shows active development with regular commits across its core components. Work spans the query engine, distributed execution framework, and integrations with major data formats and table systems. The codebase demonstrates sustained effort on both foundational infrastructure and feature completeness to maintain Spark compatibility. Development activity indicates ongoing refinement of the Rust implementation and expansion of supported workload types.