Deployment Scenarios
A Warehouse Application
A data collection specialist describes how he uses HSQLDB to power an ordering and warehouse application:
I've deployed HSQLDB (initially version 1.8, now already 2.0) as a server for warehouse applications for multiple customers.
Such
installations usually service about 30 JDBC connections, of which,
during daytime, well over 25 may be actively processing data, and at
least one (belonging to a server-based data exchange and archiving
application) does so constantly and with notable intensity.
Data
volumes have ranged as high as 250,000 articles and 50,000 saldos. Most
of workload is generated by sales orders, of which about 50,000 are
kept in the active database ,together with about 500,000 associated
order and picking batch rows. About 500 orders tend to be processed
daily. For our typical customers, this amonts to about 3 months' worth
of data kept in a database schema for everyday work, while an archive
schema hosts more historical information.
Systems usually
consist of a Linux-based database server, a number of portable data
collection terminals operating over wireless LAN, running either
Windows CE, Windows Mobile or compact distributions of Linux, somewhat
less of fixed warehouse workstations, and a couple of workstations for
using a management interface built on OpenOffice Base.
I
preferred HSQLDB since its JDBC driver worked well with the MySaifu JVM
(which is a good choice for Windows CE), and since it was already the
internal database engine of OpenOffice (though upgrading to a version
which bypasses OpenOffice required solving some puzzles). Ability to
address some tables with schema-relative names and others with absolute
names, and define views pointing from one schema to another proved
handy for implementing an archive database. Ability to write custom
Java functions, put them in the server classpath and address them from
SQL was quite helpful on occasions. Overall, HSQLDB has proven a good
choice for me.