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.
Does data compression very well, produces query results very quickly, ability to scale up as data volume/size grow in an organization, row level versioning is in memory and hence the speed. It is a very stable product for large enterprises. More detailed documentation on how to use this product in the initial stages would be really welcome.
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.
SAP IQ support is top-notch. I prefer starting all my SAP IQ support tickets with their Instant Messenger, where the majority of our issues are resolved. If it makes it to their ticketing system, they are very prompt at responding and very knowledgeable in the platform.
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.
SAP IQ is perhaps an under-marketed product in the sense that it is able to scale up very well and perform much faster and more efficiently than other products such as Oracle - when we ran multiple large queries on both Sybase IQ and Oracle, we found that that results were much faster in Sybase IQ and this gave the confidence to go for this product.
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.