Administration: Optimizing Queries

Dynamic Caches

Filesystem Caching

Omnidex benefits greatly from the filesystem caching that is automatically managed by the operating system. Omnidex purposefully maintains small index files and uses standard file system calls in order to insure the best caching by the operating system.

To support filesystem caching, it is important to maintain adequate physical memory on the Omnidex server. Consult the System Requirements documentation for specific memory recommendations. In addition to adequate memory, it is also important to avoid running other processes on the Omnidex server that would flood the filesystem cache by doing excessive I/O.

The applications most likely to flood the filesystem cache with excessive I/O are relational databases, such as Oracle, SQL Server and MySQL. These databases use retrieval strategies that are much more dependent on direct access to the data, usually with multiple threads or processes performing large amounts of I/O at the same time. This quickly floods the filesystem cache, and it will have a significant negative impact on Omnidex performance.

When possible, run Omnidex on a server that is separate from the relational database. In these situations the database will be accessed through the network, using protocols like SQL*Net or ODBC. This network interface may slow down Omnidex's access to the underlying database, but in the long run, this strategy insures the best overall Omnidex performance. This is especially true since Omnidex often optimizes queries so that no database access is required. Note that if Omnidex is accessing raw data files, then this separation is not needed.

Additional Resources

See also:

 
Back to top
admin/optimization/caches/filesystem.txt ยท Last modified: 2016/06/28 22:38 (external edit)