Apache Calcite website screenshot

Apache Calcite

Apache Calcite is a dynamic data management framework developed by the Apache Software Foundation that provides SQL parsing, query planning and optimization, and data federation capabilities. It serves as the SQL engine and query optimizer for many big data systems including Apache Hive, Druid, Flink, Kafka Streams, and others. Calcite provides a Java API for embedding SQL capabilities into applications, a JDBC adapter for connecting heterogeneous data sources, and an extensible relational algebra framework for building custom query optimizers.

Apache Calcite publishes 3 APIs on the APIs.io network. Tagged areas include Apache, Data Federation, Framework, Open Source, and Query Optimization.

Apache Calcite’s developer surface includes documentation, getting-started guide, support, changelog, and 7 more developer resources.

30.6/100 thin ▬ flat Agent 3/100 human only Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFreemium
3 APIs 10 Features 5 Use Cases
ApacheData FederationFrameworkOpen SourceQuery OptimizationSQL

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 30.6/100 · thin
Contract Quality 0.0 / 25
Developer Ergonomics 6.1 / 20
Commercial Clarity 10.0 / 20
Operational Transparency 6.8 / 13
Governance 1.2 / 12
Discoverability 6.5 / 10
Agent readiness — 3/100 · human only
Machine-Readable Contract 0 / 18
Agentic Access Contract 0 / 10
MCP Server 0 / 12
Machine-Readable Auth 0 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/apache-calcite: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 3

Individual APIs this provider publishes, each with its own machine-readable definition.

Apache Calcite Java API

The Apache Calcite Java API provides SQL parsing, validation, query planning, and optimization capabilities for embedding in JVM applications. It exposes a relational algebra fr...

Apache Calcite JDBC API

The Apache Calcite JDBC adapter provides a standard JDBC interface over heterogeneous data sources. Applications use it to issue SQL queries across multiple data formats and sto...

Apache Calcite Avatica API

Apache Avatica is a framework for building database drivers derived from Apache Calcite. It provides a JSON/Protobuf-over-HTTP remote protocol for JDBC clients to connect to Cal...

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Apache Calcite Rate Limits

5 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Features 10

Notable capabilities this provider offers.

SQL Parsing and Validation

Parse and validate SQL queries using an extensible SQL grammar with support for SQL:2003 and beyond.

Query Optimization

Cost-based and rule-based query optimization using a volcano-style optimizer with pluggable optimization rules.

Relational Algebra

Extensible relational algebra framework for representing and transforming query plans as expression trees.

Data Federation

Federate queries across heterogeneous data sources including CSV, JSON, JDBC databases, and Elasticsearch.

Adapter Framework

Pluggable adapter API for connecting new data sources to the Calcite SQL engine.

Materialized Views

Automatic materialized view recognition and query rewriting for query acceleration.

Streaming SQL

SQL extensions for querying streaming data sources with window functions and temporal predicates.

Lattices and Tiles

Summary table recommendation and query rewriting using lattice structures for OLAP workloads.

JDBC Driver

Standard JDBC driver for issuing SQL queries against Calcite-connected data sources.

Avatica Remote Protocol

JSON/Protobuf-over-HTTP remote JDBC protocol for connecting clients to Calcite-based query servers.

Scroll for all 10

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Apache Calcite Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Apache Calcite Vulnerability Disclosure

security.txt · contact published

SECURITY

Use Cases 5

What developers build with this provider.

Embedding SQL in Applications

Add SQL querying capability to Java applications using the Calcite Java API without a full database.

Building Query Engines

Use Calcite as the SQL parsing and optimization layer in custom query engine implementations.

Data Virtualization

Federate queries across multiple heterogeneous data sources using Calcite adapters.

OLAP Query Optimization

Accelerate analytical queries using materialized view rewriting and lattice-based summary tables.

SQL Dialect Translation

Parse SQL in one dialect and transpile it to another using Calcite's SQL generation framework.

Integrations 7

