StarRocks is an Apache-2.0, Linux Foundation open query engine written in Java that delivers sub-second ad-hoc and multi-dimensional analytics both on and off the data lakehouse, built for data platform teams, analytics engineers, and BI users who need fast SQL over large distributed datasets without moving data or rewriting SQL.
What it is
StarRocks is a distributed SQL query engine that runs on a streamlined two-module architecture: Frontend (FE) and Backend (BE). The system removes single points of failure through horizontal scaling of FE and BE together with replication of metadata and data. Since version 3.0 it also supports a shared-data architecture that provides better scalability and lower cost. It speaks standard ANSI SQL, is compatible with the MySQL protocol, and supports fully both TPC-H and TPC-DS, so existing clients and BI software can connect to it without custom drivers. A cost-based optimizer (CBO) plans complex queries, and the engine uses vectorization to exploit parallel CPU capacity.
The concrete problem it solves is the preparation tax that normally precedes analytics. StarRocks eliminates the need for denormalization, so teams do not have to reshape tables into wide flat structures before they can query them, and it adapts to use cases without requiring data to be moved or SQL to be rewritten. It queries data directly from Apache Hive, Apache Iceberg, Delta Lake, and Apache Hudi without importing, which means the lakehouse stays where it is and StarRocks reads it in place. For teams previously running older query systems, the native vectorized engine returns sub-second results in multi-dimensional analyses that were 5 to 10 times slower before.
Key capabilities
- Native vectorized SQL engine that uses parallel CPU computing power to achieve sub-second query returns in multi-dimensional analyses.
- ANSI SQL support with fully supported TPC-H and TPC-DS, plus MySQL protocol compatibility for existing clients and BI tools.
- Smart query optimization through a CBO (cost-based optimizer) that produces a better execution plan for complex queries.
- Real-time update model that performs upsert and delete operations according to the primary key while sustaining efficient queries under concurrent updates.
- Intelligent materialized views that update automatically during data import and are selected automatically when a query executes.
- Direct querying of data in Apache Hive, Apache Iceberg, Delta Lake, and Apache Hudi without importing it first.
- Resource management that limits query resource consumption and provides isolation and efficient use among tenants in the same cluster.
- Easy maintenance through a simple architecture: StarRocks tunes its query plan, balances resources on scale in or out, and recovers data replicas automatically after node failure.
Who uses it and how
- Teams running multi-dimensional analytics, real-time analytics, and ad-hoc queries over large distributed datasets, which are the three workloads the README names as its target scenarios.
- Analysts and BI users who connect through the MySQL protocol using existing clients and BI software rather than bespoke connectors.
- Lakehouse operators who keep data in Apache Hive, Apache Iceberg, Delta Lake, or Apache Hudi and query it in place without an ingestion step.
- Multi-tenant platform groups that share one cluster and rely on resource management to isolate and allocate resources between tenants.
- Scaling deployments that grow FE and BE nodes horizontally, or adopt the 3.0 shared-data architecture when scalability and cost matter more than the original layout.
Getting started
The README routes new users to the Quick Starts guide and the Deploy documentation at docs.starrocks.io, which covers how to run and configure StarRocks. The contributing path also documents compiling StarRocks with Docker, deploying it manually, and setting up an IDE development environment.
How it compares
The facts name no paid products that StarRocks replaces, and they name no comparable query engines either, so no like-for-like comparison can be drawn here. It stands alone in this registry.
When to use it — and when not to
A self-hoster must operate a real cluster: FE and BE modules, replicated metadata and data, plus scale-out and node-failure recovery, all governed by the deployment documentation. Anyone wanting a single-node embedded database with no operational surface, or a team without capacity to run and tune a distributed system, should not pick it. The honest weaknesses in the facts are that the excerpt is truncated during the contributing section, no concrete package name, Docker image tag, or compose file is given for installation, and the repository carries 1,443 open issues.
project readme (upstream, from github) — read inline
Download | Docs | Benchmarks | Demo
StarRocks is the world's fastest open query engine for sub-second, ad-hoc analytics both on and off the data lakehouse. With average query performance 3x faster than other popular alternatives, StarRocks is a query engine that eliminates the need for denormalization and adapts to your use cases, without having to move your data or rewrite SQL. A Linux Foundation project.
Learn more 👉🏻 What Is StarRocks: Features and Use Cases,
Join StarRocks Summit 2025!
Features
- 🚀 Native vectorized SQL engine: StarRocks adopts vectorization technology to make full use of the parallel computing power of CPU, achieving sub-second query returns in multi-dimensional analyses, which is 5 to 10 times faster than previous systems.
- 📊 Standard SQL: StarRocks supports ANSI SQL syntax (fully supported TPC-H and TPC-DS). It is also compatible with the MySQL protocol. Various clients and BI software can be used to access StarRocks.
- 💡 Smart query optimization: StarRocks can optimize complex queries through CBO (Cost Based Optimizer). With a better execution plan, the data analysis efficiency will be greatly improved.
- ⚡ Real-time update: The updated model of StarRocks can perform upsert/delete operations according to the primary key, and achieve efficient query while concurrent updates.
- 🪟 Intelligent materialized view: The materialized view of StarRocks can be automatically updated during the data import and automatically selected when the query is executed.
- ✨ Querying data in data lakes directly: StarRocks allows direct access to data from Apache Hive™, Apache Iceberg™, Delta Lake™ and Apache Hudi™ without importing.
- 🎛️ Resource management: This feature allows StarRocks to limit resource consumption for queries and implement isolation and efficient use of resources among tenants in the same cluster.
- 💠 Easy to maintain: Simple architecture makes StarRocks easy to deploy, maintain and scale out. StarRocks tunes its query plan agilely, balances the resources when the cluster is scaled in or out, and recovers the data replica under node failure automatically.
Architecture Overview
StarRocks’s streamlined architecture is mainly composed of two modules: Frontend (FE) and Backend (BE). The entire system eliminates single points of failure through seamless and horizontal scaling of FE and BE, as well as replication of metadata and data.
Starting from version 3.0, StarRocks supports a new shared-data architecture, which can provide better scalability and lower costs.
Resources
📚 Read the docs
❓ Get support

Contributing to StarRocks
We welcome all kinds of contributions from the community, individuals and partners. We owe our success to your active involvement.
- See Contributing.md to get started.
- Set up StarRocks development environment:
- Understand our GitHub workflow for opening a pull request; use this PR Template when submitting a pull request.
- Pick a good first issue and start contributing.
📝 License: StarRocks is licensed under Apache License 2.0.
👥 Community Membership: Learn more about different contributor roles in StarRocks community.
💬 Developer Group: Please join our Google Groups to discuss StarRocks features, project directions, issues, pull requests, or share suggestions.
Used By
This project is used by the following companies. Learn more about their use cases: