forked from apache/calcite
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[OPTIQ-430] Rename project from "Optiq" to "Calcite"
- Loading branch information
1 parent
356a606
commit a6f586a
Showing
99 changed files
with
373 additions
and
369 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,12 @@ | ||
[![Build Status](https://travis-ci.org/julianhyde/optiq.svg?branch=master)](https://travis-ci.org/julianhyde/optiq) | ||
|
||
# Apache Optiq | ||
# Apache Calcite | ||
|
||
Apache Optiq is a dynamic data management framework. | ||
Apache Calcite is a dynamic data management framework. | ||
|
||
## Getting Optiq | ||
## Getting Calcite | ||
|
||
To run Apache Optiq, you can either | ||
To run Apache Calcite, you can either | ||
[download and build from github](doc/HOWTO.md#building-from-git), | ||
or [download a release](http://www.apache.org/dyn/closer.cgi/incubator/optiq) | ||
then [build the source code](doc/HOWTO.md#building-from-a-source-distribution). | ||
|
@@ -17,15 +17,15 @@ with the following Maven coordinates: | |
|
||
```xml | ||
<dependency> | ||
<groupId>org.apache.optiq</groupId> | ||
<artifactId>optiq-core</artifactId> | ||
<version>0.9.0-incubating</version> | ||
<groupId>org.apache.calcite</groupId> | ||
<artifactId>calcite-core</artifactId> | ||
<version>0.9.1-incubating</version> | ||
</dependency> | ||
``` | ||
|
||
## Example | ||
|
||
Optiq makes data anywhere, of any format, look like a database. For | ||
Calcite makes data anywhere, of any format, look like a database. For | ||
example, you can execute a complex ANSI-standard SQL statement on | ||
in-memory collections: | ||
|
||
|
@@ -36,7 +36,7 @@ public static class HrSchema { | |
} | ||
|
||
Class.forName("net.hydromatic.optiq.jdbc.Driver"); | ||
Connection connection = DriverManager.getConnection("jdbc:optiq:"); | ||
Connection connection = DriverManager.getConnection("jdbc:calcite:"); | ||
OptiqConnection optiqConnection = | ||
connection.unwrap(OptiqConnection.class); | ||
ReflectiveSchema.create(optiqConnection, | ||
|
@@ -60,11 +60,11 @@ completely empty until <code>ReflectiveSchema.create</code> registers | |
a Java object as a schema and its collection fields <code>emps</code> | ||
and <code>depts</code> as tables. | ||
|
||
Optiq does not want to own data; it does not even have favorite data | ||
Calcite does not want to own data; it does not even have favorite data | ||
format. This example used in-memory data sets, and processed them | ||
using operators such as <code>groupBy</code> and <code>join</code> | ||
from the linq4j | ||
library. But Optiq can also process data in other data formats, such | ||
library. But Calcite can also process data in other data formats, such | ||
as JDBC. In the first example, replace | ||
|
||
```java | ||
|
@@ -83,28 +83,28 @@ dataSource.setPassword(""); | |
JdbcSchema.create(optiqConnection, dataSource, rootSchema, "hr", ""); | ||
``` | ||
|
||
and Optiq will execute the same query in JDBC. To the application, the | ||
and Calcite will execute the same query in JDBC. To the application, the | ||
data and API are the same, but behind the scenes the implementation is | ||
very different. Optiq uses optimizer rules | ||
very different. Calcite uses optimizer rules | ||
to push the <code>JOIN</code> and <code>GROUP BY</code> operations to | ||
the source database. | ||
|
||
In-memory and JDBC are just two familiar examples. Optiq can handle | ||
In-memory and JDBC are just two familiar examples. Calcite can handle | ||
any data source and data format. To add a data source, you need to | ||
write an adapter that tells Optiq | ||
write an adapter that tells Calcite | ||
what collections in the data source it should consider "tables". | ||
|
||
For more advanced integration, you can write optimizer | ||
rules. Optimizer rules allow Optiq to access data of a new format, | ||
rules. Optimizer rules allow Calcite to access data of a new format, | ||
allow you to register new operators (such as a better join algorithm), | ||
and allow Optiq to optimize how queries are translated to | ||
operators. Optiq will combine your rules and operators with built-in | ||
and allow Calcite to optimize how queries are translated to | ||
operators. Calcite will combine your rules and operators with built-in | ||
rules and operators, apply cost-based optimization, and generate an | ||
efficient plan. | ||
|
||
### Non-JDBC access | ||
|
||
Optiq also allows front-ends other than SQL/JDBC. For example, you can | ||
Calcite also allows front-ends other than SQL/JDBC. For example, you can | ||
execute queries in <a href="https://github.com/julianhyde/linq4j">linq4j</a>: | ||
|
||
```java | ||
|
@@ -125,7 +125,7 @@ for (Customer customer | |
``` | ||
|
||
Linq4j understands the full query parse tree, and the Linq4j query | ||
provider for Optiq invokes Optiq as an query optimizer. If the | ||
provider for Calcite invokes Calcite as an query optimizer. If the | ||
<code>customer</code> table comes from a JDBC database (based on | ||
this code fragment, we really can't tell) then the optimal plan | ||
will be to send the query | ||
|
@@ -149,7 +149,7 @@ See the <a href="https://github.com/julianhyde/optiq-csv/blob/master/TUTORIAL.md | |
for information on using optiq-csv and writing adapters. | ||
|
||
See the <a href="doc/HOWTO.md">HOWTO</a> for more information about using other | ||
adapters, and about using Optiq in general. | ||
adapters, and about using Calcite in general. | ||
|
||
## Status | ||
|
||
|
@@ -166,17 +166,17 @@ For more details, see the <a href="doc/REFERENCE.md">Reference guide</a>. | |
|
||
### Drivers | ||
|
||
* <a href="http://www.hydromatic.net/optiq/optiq-core/apidocs/net/hydromatic/optiq/jdbc/package-summary.html">JDBC driver</a> | ||
* <a href="http://www.hydromatic.net/calcite/calcite-core/apidocs/net/hydromatic/optiq/jdbc/package-summary.html">JDBC driver</a> | ||
|
||
### Adapters | ||
|
||
* <a href="https://github.com/apache/incubator-drill">Apache Drill adapter</a> | ||
* Cascading adapter (<a href="https://github.com/Cascading/lingual">Lingual</a>) | ||
* CSV adapter (<a href="https://github.com/julianhyde/optiq-csv">optiq-csv</a>) | ||
* JDBC adapter (part of <a href="http://www.hydromatic.net/optiq/optiq-core/apidocs/net/hydromatic/optiq/impl/jdbc/package-summary.html">optiq-core</a>) | ||
* MongoDB adapter (<a href="http://www.hydromatic.net/optiq/optiq-mongodb/apidocs/net/hydromatic/optiq/impl/mongodb/package-summary.html">optiq-mongodb</a>) | ||
* Spark adapter (<a href="http://www.hydromatic.net/optiq/optiq-spark/apidocs/net/hydromatic/optiq/impl/spark/package-summary.html">optiq-spark</a>) | ||
* Splunk adapter (<a href="http://www.hydromatic.net/optiq/optiq-splunk/apidocs/net/hydromatic/optiq/impl/splunk/package-summary.html">optiq-splunk</a>) | ||
* JDBC adapter (part of <a href="http://www.hydromatic.net/calcite/calcite-core/apidocs/net/hydromatic/optiq/impl/jdbc/package-summary.html">calcite-core</a>) | ||
* MongoDB adapter (<a href="http://www.hydromatic.net/calcite/calcite-mongodb/apidocs/net/hydromatic/optiq/impl/mongodb/package-summary.html">calcite-mongodb</a>) | ||
* Spark adapter (<a href="http://www.hydromatic.net/calcite/calcite-spark/apidocs/net/hydromatic/optiq/impl/spark/package-summary.html">calcite-spark</a>) | ||
* Splunk adapter (<a href="http://www.hydromatic.net/calcite/calcite-splunk/apidocs/net/hydromatic/optiq/impl/splunk/package-summary.html">calcite-splunk</a>) | ||
* Eclipse Memory Analyzer (MAT) adapter (<a href="https://github.com/vlsi/optiq-mat-plugin">optiq-mat-plugin</a>) | ||
|
||
## More information | ||
|
@@ -185,8 +185,8 @@ For more details, see the <a href="doc/REFERENCE.md">Reference guide</a>. | |
* Author: Julian Hyde | ||
* Blog: http://julianhyde.blogspot.com | ||
* Incubation status page: http://incubator.apache.org/projects/optiq.html | ||
* Project page: http://www.hydromatic.net/optiq | ||
* Source code: http://github.com/julianhyde/optiq | ||
* Project page: http://www.hydromatic.net/calcite | ||
* Source code: http://github.com/apache/incubator-optiq | ||
* Issues: <a href="https://issues.apache.org/jira/browse/OPTIQ">Apache JIRA</a> | ||
* Developers list: <a href="mailto:[email protected]">dev at optiq.incubator.apache.org</a> (<a href="http://mail-archives.apache.org/mod_mbox/incubator-optiq-dev/">archive</a>, <a href="mailto:[email protected]">subscribe</a>) | ||
* <a href="doc/HOWTO.md">HOWTO</a> | ||
|
@@ -196,7 +196,7 @@ For more details, see the <a href="doc/REFERENCE.md">Reference guide</a>. | |
|
||
### Pre-Apache resources | ||
|
||
These resources, which we used before Optiq was an Apache incubator | ||
These resources, which we used before Calcite was an Apache incubator | ||
project, are for reference only. | ||
They may be out of date. | ||
Please don't post to the mailing list. | ||
|
@@ -214,7 +214,7 @@ Please don't post to the mailing list. | |
|
||
## Disclaimer | ||
|
||
Apache Optiq is an effort undergoing incubation at The Apache Software | ||
Apache Calcite is an effort undergoing incubation at The Apache Software | ||
Foundation (ASF), sponsored by the Apache Incubator. Incubation is | ||
required of all newly accepted projects until a further review | ||
indicates that the infrastructure, communications, and decision making | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.