Jump to: navigation, search

Physical Data Model for a PostgreSQL Database

Interaction Database (IDB) structure is divided into nine schemas:

1 Core 76 tables, containing data related to configuration, calls and parties, attached data, logins and sessions, services and dictionaries, and logs.
2 Outbound Contact 12 tables, containing data relating to Genesys Outbound Contact.
3 Multimedia Attached Data 2 tables, containing details related to attached data in multimedia interactions.
4 Virtual Queue 1 table, containing data related to virtual queues in call processing.
5 Custom States 3 tables, containing data related to user data attached to voice interactions.
6 Custom Dispatcher Attached Data 1 table, containing data related to attached call data from a custom attached data dispatcher.
7 Data Source Session Control 5 tables, containing data related to session control for each ICON provider.
8 Active Call and Active Interaction 2 tables, containing data related to the latest states of active calls and interactions.
9 Virtual Queue History 1 table, containing data related to Universal Routing Server timestamps for virtual queues.

This document presents these schemas in separate chapters, each containing one or more detailed diagrams of the schema and an examination of its tables, presented in alphabetical order. The examination includes descriptions of each table and each of the table's fields. Field descriptions include a summarization of the most common database properties, such as data type and key information. Some of the abbreviations used to characterize fields throughout this document are:

  • P, for primary key
  • M, for mandatory field
  • F, for foreign key

Abbreviations for index characterizations include:

  • U, for unique
  • C, for cluster

The field names in this document are provided in a free-style format with regard to letter case (for example, TenantID instead of TENANTID), whereas the actual field names are in uppercase in the SQL scripts used to initialize IDB.


The List of Indexes for each schema, as well as the table-specific Index List after the applicable tables, includes only the indexes that are considered part of the baseline schema. The IDB initialization and upgrade scripts might create additional indexes to streamline IDB functioning for a particular schema version. In some cases, the scripts might drop some of the baseline indexes listed in this document.

Tables partitioned for use with the purgePartition811 stored procedure have global indexes for all indexes identified in this PDM as unique and local indexes for all non-unique indexes.

System Fields

Certain fields appear in multiple tables. These fields, whose field names all begin with GSYS_, are reserved for use by internal Genesys system functions.

The following fields can have special and unique meanings in various tables:


The following fields have identical meanings regardless of where they appear:

  • GSYS_DOMAIN—In all operational tables, contains the data source session ID (DSS_ID) for the session that was active when the data was processed by ICON. The DSS_ID identifies the session in the data source session control tables (the G_DSS_*_PROVIDER tables, where the asterisk represents the particular provider, as specified by the ICON role—cfg, gcc, gls, gos, or gud). The value points to (a) a data source session ID that uniquely identifies the connection between the ICON application, the data source application (for example, T Server), and the switch; and (b) the timeframe during which the connection was active.
In other tables, GSYS_DOMAIN is reserved for internal use.
  • GSYS_PARTITION—A key that is used for partitioning.
  • GSYS_SYS_ID—Reserved for internal use.
  • GSYS_SEQ—The non-unique sequence number of the statements to be inserted into the database.
  • GSYS_USEQ—The non-unique sequence number of the statements to be updated in the database.
  • GSYS_TS—Reserved for internal use
  • GSYS_TC—Reserved for internal use

Comment on this article:

blog comments powered by Disqus
This page was last modified on 31 October 2016, at 16:21.