DuckDB is a high-performance, embeddable, in-process analytical SQL database engine written in C++. It provides a full SQL dialect with vectorized execution, columnar storage, advanced compression (ALP, Chimp, dictionary, FSST), adaptive indexing (ART), and a rich optimizer with rule-based and cost-based transformations. The system is designed for OLAP workloads, supporting complex queries with window functions, recursive CTEs, pivot operations, and lambda expressions. It exposes multiple client APIs: a C API (v1 and v2), C++ library, Swift bindings, and a command-line shell. Extensibility is a first-class concern via a plugin system for table/scalar/aggregate functions, custom storage backends, and data format readers (Parquet, CSV, JSON, Arrow). The repository includes extensive benchmark suites (TPC-H, TPC-DS, ClickBench, LDBC, IMDB, recursive CTE) and a comprehensive test infrastructure. While primarily an application (database engine), it also contains research-grade components in query optimization, compression algorithms, and parallel execution, giving it a hybrid character.
This repository contains the complete source code for SQLite, a self-contained, high-reliability, embedded SQL database engine. The codebase implements a full SQL database system including a SQL parser (generated by the included Lemon parser generator), a bytecode virtual machine (VDBE) for executing prepared statements, a B-tree storage engine, a transaction manager with WAL and journaling, and a pluggable VFS (Virtual File System) layer for OS abstraction. The architecture is a monolithic C library designed for embedding into applications, with optional loadable extensions for full-text search (FTS3/4/5), R-tree spatial indexing, JSON processing, vector similarity search (vec1), and dozens of utility functions. Key entry points include the public C API defined in sqlite3.h, the command-line shell (shell.c), and the Tcl test harness. Data flows through the SQL parser to the query optimizer (where.c), which generates VDBE bytecode executed by the virtual machine, ultimately reading/writing pages through the pager and B-tree layers. External dependencies are minimal: only standard C library and optional ICU for Unicode support. The repository also includes extensive test suites, fuzz testing harnesses, and build systems for Unix, Windows, and WebAssembly.
Apache Spark is a distributed data processing framework. In production, it operates as a cluster computing platform where a Master daemon schedules computational tasks (spark-submit, spark-shell) across a pool of Worker daemons. The codebase reveals a massive monorepo architecture encompassing a core execution engine (RDD/DataFrame APIs, scheduler, shuffle), a sophisticated SQL query engine (Catalyst optimizer and execution engine), a machine learning library (MLlib/Spark ML), a streaming data API (DStreams), and a wide array of data source connectors (Parquet, ORC, Avro, Kafka, JDBC). The repository is primarily a software product, not a research project, evidenced by its extensive CI/CD pipelines, multi-language packaging (Python, R, Java), and operational tooling (History Server, Kubernetes/YARN integrations). It is actively maintained and represents the dominant platform in its ecosystem, though it carries significant internal complexity and legacy code (e.g., maintenance-mode MLlib, V1/V2 catalog duality).
H2 is a full-featured, embeddable SQL database engine written in pure Java. It operates as a JDBC driver supporting both embedded (in-process) and client-server (TCP, PostgreSQL wire protocol, web console) modes. The codebase implements a complete SQL parser, query optimizer, transaction engine with MVCC, multiple storage engines (MVStore, legacy PageStore), and a rich set of data types, functions, and compatibility modes for databases like MySQL, PostgreSQL, Oracle, and MSSQLServer. It also includes tools for backup, recovery, CSV import/export, and a web-based administration console. The architecture is modular: the `org.h2.mvstore` package provides a standalone B-tree based transactional key-value store, `org.h2.value` defines a comprehensive type system, and `org.h2.expression` offers an extensible expression and function framework. The repository is exhaustively tested with thousands of SQL scripts and unit tests covering concurrency, crash recovery, and cross-database compatibility. It is actively maintained, with recent commits and support for Java 21 virtual threads and GraalVM native-image.
Databend is an open-source, cloud-native distributed SQL query engine and data warehouse, built in Rust. It provides a full SQL interface for analytical workloads, supporting operations such as SELECT, INSERT, COPY INTO/OUT, MERGE INTO, and complex aggregations with window functions, subqueries, and joins. The architecture follows a storage-compute separation model: a metadata service (Meta) manages schemas, users, and catalogs via a Raft-based consensus layer, while query nodes handle SQL parsing, planning, optimization (Cascades optimizer with rule-based and cost-based passes), and distributed execution over a pipelined framework. Multiple storage engines are supported, including a native columnar Fuse engine optimized for cloud object stores (S3, MinIO, Azure Blob), as well as external formats like Iceberg, Delta Lake, Hive, Paimon, Parquet, and ORC. The system exposes access via MySQL wire protocol, HTTP API, Flight SQL, and gRPC, and includes enterprise features such as data masking, row access policies, materialized views, streams, network policies, and role-based access control.