Some parts of your existing data domain's schema and configuration can be updated on a running data domain without performance impact, while other modifications may have performance implications. Additionally, a few aspects of your data domain's configuration and schema can only be modified before the data records are loaded, or cannot be modified at all. This topic addresses these categories, to help you make decisions about loading data and configuring your data domains.
Once you load source records into the Endeca Server, it creates an internal index. At the initial indexing time, the source records utilize primordial records and system records. Together, these records form the schema for the loaded source records — each primordial record serves as the basis for a system record, and each attribute in a system record represents a particular configuration setting. Thus, once the index is created based on source records, it already contains inside it settings that control various aspects of these records.
Changing the items that affect the schema causes the Endeca Server to re-index its records. Examples of modifications that cause records re-indexing include modifying which attributes in your records are searchable, modifying the language value, and making changes to search characters. If these settings are changed, the Endeca Server must recreate the index for the data domain.
Item | Comments and restrictions on modifying (if exist) |
---|---|
mdex-property_IsTextSearchable | Specifies whether an attribute is searchable. No restrictions on these changes exist, except that they are only allowed for attributes of type string. Making such a change on an attribute that has many assignments on records has a performance cost due to re-indexing. |
mdex-property_TextSearchAllowsWildcards | Affects whether wildcards are allowed in text search on attributes. Has a performance cost. A restriction for modifying this setting is that mdex-property_IsTextSearchable must also be set to true. |
mdex-property_IsPropertyValueSearchable | Affects value search on attributes (and has a performance cost). Has a performance cost. Changing the value for this attribute is only allowed on attributes of type string. |
mdex-property_Language | Specifies the language ID on an attribute. Has a performance cost. Changes are only allowed for attributes of type string. No other restrictions on these changes exist. |
mdex-config_EnableValueSearchWildcard | This setting is part of the Global Configuration Record. It affects whether wildcards are allowed on value search. Has a performance cost. No restrictions on these changes exist. |
mdex-config_SearchChars |
Specifies search characters. Has a performance cost. No restrictions on these changes exist. |
Item | Restrictions on modifying (if exist) |
---|---|
system-navigation_Sorting system-navigation_ShowRecordCounts system-navigation_Select |
You can modify how the records are sorted, or whether record counts are displayed, or how refinements can be selected (one, or many). No restrictions on these changes exist. |
mdex-property_DisplayName mdex-property_Key |
You can modify the display name of an attribute or the name of the standard attribute. No restrictions on these changes exist. |
mdex-dimension_EnableRefinements | You can modify whether to enable the display of refinements on managed attributes. No restrictions on this change exist. |
mdex-config_Spelling* | You can modify various spelling settings. The values for spelling must not be negative. For the changes to take effect, you must run the endeca-cmd command for updating spelling dictionaries. |
mdex-precedenceRule_* | You can modify various precedence rules settings. No restrictions on these changes exist. |
Item | Restrictions on modifying (if exist) |
---|---|
mdex-dimension_IsDimensionSearchHierarchical mdex-dimension_IsRecordSearchHierarchical |
The hierarchy setting for record search and attribute search can be modified only before loading records. |
mdex-property_IsUnique | Affects whether an assignment on this attribute is unique. You can modify it only if no assignments exist on the records (typically, this occurs when data records have not been loaded yet, but the schema records already exist in the index). Also, if you set it to true, mdex-property_IsSingleAssign must also be set to true. |
mdex-property_IsSingleAssign | Affects whether at most one or more values from a single attribute can be assigned on a record. Cannot be modified. |
Deleting attributes marked as unique | Cannot delete any records that have assignments to the attribute marked as unique. Typically, this means that deleting attributes marked as unique can be done only before loading data records. |
mdex-config_SystemRecordVersion mdex-property_Type mdex-dimension_Key mdex-config_Key |
These items, which include type on attributes, can never be modified. |
Managed attribute values | Can be added; cannot be deleted, or modified after they are added. |