Data Domain profile parameters

The endeca-cmd put-dd-profile command, or the Cluster Web Service putDataDomainProfile operation, let you configure a data domain profile and its parameters. This topic lists these parameters and provides their descriptions.

Each data domain profile you create in the Oracle Endeca Server using the Cluster Web Service has the following parameters:

Note: The following table lists the parameters as they appear in the Cluster Web Service WSDL. Therefore, if you are using the Cluster Web Service requests directly, use this format. The endeca-cmd utility utilizes calls to the Cluster Web Service and therefore lets you specify the same characteristics with a slightly different format. For example, the allowQueriesOnLeader parameter from the Cluster Web Service is equivalent to the endeca-cmd put-dd-profile --query-leader command. Whenever possible, both formats are included in the table.

If you would like to use default values for any of the parameters, depending on the tool you use for sending web service requests, you may or may not need to specify the default values explicitly. For example, soapUI fills in the default if it is not specified, by looking it up in the web service's WSDL. Similarly, if you use the JRF web services interface, the Endeca Server also fills in the default value if the parameter is omitted in the request, or if parameter is listed but its value is not specified. However, other clients may not fill in the default if you do not specify the parameter and its value explicitly.

Parameter Type Description
name string Name of the data domain profile. The endeca-cmd command does not have an equivalent option; the name is specified to endeca-cmd on the command line.
description string Description of the data domain profile. The equivalent command using this parameter in endeca-cmd is:
endeca-cmd --description

If you use endeca-cmd, then if the description has spaces, it must be enclosed in double quotes.

allowQueriesOnLeader boolean If set to true, indicates that the leader node should handle read (non-updating) queries in addition to handling updating queries. The default is true. If set to false, indicates that the leader node should be dedicated to handling updating queries only. The equivalent command using this parameter in endeca-cmd is:
endeca-cmd 
put-dd-profile --query-leader true
Note: Non-updating queries represent read requests to the index. Updating queries change the index or other configuration settings in the Dgraph process; they represent write requests to the index.
numFollowers integer Specifies the desired number of follower nodes to handle non-updating query load. The default is 0 (in this case, the data domain cluster consists of one leader node). If you set allowQueriesOnLeader to false, numFollowers must be equal to or greater than one.
Note: Only one Dgraph node for each data domain could be hosted by each Endeca Server instance. Therefore, you must have a sufficient number of Endeca Server nodes before adding follower nodes to a data domain. For example, you cannot create a four-node data domain in an Endeca Server cluster with only three Endeca Server nodes.
The equivalent command with this parameter is:
endeca-cmd put-dd-profile --num-followers 2
allowOversubscribe boolean If set to true, indicates that the Endeca Server Cluster can exceed its capacity while sharing nodes hosting this data domain with other data domains. The default is true. The setting for this flag works together with numComputeThreads.

When this setting is true, the data domain cluster nodes may still use less capacity than is available on the Endeca Server node. However, this flag allows the Dgraph nodes to compete for processing threads configured in the data domain profile, even if the Endeca Server node may not have these threads available. The thread allocation in this case is handled by the operating system. Allowing the node to oversubscribe can be useful if you are setting data domain profiles for the development environment and would like to conserve hardware resources.

If a data domain cluster is allowed to oversubscribe, the Endeca Server cluster may host the nodes for this data domain on a node that does not have enough capacity. For example, an Endeca Server node with 12 CPUs can host 7 Dgraph nodes (for 7 different data domain clusters), each configured with --num-compute-threads 2 and --oversubscribe true. The Endeca Server nodes in this data domain's configuration are considered "oversubscribed".

If set to false, indicates that the nodes in the Endeca Server cluster hosting this data domain can share their resources only within their capacity. For example, if the Endeca Server node has 16 CPUs, and is hosting 2 Dgraph nodes each configured with 8 threads, it is sharing its capacity equally between two data domain nodes, utilizing 100% of its CPU, but not oversubscribing. Configuring the data domain profile that is not allowed to oversubscribe is useful when setting a data domain with high hardware-utilization requirements in a production environment. The equivalent command with this parameter is:
endeca-cmd put-dd-profile --oversubscribe true
numComputeThreads integer The number of threads to allocate for processing requests on each Dgraph node serving a data domain using this profile. The number of threads should be equal to or greater than 2. The default is 2. The equivalent command with this parameter is:
endeca-cmd put-dd-profile ---num-compute-threads 4
computeCacheSizeMB integer The amount of RAM, in MB, to allocate to the result cache on each Dgraph node in the data domain. The default is 0, which is interpreted as follows:
When an absolute value is 0, the default Dgraph cache size is computed as 10% of the amount of RAM available on the Endeca Server node hosting the Dgraph node. The equivalent command with this parameter is similar to this example that specifies 1MB as value of the Dgraph cache:
endeca-cmd put-dd-profile --compute-cache-size 1
startupTimeoutSeconds integer The time for the Dgraph nodes to start up in the data domain. The default is 600 seconds. The equivalent command with this parameter is:
endeca-cmd put-dd-profile --startup-timeout <num_sec>
shutdownTimeoutSeconds integer The time for the Dgraph nodes to gracefully shut down. The default is 30 seconds. The equivalent command with this parameter is:
endeca-cmd put-dd-profile --shutdown-timeout <num_sec>
sessionIdType string Specifies the method you would like to use for handling session affinity, when routing requests to this data domain. The default method is header — the HTTP header is used for session affinity if you don't specify sessionIdType in the data domain profile.
Available options are:
  • HEADER. The HTTP headers will be used for session affinity.
  • PARAMETER. The URL parameters will be used.
  • COOKIE. Cookies will be used.
The values for these options are not case-sensitive.
The equivalent endeca-cmd command with this parameter is:
endeca-cmd put-dd-profile 
--session-id-type header
This example specifies header as the session ID key.
sessionIdKey string Specifies the name of the object to be checked, for establishing session affinity through one of the methods specified with sessionIdType.

The value of sessionIdKey can be any string that is allowed to be used as an HTTP header, a URL parameter, or a cookie name.

The default is X-Endeca-Session-ID. If you don't specify the value for sessionIdKey, it is used either as a header, a URL parameter, or a cookie. The equivalent endeca-cmd command with this parameter is:
endeca-cmd put-dd-profile 
--session-id-key X-Endeca-Session-ID
readOnly boolean Indicates whether the Dgraph nodes in the data domain should be read-only. The default is false.
Note: If you set allowQueriesOnLeader to true, readOnly must be false.
The equivalent command with this parameter is:
endeca-cmd put-dd-profile --read-only false
args string List of flags to specify to the Dgraph processes serving a data domain using this profile. If not specified, no Dgraph flags are used. The equivalent command with this parameter is:
endeca-cmd put-dd-profile --args <list_of_args>
To obtain a list of flags, use: endeca-cmd put-dd-profile --args --usage For a list of Dgraph flags, see the Oracle Endeca Server Administrator's Guide.