Pre-built integrations with other platforms and tools.

Apache Flink

Flink uses Calcite for SQL parsing and query optimization in Flink SQL and Table API.

Apache Hive

Hive uses Calcite for cost-based query optimization in HiveQL query planning.

Apache Druid

Druid uses Calcite for SQL query parsing and planning against its time-series data store.

Apache Kafka

ksqlDB and Kafka Streams use Calcite for SQL stream processing query planning.

Apache Beam

Beam SQL uses Calcite for query planning on PCollection-based streaming and batch pipelines.

Elasticsearch

Calcite provides a SQL adapter for querying Elasticsearch indices using standard SQL.

Apache Kylin

Kylin uses Calcite as its SQL engine for OLAP cube query planning and execution.

Scroll for all 7

Resources

Get Started 1

Portal, sign-up, and the first successful call

Documentation 1

Reference material describing how the API behaves

Design & Contract 1

Pagination, idempotency, versioning, errors, and events

Build 3

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Operate 2

Status, limits, changes, and where to get help

Commercial 1

Pricing, plans, and the legal terms of use

Source (apis.yml)

apis.yml Raw ↑
aid: apache-calcite
name: Apache Calcite
description: Apache Calcite is a dynamic data management framework developed by the Apache Software Foundation that provides
  SQL parsing, query planning and optimization, and data federation capabilities. It serves as the SQL engine and query optimizer
  for many big data systems including Apache Hive, Druid, Flink, Kafka Streams, and others. Calcite provides a Java API for
  embedding SQL capabilities into applications, a JDBC adapter for connecting heterogeneous data sources, and an extensible
  relational algebra framework for building custom query optimizers.
type: Index
accessModel:
  pricing: freemium
  onboarding: unknown
  trial: false
  try_now: false
  public: false
  label: Freemium
  confidence: medium
  source:
  - plans
  generated: '2026-07-22'
  method: derived
position: Consumer
access: 3rd-Party
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/apache-calcite.png
tags:
- Apache
- Data Federation
- Framework
- Open Source
- Query Optimization
- SQL
created: '2026-03-16'
modified: '2026-04-19'
url: https://raw.githubusercontent.com/api-evangelist/apache-calcite/refs/heads/main/apis.yml
specificationVersion: '0.19'
apis:
- aid: apache-calcite:apache-calcite-java-api
  name: Apache Calcite Java API
  description: The Apache Calcite Java API provides SQL parsing, validation, query planning, and optimization capabilities
    for embedding in JVM applications. It exposes a relational algebra framework and pluggable optimizer rules for building
    custom query engines.
  humanURL: https://calcite.apache.org/docs/
  tags:
  - Java
  - Query Engine
  - SQL
  properties:
  - type: Documentation
    url: https://calcite.apache.org/docs/
  - type: APIReference
    url: https://calcite.apache.org/javadocAggregate/
  - type: GettingStarted
    url: https://calcite.apache.org/docs/tutorial.html
- aid: apache-calcite:apache-calcite-jdbc-api
  name: Apache Calcite JDBC API
  description: The Apache Calcite JDBC adapter provides a standard JDBC interface over heterogeneous data sources. Applications
    use it to issue SQL queries across multiple data formats and storage systems through a unified SQL interface.
  humanURL: https://calcite.apache.org/docs/adapter.html
  tags:
  - JDBC
  - SQL
  properties:
  - type: Documentation
    url: https://calcite.apache.org/docs/adapter.html
  - type: SDKs
    url: https://search.maven.org/artifact/org.apache.calcite/calcite-core
- aid: apache-calcite:apache-calcite-avatica-api
  name: Apache Calcite Avatica API
  description: Apache Avatica is a framework for building database drivers derived from Apache Calcite. It provides a JSON/Protobuf-over-HTTP
    remote protocol for JDBC clients to connect to Calcite-based query engines.
  humanURL: https://calcite.apache.org/avatica/docs/
  tags:
  - Avatica
  - HTTP
  - JDBC
  properties:
  - type: Documentation
    url: https://calcite.apache.org/avatica/docs/
  - type: APIReference
    url: https://calcite.apache.org/avatica/javadocAggregate/
