StarRocks

OLAP

StarRocks is a distributed relational DBMS designed for data warehouse workloads.

Foreign Keys

Supported

StarRocks uses foreign keys for performance enhancements, while users can declare foreign keys, but they are not enforced.

Indexes

BitMap Inverted Index (Full Text)

StarRocks supports a wide range of secondary indexes, including prefix index, bitmap index, bloomfilter index, n-gram index, inverted index, and ANN (Approximate Nearest Neighbor) indexes.

Joins

Nested Loop Join Hash Join Broadcast Join Shuffle Join

StarRocks is MPP and is able to perform in-memory data shuffling.

Parallel Execution

Intra-Operator (Horizontal)

Query Compilation

JIT Compilation

StarRocks uses vectorization without query compilation globally. Its expression uses JIT compilation.

Query Interface

SQL

Storage Architecture

Disk-oriented Hybrid

Storage Format

Apache Iceberg Apache Hudi Custom

StarRocks has its own storage formats and can directly query data stored in Apache Hudi, Apache Iceberg, Delta and Paimon formats.

System Architecture

Shared-Nothing Shared-Everything

User-Defined Functions

Python Java

Views

Virtual Views Materialized Views

StarRocks Materialized View supports multi-table queries and can perform query rewrites during query execution.

StarRocks Logo
Website

https://www.starrocks.io

Source Code

https://github.com/StarRocks/StarRocks

Tech Docs

https://docs.starrocks.io

Twitter

@StarRocksLabs

Developer

StarRocks Labs

Country of Origin

CN

Start Year

2021

Project Type

Commercial, Open Source

Written in

C++, Java

Derived From

Doris, Impala, Kudu

Embeds / Uses

Berkeley DB

Compatible With

MySQL

Operating Systems

Linux

Licenses

Apache v2