> Make diff work on more than just SQLite. Another way of doing this that I've been wanting to do for a while is to implement the DIFF operator in Apache Calcite[0]. Using Calcite, DIFF could be implemented as rewrite rules to generate the appropriate SQL to be directly executed against the database or the DIFF operator can be implemented outside of the database (which the original paper shows is more efficient).... - Source: Hacker News / almost 2 years ago
Use a SQL Parser like sqlglot or Apache Calcite to compile user's query into an AST. Source: about 2 years ago
One parser I think deserves a mention is the one from Apache Calcite[0]. Calcite does more than parsing, there are a number of users who pick up Calcite just for the parser. While the default parser attempts to adhere strictly to the SQL standard, of interest is also the Babel parser, which aims to be as permissive as possible in accepting different dialects of SQL. Disclaimer: I am on the PMC of Apache Calcite,... - Source: Hacker News / over 2 years ago
Apache Calcite can do this, though it's not a beginner-friendly task: https://calcite.apache.org/. - Source: Hacker News / almost 3 years ago
You should look at Apache Calcite[0]. Like OctoSQL, you can join data from different data sources. It's also relatively easy to add your own data sources ("adapters" in Calcite lingo) and rules to efficiently query those sources. Calcite already has adapters that do things like read from HTML tables over HTTP, files on your file system, running processes, etc. This is in addition to connecting to a bunch of... - Source: Hacker News / almost 3 years ago
The SQL Federation engine contains processes such as SQL Parser, SQL Binder, SQL Optimizer, Data Fetcher and Operator Calculator, suitable for dealing with co-related queries and subqueries cross multiple database instances. At the underlying layer, it uses Calcite to implement RBO (Rule Based Optimizer) and CBO (Cost Based Optimizer) based on relational algebra, and query the results through the optimal execution... - Source: dev.to / about 3 years ago
Awesome to see work in the DB wire compatible space. On the MySQL side, there was MySQL Proxy (https://github.com/mysql/mysql-proxy), which was scriptable with Lua, with which you could create your own MySQL wire compatible connections. Unfortunately it appears to have been abandoned by Oracle and IIRC doesn't work with 5.7 and beyond. I used it in the past to hack together a MySQL wire adapter for Interana... - Source: Hacker News / about 3 years ago
For anyone interested, Apache Calcite[0] is an open source data management framework which seems to do many of the same things that Hydra claims to do, but taking a different approach. Operating as a Java library, Calcite contains "adapters" to many different data sources from existing JDBC connectors to Elasticsearch to Cassandra. All of these different data sources can be joined together as desired. Calcite also... - Source: Hacker News / about 3 years ago
Abstraction Layer - You can use something like Calcite to abstract out your data storage. https://calcite.apache.org/. Source: over 3 years ago
There are multiple projects that maintain parsers for popular open source databases like MySQL and Postgres. For other Open source databases, the grammar can be extracted from the open-source project. For commercial databases, the only Option is to reverse engineer the complete grammar. There are SQL parser/optimizer platforms like Apache Calcite That help to reduce the effort to implement the SQL dialect of... - Source: dev.to / over 3 years ago
In this post, we took a sneak peek at the join ordering problem and got a bird's-eye view of its complexity. In further posts, we will explore the complexity of join order planning for different graph topologies, dive into details of concrete enumeration techniques, and analyze existing and potential strategies of join planning in Apache Calcite. Stay tuned! - Source: dev.to / over 3 years ago
Apache Calcite is a dynamic data management framework. At its core, Apache Calcite has two rule-based optimizers and a library of transformation rules. - Source: dev.to / almost 4 years ago
Do you know an article comparing Apache Calcite to other products?
Suggest a link to a post with product alternatives.
This is an informative page about Apache Calcite. You can review and discuss the product here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.