InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises. Learn more →
Top 23 Java SQL Projects
Free universal database tool and SQL clientProject mention: newly started using dbeaver | reddit.com/r/PostgreSQL | 2022-11-25
Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.
MyBatis SQL mapper framework for JavaProject mention: MyBatis VS jOOQ - a user suggested alternative | libhunt.com/r/mybatis-3 | 2022-11-25
The official home of the Presto distributed SQL query engine for big dataProject mention: Cheat sheet for quotes usage? | reddit.com/r/SQL | 2023-01-21
I look at the grammar. Here is preto's grammar which is mostly similar to other sql engines: https://github.com/prestodb/presto/blob/master/presto-parser/src/main/antlr4/com/facebook/presto/sql/parser/SqlBase.g4
An open source time-series database for fast ingest and SQL queriesProject mention: any opinion good or bed about a code that smells? | reddit.com/r/java | 2023-01-28
The Java API implementation is problematic due to over allocating which results in a great deal of overhead. Projects like QuestDB don't use the Java API much to reduce GC thrashing. It results in a DB that outperforms C++ counterparts.
Official repository of Trino, the distributed SQL query engine for big data, formerly known as PrestoSQL (https://trino.io)Project mention: Uber Interview Experience/Asking Suggestions | reddit.com/r/dataengineering | 2023-02-01
One place to look are the projects repo's and docs, once you have a good idea of how the system is architected poking around pieces of the codebase can be helpful in letting you really understand their internals. I personally enjoy going through spark repo and trino repo and the documentation for both projects is decent and can answer many of your questions.
Write Clean Java Code. Always.. Sonar helps you commit clean code every time. With over 600 unique rules to find Java bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.
Flyway by Redgate • Database Migrations Made Easy.Project mention: Ask HN: How do you test SQL? | news.ycombinator.com | 2023-01-31
Apache Doris is an easy-to-use, high performance and unified analytics database.Project mention: Apache Doris Roadmap 2023 | dev.to | 2023-02-03
Apache Beam is a unified programming model for Batch and Streaming data processing.Project mention: Real Time Data Infra Stack | dev.to | 2022-12-04
Apache Beam: Streaming framework which can be run on several runner such as Apache Flink and GCP Dataflow
The database purpose-built for stream processing applications.Project mention: The Next Generation of Materialize | news.ycombinator.com | 2022-10-03
jOOQ is the best way to write SQL in JavaProject mention: You might not need an ORM | news.ycombinator.com | 2023-01-25
> all I really want is a nice API for building queries (that actually supports all underlying database features) and automatic mapping of the results to whatever objects/structs and primitives the language supports.
Apache HiveProject mention: In One Minute : Hadoop | dev.to | 2022-11-21
Hive, A data warehouse infrastructure that provides data summarization and ad hoc querying.
OrientDB is the most versatile DBMS supporting Graph, Document, Reactive, Full-Text and Geospatial models in one Multi-Model product. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing and Reactive Queries.Project mention: Database of Databases | dev.to | 2022-06-23
Apache Ignite (by apache)
JSqlParser parses an SQL statement and translate it into a hierarchy of Java classes. The generated hierarchy can be navigated using the Visitor PatternProject mention: Semantic Diff for SQL | news.ycombinator.com | 2022-07-29
I wonder if this is a topical thread to check if anyone is aware of a Java based solution to parse a CREATE VIEW statement to get a mapping between the view columns and the corresponding source table columns. I checked out jsqlparser and it does produce an AST which can be parsed using the visitor-pattern but was wondering if there is a more "out-of-the-box" solution. Due to various reasons, querying the database information schema is not an option I can pursue.
StarRocks is a next-gen sub-second MPP database for full analytics scenarios, including multi-dimensional analytics, real-time analytics and ad-hoc query.Project mention: Anyone using StarRocks DB instead of ClickHouse? | reddit.com/r/dataengineering | 2022-11-17
Main Liquibase SourceProject mention: Schema vs non-schema prpgramming | reddit.com/r/SpringBoot | 2023-01-15
Highly recommend you use either Liquibase or Flyway for schema management, and Testcontainers pg to run a transitive database for your tests.
Apache CalciteProject mention: Want to contribute more to open source projects. | reddit.com/r/dotnet | 2022-08-18
CrateDB is a distributed SQL database that makes it simple to store and analyze massive amounts of data in real-time. Built on top of Lucene.Project mention: Distributed query execution in CrateDB: What you need to know | dev.to | 2022-07-20
A logical execution plan does not take into account the information about data distribution. CrateDB is a distributed database and data is sharded: a table can be split into many parts - so-called shards. Shards can be independently replicated and moved from one node to another. The number of shards a table can have is specified at the time the table is created.
H2 is an embeddable RDBMS written in Java.Project mention: SQLite Internals: How the Most Used Database Works | news.ycombinator.com | 2022-12-19
> ...than it would be to learn the exact syntax and quirks and possibly bugs of someone else's implementation...
Yup. Also, having deep knowledge of the language is required.
SQLite's grammar is neat. Creating a compatible parser would make a fun project. Here's a pretty good example: https://github.com/bkiers/sqlite-parser (Actual ANTLR 4 grammar: https://github.com/bkiers/sqlite-parser/blob/master/src/main... )
Postgres, which tries to be compliant with the latest standards, however...
SQL-2016 is a beast. Not to mention all the dialects.
I'm updating my personal (soon to be FOSS) grammar from ANTLR 3 LL(k) to ANTLR 4 ALL().
I've long had a working knowledge of SQL-92, with some SQL-1999 (eg common table expressions).
But the new structures and extensions are a bit overwhelming.
Fortunately, ANTLR project has ~dozen FOSS grammars to learn from. https://github.com/antlr/grammars-v4/tree/master/sql
They mostly mechanically translate BNFs to LL(k) with some ALL(). Meaning few take advantage of left-recursion. https://github.com/antlr/antlr4/blob/master/doc/left-recursi...
Honestly, I struggled to understand these grammars. Plus, not being conversant with the SQL-2016 was a huge impediment. Just finding a succinct corbis of test cases was a huge hurdle for me.
Fortunately, the H2 Database project is a great resource. https://github.com/h2database/h2database/tree/master/h2/src/...
Now for the exciting conclusion...
My ANTLR grammar which passes all of H2's tests looks nothing like any of the official or product specific BNFs.
Further, I found discrepancy between the product specific BNFs and their implementations.
So a lot of trial & error is required for a "real world" parser. Which would explain why the professional SQL parsing tools charge money.
I still think creating a parser for SQLite is a great project.
Keep your code spotlessProject mention: Programming Breakthroughs We Need | news.ycombinator.com | 2022-08-17
Some code formatters such as Spotless (https://github.com/diffplug/spotless/tree/main/plugin-gradle...) allow you to format code only in files that have changes against some designated branch such as `master`. So, you check out your feature branch, make changes, do some commits, and run spotless. Only the files which have some changes between your workspace and the master branch will be formatted. This allows you to gradually format the project as and when files would be changed anyways.
requery - modern SQL based query & persistence for Java / Kotlin / AndroidProject mention: Learning Android’s Room Database Made Easy | reddit.com/r/androiddev | 2023-01-22
ah, I was thinking of https://github.com/requery/requery but I wasn't really sure, also that project is dead oh no :D
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Java SQL related posts
You might not need an ORM
9 projects | news.ycombinator.com | 25 Jan 2023
Learning Android’s Room Database Made Easy
3 projects | reddit.com/r/androiddev | 22 Jan 2023
Are forcedtypes supported in routines?
2 projects | reddit.com/r/jOOQ | 20 Jan 2023
Question: What is the Best Way to Store a ~10 Terabytes of Time Series Data?
2 projects | reddit.com/r/bigdata | 6 Jan 2023
questdb: NEW Data - star count:9880.0
1 project | reddit.com/r/algoprojects | 31 Dec 2022
questdb: NEW Data - star count:9880.0
1 project | reddit.com/r/algoprojects | 30 Dec 2022
questdb: NEW Data - star count:9880.0
1 project | reddit.com/r/algoprojects | 29 Dec 2022
A note from our sponsor - InfluxDB
www.influxdata.com | 3 Feb 2023
What are some of the best open-source SQL projects in Java? This list will help you: