Java Database

Open-source Java projects categorized as Database

Top 23 Java Database Projects

  • GitHub repo HikariCP

    光 HikariCP・A solid, high-performance, JDBC connection pool at last.

    Project mention: 25 February 2021- Daily Chat Thread | reddit.com/r/indonesia | 2021-02-25
  • GitHub repo shardingsphere

    Distributed Database Ecosphere

    Project mention: Weekly Developer Roundup #23 - Sun Nov 22 2020 | dev.to | 2020-11-21

    apache/shardingsphere (Java): Distributed database middleware

  • GitHub repo Presto

    The official home of the Presto distributed SQL query engine for big data

    Project mention: Minimally Invasive (and More Accurate) Analytics: GoAccess and Athena/SQL | news.ycombinator.com | 2021-02-16

    One quick detail on the Trino description is that not only are some of the initial developers but all of the creators and the majority of contributors (https://github.com/prestodb/presto/graphs/contributors?from=...) and still have contributed the majority of the code in both Presto (https://github.com/prestodb/presto/graphs/contributors)/Trin... (https://github.com/trinodb/trino/graphs/contributors).

    To really jump into this, take a look at https://trino.io/blog/2020/12/27/announcing-trino.html.

    A few more stats and info:

    Trino commits: 22,383

  • GitHub repo Realm

    Realm is a mobile database: a replacement for SQLite & ORMs

  • GitHub repo Jedis

    A blazingly small and sane redis java client

    Project mention: Uma abordagem diferenciada à Sessões de Usuário em Microsserviços usando Redis | dev.to | 2021-02-04

    Como um bônus, deixo aqui uma classe SessionManager pra ajudar na implementação em Java usando Jedis e o gerador de token do Tomcat, que já é normalmente incluído no Spring Boot:

  • GitHub repo Apache ZooKeeper

    Apache ZooKeeper

    Project mention: Managing Cluster Membership with Etcd | dev.to | 2021-03-31

    Gossip-style protocols became popular because of their scalability and the lack of a single point of failure. Since all members are equal, they can be replaced easily. In the face of concurrent modifications, however, resolving conflicts and reaching consensus can be challenging. This is why many applications rely on an external application to manage and track membership information consistently. Popular examples of such coordination services are Apache Zookeeper, Consul, or etcd.

  • GitHub repo Neo4j

    Graphs for Everyone

    Project mention: Looking for visual to show moves from group to group | reddit.com/r/PowerBI | 2021-04-13

    Unfortunately, I think you will need to roll up your sleeves and do some coding, e.g., in NetworkX. Alternatively, you can look into loading your data into a professional tool, e.g., Neo4J, that comes bundled with some viz components.

  • GitHub repo Android Debug Database

    A library for debugging android databases and shared preferences - Make Debugging Great Again

  • GitHub repo Apache Cassandra

    Mirror of Apache Cassandra

    Project mention: Before coding loads! | dev.to | 2021-04-09

    Basically, a backend developer deals with server side which refers to whatever the user cannot see. Everything occurs in the background. Everything that has to do with functionalities like creating a shopping cart, making dynamic pages, creating app tools etc. A backend developer will have to acquire one of server-side languages such as PHP, Node.js, Python etc and a relational (MySQL, PostgreSQL, IBM) or non-relational (such as MongoDB, Cassandra) database.

  • GitHub repo Flyway

    Flyway by Redgate • Database Migrations Made Easy.

    Project mention: Database CICD suggestions? | reddit.com/r/devops | 2021-03-30

    flyway is pretty great and has an open source, free version but you also need to make sure that from a development point of view db modifications are backwards compatible for at least a few releases, the thread u/arav linked has a lot of good advice outside of tooling.

  • GitHub repo Zeppelin

    Web-based notebook that enables data-driven, interactive data analytics and collaborative documents with SQL, Scala and more.

    Project mention: Is there a way to collaborate in real-time for Jupyter Notebooks? | reddit.com/r/learnpython | 2021-03-21

    Check out Zeppelin. It's similar to Jupyter and allows real-time editing by multiple users. https://zeppelin.apache.org/

  • GitHub repo Hibernate

    Hibernate's core Object/Relational Mapping functionality

    Project mention: Reliable WebSockets-based pub/sub with Spring Boot | dev.to | 2021-04-09

    Firstly, let's set up a basic Spring Boot application. We can use the Spring Initializr with Spring Data JPA, H2 Database, Lombok added. H2 Database will provide us with a simple database, and Spring Data JPA will allow us to easily interact with it using Hibernate. Lombok will make it easier to write concise and readable classes.

  • GitHub repo Leaf

    Distributed ID Generate Service (by Meituan-Dianping)

  • GitHub repo jOOQ

    jOOQ is the best way to write SQL in Java

    Project mention: Weekly "ask anything" thread | reddit.com/r/PHP | 2021-03-22

    I've been hugely inspired by https://github.com/jOOQ/jOOQ . Even though I am not familiar with JAVA much, but I really liked their way of typed column names and every part of SQL. Similar to them, I also want to be as close to SQL as possible. Because in my experience, using ORMs for long time can reduce your memory about simple SQL syntax's. I am also a fan of DB first approach for ORMs.

  • GitHub repo OrientDB

    OrientDB is the most versatile DBMS supporting Graph, Document, Reactive, Full-Text, Geospatial and Key-Value models in one Multi-Model product. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing and Reactive Queries. OrientDB Community Edition is Open Source using a liberal Apache 2 license.

  • GitHub repo MapDB

    MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.

    Project mention: Solution for hash-map with >100M values | reddit.com/r/java | 2020-12-21

    I have had good results with mapdb

  • GitHub repo Apache HBase

    Apache HBase

  • GitHub repo ObjectBox Java (Kotlin, Android)

    ObjectBox is a superfast lightweight database for objects

    Project mention: Persistent Local Database with ObjectBox on Flutter | dev.to | 2021-02-19

    There are a lot of persistent database solutions available for Flutter applications. One of them is ObjectBox which is a NoSQL-based high-performance-oriented database solution written in the native dart language. You can use local as well as server features for syncing data as you like.

  • GitHub repo Apache Ignite

    Apache Ignite (by apache)

  • GitHub repo Apache Hive

    Apache Hive

    Project mention: Keep yourself up to date in data engineering | reddit.com/r/dataengineering | 2021-02-27

    Thanks for the advice. Issues, RFCs, release notes, changelogs, blog posts, GitHub branch comparison https://github.com/apache/hive/compare/master...release-3.1.3-rc0 It's tough to keep up with everything.

  • GitHub repo Querydsl

    Unified Queries for Java

  • GitHub repo Crate

    CrateDB is a distributed SQL database that makes it simple to store and analyze massive amounts of machine data in real-time.

    Project mention: Querying time series data with SQL: examples | dev.to | 2021-03-01

    PD: If you liked this post... We'd really appreciate a ⭐️ in Github!

  • GitHub repo Trino

    Official repository of Trino, the distributed SQL query engine for big data, formerly known as PrestoSQL (https://trino.io)

    Project mention: Why hasn't Presto become industry standard? | news.ycombinator.com | 2021-04-01

    * Active-active HA is not really necessary IMO as Trino is designed for low latency interactive queries in general. It can handle longer running batch queries but it gives up fault tolerance to fail fast and you just resubmit the query vs predecessors like Hive, Spark, etc... that handle ETL and long running batch processes efficiently but this adds complexity to the query to checkpoint the work. I could see the need for an active-passive HA to have on deck during a failure. Setting up your own active-passive HA is as simple as putting two coordinators behind a proxy and pointing your workers to the proxy address. Then you basically have the proxy run health checks and flip over in the event of an outage. Here's the issue to track native HA though https://github.com/trinodb/trino/issues/391.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-04-13.

Index

What are some of the best open-source Database projects in Java? This list will help you:

Project Stars
1 HikariCP 14,815
2 shardingsphere 13,631
3 Presto 11,873
4 Realm 11,116
5 Jedis 9,773
6 Apache ZooKeeper 9,299
7 Neo4j 8,789
8 Android Debug Database 7,757
9 Apache Cassandra 6,545
10 Flyway 5,792
11 Zeppelin 5,205
12 Hibernate 4,576
13 Leaf 4,457
14 jOOQ 4,319
15 OrientDB 4,277
16 MapDB 4,268
17 Apache HBase 3,985
18 ObjectBox Java (Kotlin, Android) 3,785
19 Apache Ignite 3,776
20 Apache Hive 3,657
21 Querydsl 3,227
22 Crate 3,059
23 Trino 3,045