It's a collection of functions for interacting with DuckDB
- Connection Pooling
- Query Parsing/Transformation
- Delta Lake/ Hive Partition pruning based on the query predicate
- Detecting similar queries (https://medium.com/@tanejagagan/ac5e00cb96b5)
- java 17
- maven
./mvnw compile
Start using DuckDB with
- Execute the query.
ConnectionPool.execute(sql) - Print the results.
ConnectionPool.printResult(sql) - Get Arrow reader for Reading.
ConnectionPool.getReader(sql) - It loads the connection property from
duckdb.propertiesinside resources directory
- Read the sql tree with
Transformation.parseToTree(sql) - Various transformation change the query. Used for fingerprinting algorithms
Replace all the literals from the where clause of a query and hash the query. Read more about it at https://medium.com/@tanejagagan/ac5e00cb96b5
./mvnw exec:java -Dexec.mainClass="io.github.tanejagagan.sql.commons.Fingerprint"
./mvnw exec:java -Dexec.mainClass="io.github.tanejagagan.sql.commons.delta.PartitionPruning"
./mvnw exec:java -Dexec.mainClass="io.github.tanejagagan.sql.commons.hive.HivePartitionPruning"
export GPG_TTY=$(tty)./mvnw clean -P release-sign-artifacts -DskipTests deploy

