Skip to main content
Apache Derby

Apache Derby


What is Apache Derby?

Apache Derby is an embedded relational database management system, originally developed by IBM and called IBM Cloudscape.

Read more
Recent Reviews

TrustRadius Insights

Apache Derby, an open-source relational database, has proven to be a versatile solution for various use cases. Users have found it …
Continue reading
Read all reviews

Reviewer Pros & Cons

View all pros & cons
Return to navigation


View all pricing

What is Apache Derby?

Apache Derby is an embedded relational database management system, originally developed by IBM and called IBM Cloudscape.

Entry-level set up fee?

  • No setup fee


  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

3 people also want pricing

Alternatives Pricing

What is Neo4j?

Neo4j is an open source embeddable graph database developed by Neo Technologies based in San Mateo, California with an office in Sweden.

Return to navigation

Product Details

What is Apache Derby?

Apache Derby Video

Getting Started with Apache Derby

Apache Derby Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo
Return to navigation


View all alternatives
Return to navigation

Reviews and Ratings


Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

Apache Derby, an open-source relational database, has proven to be a versatile solution for various use cases. Users have found it particularly useful for resolving SQL error messages and exceptions by categorizing SQL states. Additionally, Apache Derby provides Java SQL connection sets that allow users to perform operations such as serialization, commit read, and distinct locking. Its ability to map XML datatypes enables users to retrieve XML data as Java strings using SQL queries and XML operators.

One of the key advantages of Apache Derby is its ease of maintenance and its compatibility with web applications. It can be embedded within applications, making it suitable for developing proof of concepts, small-scale apps, and software reliability automation projects. Apache Derby's support for JDBC makes it a popular choice among Java developers who need to access data from the Apache Derby database.

Apache Derby excels in offline apps that require on-device caching and storage. It can also be used as an embedded package in Cloudera Hadoop clusters to store Hive meta stores, providing optimal performance for big data Hadoop clusters. Moreover, Apache Derby's lightweight file-based database functionality is valuable for storing configuration settings and persistent caching in webMethods Integration Server clusters.

In summary, Apache Derby's flexibility, reliability, and support for SQL commands make it a popular choice across industries. Whether it's for student database projects, real-time analytics software, or easy application prototyping, Apache Derby continues to provide lightweight embedded solutions that enhance performance and reduce reliance on external sources.

Easy Configuration and Management: Apache Derby has been praised by several users for its easy configuration and management. Reviewers have stated that setting up the database takes only about 15 minutes, making it a quick and hassle-free process. Users also find it easy to manage Derby when using Spring or integrating it into Java applications. Lightweight and Embeddable: Many reviewers appreciate that Apache Derby is lightweight and can be embedded in Java applications. This feature makes it suitable for both smaller projects and integration testing. Some users even mention that it is much easier to use than other databases, making it an ideal choice for applications that require a small embeddable database. Performance and Support: The performance and support provided by Apache Derby have received positive feedback from users. Reviewers highlight its fast processing speed, as well as its compatibility with JDBC. Additionally, users appreciate the simplicity of the configuration process and the availability of well-documented errors in the Derby database. Overall, Apache Derby's easy configuration and management, lightweight nature, embeddability, strong performance, and support make it a popular choice among users looking for a reliable relational database system implemented fully in Java.

  1. Crash and Data Loss Risk: Some users have experienced frequent crashes with Apache Derby, resulting in a significant risk of data loss. This instability can be concerning for those relying on the database for critical applications.

  2. Scalability Issues: A number of reviewers have pointed out that Apache Derby may not scale well compared to other enterprise database systems. As the dataset grows larger and more complex, some users have found limitations in terms of performance and scalability.

  3. Performance with Hibernate: Users have reported that the performance of Apache Derby when used with Hibernate is not as optimal as using H2. This can impact the overall efficiency and responsiveness of applications utilizing both technologies together.

Users commonly recommend the following when it comes to Apache Derby:

  • Integrate with Hibernate: Users suggest integrating Apache Derby with Hibernate, a popular object-relational mapping framework. This combination allows for seamless data persistence and retrieval, enhancing the overall functionality of the application.

  • Suitable for various applications: According to users, Apache Derby is well-suited for stand-alone applications and business software alike. Its versatility makes it a reliable choice for different use cases.

  • Storage on handheld devices and quick prototyping: Some users recommend using Apache Derby as a storage option for handheld and smartphone devices. Its lightweight nature and compatibility with mobile platforms make it ideal for such purposes. Additionally, others find Apache Derby useful for quick prototyping due to its ease of setup and configuration.

