In-Memory XML Database

By default WorkflowFirst uses Microsoft SQL Compact database (Express) or SQL Server (Professional) as its data store. You can, however, have WorkflowFirst use an XML file instead. This stores all data in an XML file in the application's Files folder as a file called 'data.xml'. 

The XML database is considerably faster than Microsoft SQL Compact or SQL Server, and so it may be suitable for systems that require faster transaction processing. 

This file is stored in memory most of the time, and is saved to disk every couple of minutes. 

However, several important limitations should be noted:

  • The XML database is not fully transactional. Transactions cannot be rolled back. 

  • Because changes are stored in memory they are not guaranteed to be committed to disk, if the application crashes or the computer is switched off, those changes will be lost. 

  • Tagging does not currently work with the XML database. 

  • The size of the database is limited to the amount of available memory, and is also limited by memory fragmentation. The fragmentation issue may mean that databases larger than 100Mb may result in an out of memory exception being raised at startup. As such, the In-Memory XML database option is really only recommended for smaller databases and very specific scenarios where performance is the priority. 

To enable the XML database, go to the server configuration record for the application. You can do this by going to the application record, drilldown to the selected server target, and change the 'Data Store' entry box to be 'XML Database'. You will then have to republish. 

Note: Any data previously held in a SQL Server database will not be transferred to the XML database. You can, however, use the admin-tools export and import to move your data over.


Next Topic:
v4.2.0.956 (beta)
Up Since 2/29/2024 12:02:23 AM