DataTranslator Basic and Flexible Cache usage

DataTranslator supports two cache strategies for storing translation data at runtime. The choice between Basic Cache and Flexible Cache directly affects database load and translation performance.

Record fetch limits

If M3 contains more than the default limit of 20,000 records, fetching stops if you are using Basic Cache. If you are using Flexible Cache, then a higher limit of 100,000 records is used.

A message is logged in the log table if a record is used but does not show in the Basic Cache.
Note: Records beyond the limit are not fetched and not available for translation at runtime.

When to use Basic Cache

Basic Cache is the recommended default cache strategy for most tenants.

Use Basic Cache when the total DT records fit within the DataTranslation limit of 20,000. All records load into memory.

Basic Cache returns the original value with trailing spaces removed when no matching translation key is found. Because Basic Cache does not query the database for missing keys, cache misses are handled immediately with no overhead.

When to use Flexible Cache

Enable Flexible Cache when the Total DT records exceed the DataTranslation limit of 20,000.

When no matching translation key is found, Flexible Cache might check the database before determining that no translation exists. This additional processing may result in higher response times for cache misses compared to Basic Cache.

Performance implications

This table shows the recommended cache strategy to use:

Option Description
Basic Cache Recommended when the total number of DataTranslation records is 20,000 or fewer

Provides the best translation performance because all translation data is kept readily available in memory

Flexible Cache Recommended for environments with a large number of DataTranslation records

Automatically manages larger translation data sets while maintaining reliable translation coverage and performance

When there are 20,000 or fewer DataTranslation records, Flexible Cache can store all records in memory. As a result, translations are served from the cache without database lookups and perform similarly to Basic Cache.

Note: When all records fit in the Flexible Cache, misses also return immediately without DB queries, behaving identically to Basic Cache.

Monitoring

When Flexible Cache is enabled and total records exceed the in-memory limit of 20,000 records, the system collects:
  • Cache hit or miss ratio: Cache effectiveness
  • DB fallback count: Queries triggered by misses
  • DB query time: Time spent in fallback queries
  • Eviction count: Capacity pressure indicator

If DB fallback count is high and queries consistently return no result, we recommend that you fix the mapping and correct the records in the data translations table.