Database Export Configuration

This section describes the format and value of parameters in the configuration file used by the data_export.jar utility.

Parameter Values for MTX Objects

In the configuration YAML files that control the export of data, one object parameter represents each MTX object to be exported. The format of each MTX object statement is as follows:

MTXObject:tableName,fieldName1,fieldName2,......,[index(fieldName1+fieldName2+......)]
Where:
  • MTXObject is the MTX data container to export. All instances of MTXObject (including its derived data containers) are exported to the same SQL table. To create one table for each derived data container, there must be one parameter for each derived data container.
  • tableName is the name of the SQL table to store all the instances of an MTX data container.

  • fieldName could be:
    • The name of the field itself (for example, ExternalId)
    • The name of a predefined function (for example, getOwnerId())
    • A multilevel field name to specify a field within a nested object (for example, ActiveBillingCycleDefn.TemplateId)
    • A field name with the derived child class as the prefix (for example, MtxLoginDeviceObject:LoginId)
The following is an example of an MTX object entry:
schemaName: MATRIXX
numberOfThreads: 20
sqlServerTimeZone: Etc/UTC
 
MtxDeviceAccessObject: DEVICEACCESS,ObjectId,ExternalId,getDefaultDeviceId(),getIsMobileDeviceAccess(),MtxMobileDeviceAccessObject:AccessNumber,getIsLoginDeviceAccess(),MtxLoginDeviceAccessObject:AccessId,index(ObjectId),index(getDefaultDeviceId())
MtxDeviceObject: DEVICE,ObjectId,ExternalId,SubscriberId,DeviceType,StatusValue,CurrentStatusTransitionTime,NextStatusTransitionTimeEstimate,getDefaultDeviceAccessId(),getIsMobileDevice(),MtxMobileDeviceObject:Imsi,getIsLoginDevice(),MtxLoginDeviceObject:LoginId,index(ObjectId),index(SubscriberId),index(getDefaultDeviceAccessId())
MtxGroupObject: GROUPS,ObjectId,ExternalId,WalletId,Tier,StatusValue,CurrentStatusTransitionTime,NextStatusTransitionTimeEstimate,TimeZoneId,ParentGroupId,index(ObjectId),index(WalletId),index(ParentGroupId)
MtxMemberJoinObject: SUBSCRIBER_GROUP_MEMBER,ObjectId,SubscriberId,GroupId,index(ObjectId),index(SubscriberId),index(GroupId)
Note: The entries in your YAML file should only contain a line break between each separate MTXObject entry or configuration file parameter.

Other Parameters

Other Parameters describes the other parameters in the configuration file that control the behavior of the data_export.jar utility. If any of them are not present in the configuration file, their default values are used.

Table 1. Other Parameters
Parameter Description Default Value
schemaName Specifies the SQL schema for the SQL tables that the program will generate. This entry can also be overwritten from the command line by specifying the schema name when you run the data_export.jar utility. MATRIXX
numberOfThreads Determines the number of threads the program should use to process the checkpoint and MEF files. Each file is processed by one thread. The maximum value for this parameter is 100. 10
underscoreColumnName Tells the program whether to insert underscores when generating SQL column names. If the value equals no, the MTX field names are used as column names. If the value equals yes, the MTX field names are converted to upper-case characters and underscores are inserted between the words. Valid values are yes and no. yes
createSqlIndex Tells the program whether to generate index creation statements in the output script file, which could be used to create SQL tables. Valid values are yes and no. yes
sqlServerTimeZone Specifies the time zone of the SQL database server. The program converts all dates and times to the specified time zone before writing the time stamps to the output CSV files. Etc/UTC
quoteChar Specifies the character to use for quoted strings; valid values are " (double quote) and ' (single quote). "\'"
escapeQuote Specifies whether to enable the functionality to escape a quote; valid values are yes and no. no