Documentation

Caching and Data Integrity Recommendations

Previous Topic

Best Practices

Understand your cache stack

Learn which layers of caching are helping performance and reliability (e.g., the cache provided with c-treeACE and, possibly, cache that is integrated with the OS and any UPS so that it will be flushed in case of a failure.

Know your drives

It is important to read their specifications carefully, paying attention to reliability and recoverability. There is no substitute for performing tests to determine the best settings for your environment:

  • Use the c-treeACE Load Test Utility to get a general overview of performance on your system. This test program is supplied with the c-treeACE Professional Developer's Kit.
  • Use your own application and sample data to experiment with different settings.

Disable disk controller caching

For the best data integrity, disable caching provided by your disk controller.

Use an uninterruptible power supply (UPS)

It may go without saying: Be sure your critical systems are connected to a UPS. Be sure that, if a failure occurs, the UPS will initiate a proper operating system shutdown before the battery is exhausted.

Checklist

In evaluating your configuration, consider the questions in this checklist:

  1. Which file system are you using and what cashing options does it provide?
  2. Which layers of cache do you have on your system (file system, disk controller, etc.)?
  3. Do you have an uninterruptable power supply available?
    • Have you properly configured the UPS to bring the system down cleanly before the battery is exhausted?
    • Have you tested to be sure the c-treeACE Server will be brought down in a safe manner by your UPS-invoked shutdown?
  4. Should disk write cache be enabled?
  5. (Linux) What is the best setting for the barrier option? For more about caching on Linux, see the FairCom White Paper Linux File System Performance and Safety Advisory.
  6. What is the best setting for commit delay?

TOCIndex