MDC and MDC Field Extension Configuration

You can use the configuration parameters in create_config.py to create custom MATRIXX Data Containers (MDCs) and add fields to custom MDCs. To add fields to an MDC, you must create a custom MDC that is based off of a system MDC and add the fields to the new custom MDC.

MDC and MDC Field Extension Configuration lists the information required to configure custom MDCs and MDC field extensions. Custom MDCs are defined in the /opt/mtx/conf/mdc_config_custom.xml file.
Table 1. MDC and MDC Field Extension Configuration
Parameter Description Default Value
Add MDCs You can add private MDCs to extend MATRIXX subscriber data, for example, to create a new subscriber type. For each MDC to add, specify the following information:
  • Container Name

    This is the name of the MDC. The name cannot start with Mtx and is limited to 63 characters in length.

    To print a list of system MDC names to a file, enter the following command in a separate terminal as user mtx:

    print_data_container_pickled_file.py -s > system_mdc_list.txt
  • Container Key

    This is a unique negative integer that identifies the MDC during lookup operations. For better performance start with -1 and use sequential numbers for each additional custom MDC. Once a number has been used, it should not be re-assigned or changed in the future. Doing so can lose the original data using the original identifier.

  • Base Container, if one is used. For example, to add a private field to the MATRIXX subscriber object, the base container is MtxSubscriberObject.
  • Created Schema Version

    The customer's version number for the MDC. New custom MDCs must contain a version number that is a positive integer. The lowest number valid is 2. Integrators can use the version number when configuring different deployment options. For example, an MDC might have a version number of 2 which will only be deployed with a customer's version 2 schema. If the deployed MDC does not work as expected, they can revert back to schema version 1. Each time a change is made to the MATRIXX configuration file, the schema version number must be incremented higher than the highest existing schema version.

  • Deleted Schema Version

    The customer's version number in which the MDC is deleted, for example, 1. The default value is 0, which means the field has not been deleted.

  • Container Key for the mapped Extension MDC

    If the MDC is based off of a system MDC, the configuration script creates a duplicate of the new MDC and names it <new_mdc>Extension. All SubMan API calls will reference the Extension MDC name rather than the name of the new one. You must provide a unique, negative Container Key value for the Extension MDC.

no
Add MDC Fields To add MDC fields, you must answer y when asked to add any MDCs.
For each MDC field to add, specify the following information:
  • Field Name

    The name of the field. The name must be alpha-numeric ASCII with no special characters. The maximum size is 63 bytes.

  • Data Type

    The type of data contained in the field, for example, signed int32, phone number, or string. For a list of valid data types, see the discussion about MATRIXX Data Container field data types.

  • Maximum Field Size

    You can set a maximum field size for MDC fields of type string and blob to save space in the database. To allow data of any size to be stored as the field value, enter 0 when prompted for this value.

  • MDC Field Type

    Fields can be a single value, a list, or an array.

  • Created Schema Version

    The customer's version number for the field. New private fields must contain a version number that is a positive integer. Integrators can use the version number when configuring different deployment options. For example, a field might have a version number of 1 which will only be deployed with a customers version 1 schema.

  • Deleted Schema Version

    The customer's version number in which the field is deleted, for example, 2. The default value is 0, which means the field has not been deleted.

no