Apache Calcite is an
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
framework for building databases and data management systems. It includes a
SQL parser
Parsing, syntax analysis, or syntactic analysis is the process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar. The term ''parsing'' comes from Lati ...
, an
API
An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
for building expressions in
relational algebra
In database theory, relational algebra is a theory that uses algebraic structures with a well-founded semantics for modeling data, and defining queries on it. The theory was introduced by Edgar F. Codd.
The main application of relational algebra ...
, and a
query planning engine.
As a framework, Calcite does not store its own data or
metadata, but instead allows external data and metadata to be accessed by means of
plug-ins.
Several other
Apache projects use Calcite.
Hive uses Calcite for cost-based query optimization;
[Julian Hyde]
"Cost-based query optimization in Apache Hive 0.14"
Hortonworks
', 24 September 2014.
Drill
A drill is a tool used for making round holes or driving fasteners. It is fitted with a bit, either a drill or driver chuck. Hand-operated types are dramatically decreasing in popularity and cordless battery-powered ones proliferating due to ...
and
Kylin use Calcite for SQL parsing and optimization;
Samza and
Storm
A storm is any disturbed state of the natural environment or the atmosphere of an astronomical body. It may be marked by significant disruptions to normal conditions such as strong wind, tornadoes, hail, thunder and lightning (a thunderstorm), ...
use Calcite for streaming SQL.
,
Apex
The apex is the highest point of something. The word may also refer to:
Arts and media Fictional entities
* Apex (comics), a teenaged super villainess in the Marvel Universe
* Ape-X, a super-intelligent ape in the Squadron Supreme universe
*Apex, ...
,
Phoenix and
Flink have projects under development that use Calcite.
References
{{Apache Software Foundation
Relational database management systems
Calcite
Calcite is a carbonate mineral and the most stable polymorph of calcium carbonate (CaCO3). It is a very common mineral, particularly as a component of limestone. Calcite defines hardness 3 on the Mohs scale of mineral hardness, based on scra ...
Software using the Apache license
Free software programmed in Java (programming language)