It is advisable for users to gain a thorough understanding of Apache Derby's features and functionality before considering a migration to a different database system.


(1-3 of 3)
Companies can't remove reviews or game the system. Here's why
Score 7 out of 10
Vetted Review
Verified User
We use Apache Derby to provide a lightweight file-based database to store configuration settings common to all server nodes in our webMethods Integration Server cluster. We also store data that we want to persistently cache across reboots of the server cluster in our Apache Derby database files. Apache Derby means we do not need separate database server infrastructure to provide these features and can just use the Apache Derby embedded library in our existing Java Virtual Machine processes but still have access to an SQL-capable database. This approach simplifies our infrastructure architecture and hence support and TCO costs.
  • Embedded SQL-capable database client and server
  • Good performance for a file-based database
  • Zero cost open source solution
  • Not suitable as a replacement for a highly-available horizontally-scalable database
  • Only suitable for use by Java based projects as it is a Java based solution
  • Performance characteristics not suitable for very large data sets
If you need a SQL-capable database-like solution that is file-based and embeddable in your existing Java Virtual Machine processes, Apache Derby is an open-source, zero cost, robust and performant option. You can use it to store structured relational data but in small files that can be deployed right alongside with your solution, such as storing a set of relational master data or configuration settings inside your binary package that is deployed/installed on servers or client machines.
  • Zero cost
  • Java based
  • Embeddable SQL-capable file-based database
  • Reduced our total cost of ownership of our Java solution, as we do not need separate database infrastructure for our relational data needs
  • Zero up front costs to try
  • Support services required are reduced by removing the need for specialist skills in a separate database product
SQLite is another open-source zero-cost file-based SQL-capable database solution and is a good alternative to Apache Derby, especially for non-Java-based solutions. We chose Apache Derby as it is Java-based, and so is the solution we embedded it in. However, SQLite has a similar feature set and is widely used in the industry to serve the same purposes for native solutions such as C or C++-based products.
Score 10 out of 10
Vetted Review
Verified User
In the Project I was using Apache Derby, we were shadowing larger databases (MS SQL + Cygnet), and providing some failover for those platforms. Most of the Use case was research-oriented, but it allowed the Risk Modelers to grab a subsection of data from these two data sources, and then combine them inside an apache derby instance. Given its size, it was a good fit.
  • Apache Derby is SMALL. Compared to an enterprise scale system such as MSSQL, it's footprint is very tiny, and it works well as a local database.
  • The SPEED. I have found that Apache Derby is very fast, given the environment I was developing in.
  • Based in JAVA (I know that's an obvious thing to say), but Java allows you to write some elegant Object Oriented structures, thus allowing for fast, Agile test cases against the database.
  • Derby is EASY to implement and can be accessed from a console with little difficulty. Making it appropriate for everything from small embedded systems (i.e. just a bash shell and a little bit of supporting libraries) to massive workstations.
  • Not as well positioned in the market as the "big dogs" (Oracle, MSSQL)
  • Been around awhile, and not a lot of exposure. This I believe is primarily due to it's relation to the Apache Project (which is not bad, but they don't force big, lumbering corporate volume licensing on you), and thus people are a bit gun-shy about NOT throwing money at something
  • Java is still "slow" compared to C/C++, thus making Derby a bit slow too
Derby is absolutely the best when it comes to needing a small, embeddable RDBMS in your applications. Certain jobs, like Risk Modeling, are perfect for a database that is small enough to fit into memory with no trouble then store data from various sources, and then allow a user to access those data sets quickly.
  • Being Open source, the resources spent on the purchase of the product are ZERO.
  • Contrary to popular belief, open source software CAN provide support, provided that the developers/contributors are willing to answer your emails.
  • Overall, the ROI was positive: being able to experiment with an open source technology that could perform on par with the corporate products was promising, and gave us much information about how to proceed in the future.
For our particular use case, Apache was selected for its ease of use, in its ability to be installed, configured and embedded in our in-house application.
April 10, 2017

Developing with Derby

Renato Ermann | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
The product I worked on at IBM supported all the major database vendors, including Derby. Since Derby is free, most development and QA was done with Derby, although not many customers had adopted Derby as their production database vendor.
  • Much easier to use and learn than most commercial databases.
  • Derby database errors are well documented.
  • Most complex queries supported as well as by other database vendors.
  • It may not scale as well as some more mature database products.
  • Used it primarily from the command line with openjpa and jdbc, and from third-party clients such as Squirrel.
  • May benefit by providing more sophisticated tools to optimize query performance.
[It's] Well suited for development and testing environments.
  • Saved money on database licensing.
Return to navigation