Storing Project Databases in NAS

We are sometimes asked about storing project databases in NAS (network attached storage), is it possible, is it a good idea, and how to do it.

NAS

Network attached storage is a type of storage device that attaches directly to a network. It is typically a RAID array of disks with one or more interfaces and some management software. It provides network storage without a need to manage a server with attached storage.

A NAS storage device
A Typical NAS Device

Storing Project Databases in NAS

Each Cradle project database is a directory of files and subdirectories. It can be stored anywhere. So, yes, you can store a Cradle database on a NAS device.

Since the NAS device is not a server in the normal sense, it will not be running any part of Cradle and, in particular, will therefore not be running the Cradle Database Server (CDS).

Therefore storing Cradle database(s) on a NAS device means that you are storing them remote form the CDS.

Storing Project Databases in Server Storage

For the same reason, you can store a Cradle project database on a server that is separate from the computer that runs the CDS.

Therefore storing Cradle database(s) on a separate server means that you are storing them remote form the CDS.

Advantages and Disadvantages

If you don’t have a server in your network, then a NAS device is a cost-effective means to add centralised storage.

NAS devices are often used to collate data for backup. Storing Cradle databases on a NAS device eliminates the need to copy the databases onto the NAS device for backup.

Not storing Cradle databases on the machine that runs the CDS adds considerable latency between the CDS and the disk(s) that store the databases. Increasing latency worsens the performance of the CDS.

How to Store Cradle Databases on NAS

  1. Specify the location of the database’s directory using a UNC pathname, of the form: \\hostname\path
  2. Ensure that the access rights of the database’s NAS directory are accessible RW by the Windows ‘System’ user of the computer that runs the CDS or, for Linux, either root or whatever user your CDS runs as on its local machine

Recommendations

In general, we do not recommend storing project databases in NAS or indeed in any network-based resource.

If possible, only store your Cradle databases on the machine that runs the CDS and backup your databases regularly!