Interviewer - Server > Architecture > Interview Service tier > Value Cache
 
Value Cache
The Value Cache is a generic facility for storing hierarchical collections of variables and values. In the case of UNICOM Intelligence Interviewer, the Value Cache stores data that can be used for restarting timed out or stopped interviews and for rolling back active interviews when a respondent or interviewer snaps back to a previous question. The Value Cache also acts as a temporary repository for data awaiting transfer into the case data database.
How the Value Cache is used
Note This topic uses default values for folders and other settings. To change these values, see Value cache settings.
The Value Cache is in the folder named in the InterviewCacheUNC site property in DPM, and is normally:
\\dimremoteadminName\SPSSMR_FMRoot\Interview\Cache
Each Interviewing server also has a local Value Cache in the Cache folder in the UNICOM Intelligence Interviewer installation folder. (Do not use the same folder for the local and shared copies of the value cache. This is because, before writing to a cached file, the system checks for the file it wants in both the shared and local folders. If a file is found in both locations, the local version is deleted so that the shared one will be used. If the two settings point to the same folder, the file that the system needs to use will already have been deleted.)
The Value Cache contains files with unique, computer generated names that match the interview session ID, and that end with a .chj extension. Each file contains the data for one interview. This topic and its subsidiaries refer to these files as cached data files, but you may see them referred to generically in the technical documentation as subscriptions.
The Interview Object model (IOM) writes response data and the values of temporary variables and interview properties to the files in the Value Cache as soon as a question is answered. Each "write" to the cached data file is called a save point, and it contains values for all questions, temporary variables, and interview properties that have been set up to the point at which the respondent or interviewer clicked Next after answering the current question. Any variables that are set between this question and the next question are saved with the answer to the next question as part of the next save point.
If the project has its AutoUpdateDataModel property set to 2, the interviewer session engine also writes response data to the project's case data as soon as each question is answered. This places a heavier load on the Database Service, especially when there are many interviews running simultaneously on a number of projects. You can avoid this by changing the AutoUpdateDataModel property set to 1 (the default), or by switching off the continuous updating of a project's case data and relying on the Transfer Service to copy data from the Value Cache into the case data database instead. Note, however, that suspending the automatic write to the database means that there will be no data available for active interviews in topline tables because the Transfer Service only deals with data for completed interviews.
Note Do not disable the automatic write feature for projects that use sample management project affinity. Restarts from sample management, where the respondent is re-authenticated, rely on the case data being written immediately, and project affinity is ignored when the Transfer Service is used. Restarted interviews are replayed to the last question based on the record in the SQL database. When the automatic write feature is disables, it is possible for the respondent to restart the interview before their data has been transferred to the database.
See
Restarts and rollbacks
Transfer Service
Using the Value Cache and the Transfer Service
See also
Interview Service tier