Question & Answer
What are the considerations and configuration steps for sharing a single database with multiple object stores?
You need information on how to share a database with multiple object stores.
Sharing a database with multiple object stores is supported on all releases of Content Engine. The situation depends on the database vendor. With Oracle the instance typically hosts a single database and sharing a database is common. On SQL Server and DB2 the instance typically hosts multiple databases, so it is common to dedicate a database within an instance to a single object store. A dedicated database allows for finer control for tuning, administration and independent backups. On DB2 and SQL Server, it is best practice to not share the GCD database. For all support statements across application families regarding database sharing, consult the IBM FileNet InfoCenter planning and preparing topics under database planning.
Prior to Content Platform Engine 5.2, in order to install multiple object stores in the same database, the following steps would be performed.
On DB2 one must first create a separate operating system user and then specify that user in a new (XA and non-XA) data source pair in the application server. As in the case of a dedicated database, each object store would have a dedicated pair of data sources. With a shared database, the only configuration difference is that in the data sources, while the database name is specified to be the shared database name, the user name must be different. When the Content Engine connects to the shared database, the implicit schema database permission for the user allows objects to be created with a schema name the same as the login user name, thereby avoiding any collisions of the same object.
On SQL Server you similarly specify a different database login (user name) in the data sources, but you must also configure a different default schema name for the database user using SQL Server tools (such as Management Studio). With different schemas, objects associated with the new object store will not collide with objects from the original object store.
On Oracle the database user name equates to the schema name, so to create stores in the same database (instance) you specify distinct user names in each data source pair.
Content Platform Engine 5.2 now supports sharing a database with a single shared data source pair. The P8 documentation topic "Guidelines for sharing database connections", discusses the following benefits:
- Reduces usage of database connections by the Content Platform Engine server
- Reduces the application server administrative overhead of managing the data sources
- Reduces the database administrator overhead with fewer databases
- Allows you to create new object stores without the intervention of the database administrator and the application server administrator
- Object stores and isolated regions that share a database require fewer data sources and database connections
See the P8 Documentation for more benefits, restrictions, required database permissions and additional details.
The P8 documentation for different releases can be found here: http://www-01.ibm.com/support/docview.wss?uid=swg27010422
17 June 2018