Table of Contents
By default SavaPage is packaged with Apache Derby as internal database. This gives you the opportunity to evaluate SavaPage on a small scale right away. However, in a production environment with multiple users, we strongly advise you to use PostgreSQL as external database server.
Using the internal database in situations with multiple users and thus concurrent use, will inevitably lead to locking, deadlock and out-of-memory errors, which can make the system totally unresponsive.
Other situations can be extra reason to choose for an external database, like:
Organizational policy dictates that all applications must be consolidated on a single database infrastructure.
You want to take advantage of existing maintenance and backup procedures that are present on your current database infrastructure.
You want to use third party reporting tools to view and analyze the SavaPage database.
You want optimal (tailored) performance, since SavaPage is intensively used by a very large user population. So, for example, you want to deploy a dedicated database server as a scalable solution.
This chapter describes how to connect and migrate to an external database. For database tuning, see Section 11.3.2, “Database Connection Settings”.
SavaPage is able to use any database that has a JDBC driver available. However, we choose to support PostgreSQL on GNU/Linux servers only. PostgreSQL is designed to be highly scalable, is optimized for concurrent use, and handles datasets of any size efficiently. We have used it in large scale SavaPage implementations and see it behave robust with thousands of users. Above that, PostgreSQL is free and open source software, and complies to open standards.