About Data Export Capability
Data Export capability is enabled in select Cloud deployments to periodically copy the data that is stored in the Genesys historical database (called the Info Mart database) into local .csv files, so that the data is available for further import into a data warehouse (the target database) for the purpose of archiving or custom reporting.
Data Export capability (also known as BI Data Feed) exports data from fact and dimension tables that are part of the Genesys Info Mart dimensional model and creates a .zip archive containing individual .csv files, one file per database table.
What tables are included in the data export?
The export does not include aggregate (RAA) tables or internal (GIDB_*) tables except for certain configuration tables, as listed below. The fact and dimension tables included in your specific data export depend on the details of your Genesys Cloud agreement. The following tables are available for export:
- CALLING_LIST_TO_CAMP_FACT (actualized view)
- GROUP_TO_CAMPAIGN_FACT (actualized view)
- PLACE_GROUP_FACT (actualized view)
- RESOURCE_GROUP_FACT (actualized view)
- RESOURCE_SKILL_FACT (actualized view)
The data export for Cloud customers will also include custom user data tables named IRF_USER_DATA_CUST_01 (a fact table for high-cardinality attached data) and USER_DATA_CUST_DIM_01 through USER_DATA_CUST_DIM_08 (dimension tables for low-cardinality attached data). These tables may be empty, depending on the Genesys Info Mart configuration enabled by your Genesys Cloud agreement.
In addition to the data from the Genesys Info Mart dimensional model tables, configuration details data is exported from the following tables:
The output data files are encoded using the UTF8 format.
Genesys Info Mart exports your data from export views, which represent a frozen snapshot of the Info Mart schema at the time the export views were created. For Cloud customers, export views are created when the Data Export feature is enabled for your account. Using export views means that the export will always include the same tables and columns, regardless of any schema changes that may occur as a result of Genesys Info Mart upgrades and database migrations.
The export views include all the tables listed above, including the custom user-data tables.
Using export views frees you from the need to continually update your target database and consumption queries to ensure consistency with a migrated Info Mart schema. For example, without export views, new columns added to a table that gets exported would break an import query that selects all columns from the exported table, unless you have also added the corresponding columns in the target database.
Be aware that using export views means that the export will not reflect any changes that may have occurred in the Info Mart schema since the export views were created, including deletion or renaming of tables or columns, which might affect how Genesys Info Mart populates certain data.
You can request that Genesys personnel update your export views, if you identify that a later version of Genesys Info Mart, configured in accordance with your Cloud agreement, provides new data that you want to be included in your export. For information about Info Mart schema changes between releases, see New in the Info Mart Database and Summary of Info Mart Schema Changes.
By default, the export runs at 00:20, 08:20, and 16:20 every day. While Genesys personnel can adjust the schedule as necessary for your Cloud deployment, the export schedule should not be any more frequent than every 30 minutes.
The export is incremental and uses special audit keys to identify changes in data since the last export. At each export, a chunk of exported data is written into a separate folder that is named according to the following naming convention: export_XXX
where XXX consists of:
- an audit key identifier (audit key high-water mark)
- the maximum date of data contained in all previous exports and this export, in GMT time zone, written in the YYYY_MM_DD_HH_MI_SS format.
The output folder contains several .zip files, as follows:
- export_XXX.zip — zip file with exported data. Each table is stored in a separate file with a file name in the format <table-name>.csv—for example, interaction_fact.csv. Within a .csv file, a header line identifies the table column names. Note that, within the exported .csv files, nulls and empty strings are represented as empty fields.
- export_XXX.zip.sha1 — checksum for export_XXX.zip. The checksum can be validated by sha1sum program (https://en.wikipedia.org/wiki/Sha1sum) and is used to verify that the .zip file is complete on the receiving side.
- export_XXX.extracted.xml — metadata about export_XXX.zip.
Checksums are also generated for each individual table .csv file. If a table does not have any changes since the last export, nothing is written for that table.
Export metadata file
The export_XXX.extracted.xml metadata file includes information about the export file, as shown in the example below.
<info> <created-ts>1521091600</created-ts> <gim-schema-version>8.5.009.15</gim-schema-version> <gim-version>8.5.009.20</gim-version> <hwm-from audit-key="13" created-ts="1520919983"/> <hwm-to audit-key="200074" created-ts="1520995485"/> <max-data-ts>1521006157</max-data-ts> </info>
- created-ts — The UTC timestamp, in seconds since January 1, 1970, for the execution of the export.
- gim-schema-version — The version of the Info Mart database schema used to populate the tables; this schema version is not necessarily the same as the schema version reflected by the export views and actually used for the export.
- gim-version — The version of Genesys Info Mart Server that created the export files.
- hwm-from — The starting point of the data in the export by audit key and the create time, in UTC seconds, of that audit key.
- hwm-to — The ending point of the data in the export by audit key and the create time, in UTC seconds, of that audit key.
- max-data-ts — The maximum time, in UTC seconds, of the data contained in all previous exports and this export.
The hwm-to and hwm-from values must match between successive export runs. Use them to verify that no intermediate export file has been missed on the receiving side. For example, the next export following the example .xml file above is supposed to have hwm-from audit-key = 200074.
The maximum time span of data in any single export file is one day. For example, if historical reporting was not available for two days (because, for instance, the server or database has been down), the export will continue from the last exported high-water mark and move ahead one day in the data. The next export will continue from there, exporting no more than one day at a time, until the export has caught up with the current data.
Genesys provides an SQL script, update_target_gim_db.sql, to assist you in creating a target schema into which to import the exported Info Mart data. Execute the script against your target database to create a schema consistent with the Info Mart schema.
You can also use the script to migrate your target database if the Info Mart database schema changes after you have set up your target database, and your export views have been updated to include the schema changes. The update_target_*.sql script enables you to migrate your target database directly from any Info Mart schema version to any later schema version, by updating the target schema with new tables or columns if they are missing.
When to run the update_target_*.sql script to migrate your target schema following an Info Mart migration depends on your business needs, import processing, and consumption queries. If you decide that you want your export to include new data available in the Info Mart database, first prepare your processing updates to accommodate the changes between the Info Mart versions (see above for links to information about schema changes). When you are ready, co-ordinate with your Genesys Cloud account representative to get your export views updated and to obtain the applicable update_target_gim_db.sql script. Execute the script to migrate your target database before you try to import data from the first export after your export views have been updated.
Custom user-data tables
In releases earlier than 8.5.011.14, the update_target_gim_db.sql script created custom user-data tables named IRF_USER_DATA_CUST_1, USER_DATA_CUSTOM_DIM_1, and USER_DATA_CUSTOM_DIM_2. Starting with release 8.5.011.14, the update_target_gim_db.sql script creates or migrates custom user-data tables named IRF_USER_DATA_CUST_01 and USER_DATA_CUST_DIM_01 through USER_DATA_CUST_DIM_08.
The exported table data typically contains a mix of created and updated rows. For this reason, you should merge newly exported data with existing data loaded from prior exports. For example, first, load the export files into a temporary table and then use an SQL merge statement based on the primary key for the table to merge the data into a permanent target table that holds the cumulative data from prior exports.
Process the export folders in order by folder name.
If necessary, you can restart the export data stream from the beginning or from a fixed date. Also, you can re-export a time span backwards from the most recent export.