common:
- type: VulnerabilityDisclosure
  url: security/apache-calcite-vulnerability-disclosure.yml
- type: DomainSecurity
  url: security/apache-calcite-domain-security.yml
- type: GitHubOrganization
  url: https://github.com/apache
- type: GitHubRepository
  url: https://github.com/apache/calcite
- type: Documentation
  url: https://calcite.apache.org/
- type: GettingStarted
  url: https://calcite.apache.org/docs/tutorial.html
- type: Support
  url: https://calcite.apache.org/community/
- type: TermsOfService
  url: https://www.apache.org/licenses/
- type: ChangeLog
  url: https://github.com/apache/calcite/releases
- type: SDKs
  url: https://search.maven.org/artifact/org.apache.calcite/calcite-core
  title: Java SDK (Maven)
- type: Vocabulary
  url: vocabulary/apache-calcite-vocabulary.yaml
- type: Features
  data:
  - name: SQL Parsing and Validation
    description: Parse and validate SQL queries using an extensible SQL grammar with support for SQL:2003 and beyond.
  - name: Query Optimization
    description: Cost-based and rule-based query optimization using a volcano-style optimizer with pluggable optimization
      rules.
  - name: Relational Algebra
    description: Extensible relational algebra framework for representing and transforming query plans as expression trees.
  - name: Data Federation
    description: Federate queries across heterogeneous data sources including CSV, JSON, JDBC databases, and Elasticsearch.
  - name: Adapter Framework
    description: Pluggable adapter API for connecting new data sources to the Calcite SQL engine.
  - name: Materialized Views
    description: Automatic materialized view recognition and query rewriting for query acceleration.
  - name: Streaming SQL
    description: SQL extensions for querying streaming data sources with window functions and temporal predicates.
  - name: Lattices and Tiles
    description: Summary table recommendation and query rewriting using lattice structures for OLAP workloads.
  - name: JDBC Driver
    description: Standard JDBC driver for issuing SQL queries against Calcite-connected data sources.
  - name: Avatica Remote Protocol
    description: JSON/Protobuf-over-HTTP remote JDBC protocol for connecting clients to Calcite-based query servers.
- type: UseCases
  data:
  - name: Embedding SQL in Applications
    description: Add SQL querying capability to Java applications using the Calcite Java API without a full database.
  - name: Building Query Engines
    description: Use Calcite as the SQL parsing and optimization layer in custom query engine implementations.
  - name: Data Virtualization
    description: Federate queries across multiple heterogeneous data sources using Calcite adapters.
  - name: OLAP Query Optimization
    description: Accelerate analytical queries using materialized view rewriting and lattice-based summary tables.
  - name: SQL Dialect Translation
    description: Parse SQL in one dialect and transpile it to another using Calcite's SQL generation framework.
- type: Integrations
  data:
  - name: Apache Flink
    description: Flink uses Calcite for SQL parsing and query optimization in Flink SQL and Table API.
  - name: Apache Hive
    description: Hive uses Calcite for cost-based query optimization in HiveQL query planning.
  - name: Apache Druid
    description: Druid uses Calcite for SQL query parsing and planning against its time-series data store.
  - name: Apache Kafka
    description: ksqlDB and Kafka Streams use Calcite for SQL stream processing query planning.
  - name: Apache Beam
    description: Beam SQL uses Calcite for query planning on PCollection-based streaming and batch pipelines.
  - name: Elasticsearch
    description: Calcite provides a SQL adapter for querying Elasticsearch indices using standard SQL.
  - name: Apache Kylin
    description: Kylin uses Calcite as its SQL engine for OLAP cube query planning and execution.
maintainers:
- FN: Kin Lane
  email: info@apievangelist.com