Migrating from 8.1 to 8.5
Describes how you can migrate your application from former 8.1 versions to 8.5 versions.
In release 8.5, services data are no longer stored in Universal Contact Server (UCS) database; they moved to Genesys Moblie Services (GMS) Cassandra database.
- If you are upgrading from 8.1 to 8.5, you must first migrate your Context Services data using the Context Services migration tool.
- If your application needs profiles, you can keep using data stored in UCS. You do not need to modify the 8.1.3 Context Services queries for profiles and interactions. In this scenario, you must also set up your proxy to correctly handle URLs, as shown in the architecture diagram below.
As detailed in the Context Services Developer's Guide, profiles, interactions, and additional metadata resources are no longer available in 8.5. If your application requirements include these resources, you can still use the UCS APIs to manage customer data. You must update the UCS configuration to point to the same base URL than GMS. You should therefore edit your proxy configuration; see below for detailed instructions.
Database Migration Process
The migration tool is a command line tool installed with the Context Services. This tool exports the services stored in UCS and then imports them in the Cassandra Database of the GMS Cluster:
- All service data, including state, tasks, and extensions are migrated.
- All the start/complete events are re-created.
- Launching the tool with all required parameters.
- Extracting Context Service data from UCS DB.
- Importing Context Service data in GMS DB.
Database Migration Results
The migration tool creates the following files after the migration:
- <Migration Tool Directory>/failure.log;
- <Migration Tool Directory>/success.log.
If no error occurs during the migration, the Context Services is then available in the Genesys Mobiles Services cluster.
Interruption during the Database Migration
You can abort the migration during the import stage by entering CTRL-C command at the console.. The migration process may need a few seconds to stop. Then, you will be able to restart the migration tool by specifying the last imported service ID with the -continue-from option.
Here is an interruption sequence diagram.
Migrating the Context Services from UCS to GMS Database
You must complete the following steps to perform the service data migration:
Checking the Business Attributes Mapping Options
Enabling the Custom IDs
Running the Migration Tool
The parameters are described in the following table:
|DB only||Y||Sets the type of Database used for UCS ('oracle' or 'mssql')
|DB only||Yes||Sets the host for the UCS Database
|DB only||Yes|| Sets the port of the UCS Database.
|DB only||Y|| Sets the name of the UCS Database to migrate. In this case, all the services are migrated to the GMS database.
|DB only||Yes|| Sets the user name of the UCS Database.
|-dbpassword||DB import only||Yes||Sets the password of the UCS Database.
|FILE only||Yes|| Sets the migration file which contains the list of ServiceIds to migrate.
This text file (.txt) must contain one service_id per line; for example, you can create a file named listOfIds.txt containing the following list of IDs:
10001 10002 10003
|ALL modes||Yes|| Sets the UCS URL.
|ALL modes||Yes|| Sets the GMS URL.
|ALL modes||Yes|| Sets the GMS tenant DBID.
|ALL modes||No|| In case of restart, specifies from which service_id to continue the migration.
In addition, the migration tool supports a set of additional options which help you to fine-tune your migration. Each option matches the following syntax:
|EXTRACTOR_SELECT_QUERY||DB import only||No|| Sets a specific selection query to migrate data from UCS Database.
The default value is:
SELECT ServiceId, StartTime FROM ServiceStarted UNION SELECT ServiceId, StartTime FROM ServiceStartedAnonymous ORDER BY StartTime
The query must return the service ids in the first column; for example:
// selecting a range of services -DEXTRACTOR_SELECT_QUERY="SELECT ServiceId FROM ServiceStarted WHERE ServiceId >= 822184 AND ServiceId < 922184 ORDER BY StartTime ASC"
// selecting all the associated services which are not completed -DEXTRACTOR_SELECT_QUERY="SELECT ServiceId FROM ServiceStarted WHERE (ServiceId NOT IN (SELECT ServiceId FROM ServiceCompleted)) ORDER BY StartTime ASC"
|THREAD_POOL_SIZE||Any||No|| Sets the number of services to process in parallel.
Default is 30. The default value should be fine in most cases. If you modify this value, you change the number of requests that will be in process in case of user termination on demand (Ctrl-C).
Additional Configuration for UCS Backward Compatibility
Now, you must also configure the new Context Services application to ensure compatibility with your UCS installation. See Configuring CS for UCS Compatibility.