Oracle® Secure Enterprise Search Administration API Guide 11g Release 2 (11.2.2) Part Number E23428-01 |
|
|
PDF · Mobi · ePub |
Partitioning is used to improve the query performance of large data sets. You can use multiple partitions to distribute the document index across physical storage devices. I/O is then performed in parallel to gain the best query performance.
See Also: "Partitioning for Parallel Query"
Object Type
Universal
State Properties
Property | Value |
---|---|
status |
ACTIVE INACTIVE |
Supported Operations
activate export * getState update
* The partitionConfig
object must be activated before you can export it.
Administration GUI Page
None
XML Description
The <search:partitionConfig>
element describes partitioning:
<search:partitionConfig> <search:partitionAttrs> <search:partitionAttr> <search:name> <search:partitionRules> <search:partitionRule> <search:partitionValue> <search:valueType> <search:ruleType> <search:storageArea>
Element Descriptions
Describes the partition configuration rules. It contains these elements:
<search:partitionAttrs> <search:partitionRules>
Contains a <search:partitionAttr>
element.
Describes an attribute on which partitioning is based. It contains a <search:name>
element.
Contains the name of any String-type search attribute, or one of these values:
EQ_SOURCE_NAME
: The name of the data source.
EQ_SOURCE_TYPE
: The source type, which must exactly match a defined source type name. For a list of source types, export the sourceType object.
Contains one or more <search:partitionRule>
elements.
Describes a partition rule for the expected values of the partitioning attribute. It contains these elements:
<search:partitionValue> <search:valueType> <search:ruleType> <search:storageArea>
Contains the partition value. It can contain an expected value of the partitioning attribute or one of these values:
EQ_OTHER
: Identifies the partition rule when none of the other defined values of <search:partitionValue>
match the attribute value of the document.
EQ_DEFAULT
: Identifies the partition rule when no partitioning attribute is defined.
Contains the type of partitionValue
: ATTR
is it is an attribute value, or META
if it is EQ_OTHER
or EQ_DEFAULT
. Required.
Contains the type of partition rule. Required.
HASH
: Evenly distributes the index values for a large set of documents across the list of storage areas. Each partition is located in one storage area.
VALUE
: Maps the specified partition value to one partition. Oracle SES assigns this rule initially when partitioning is enabled and only one storage area is defined out of the box. Do not use this value when you plan to use multiple storage areas for parallel query. Specify HASH
instead.
For a VALUE
rule, the name of a single storageArea
object.
For a HASH
rule, a comma-delimited list of storageArea
objects used by this partition rule. Repeat the name of a storageArea
to create multiple partitions within a single tablespace. Remember that a storageArea
object is a tablespace in Oracle Database that is registered for use with Oracle SES.
For example, this list creates one partition in each tablespace:
sa1, sa2, sa3
The next list creates three partitions in sa1
and two partitions in sa2
:
sa1, sa1, sa1, sa2, sa2
Examples
This XML document describes partitioning of the document index across six storage areas named sa1 to sa6:
<search:config productVersion="11.2.1.0.0" xmlns:search="http://xmlns.oracle.com/search"> <search:partitionConfig> <search:partitionRules> <search:partitionRule> <search:partitionValue>EQ_DEFAULT</search:partitionValue> <search:valueType>META</search:valueType> <search:ruleType>HASH</search:ruleType> <search:storageArea>sa1, sa2, sa3, sa4, sa5, sa6</search:storageArea> </search:partitionRule> </search:partitionRules> </search:partitionConfig> </search:config>
This example creates a partitioning rule based on the Language attribute. Documents with a value of en (English) or ja (Japanese) for the Language attribute are indexed in the sa1 storage area. All other documents are hashed into the sa2 and sa3 storage areas.
<search:config productVersion="11.2.1.0.0" xmlns:search="http://xmlns.oracle.com/search"> <search:partitionConfig> <search:partitionAttrs> <search:partitionAttr> <search:name>Language</search:name> </search:partitionAttr> </search:partitionAttrs> <search:partitionRules> <search:partitionRule> <search:partitionValue>en,ja</search:partitionValue> <search:valueType>ATTR</search:valueType> <search:ruleType>VALUE</search:ruleType> <search:storageArea>sa1</search:storageArea> </search:partitionRule> <search:partitionRule> <search:partitionValue>EQ_DEFAULT</search:partitionValue> <search:valueType>META</search:valueType> <search:ruleType>HASH</search:ruleType> <search:ruleSetting></search:ruleSetting> <search:storageArea>sa2,sa3</search:storageArea> </search:partitionRule> </search:partitionRules> </search:partitionConfig> </search:config>
The next example stores the document index from the Doc Library source in sa1, from My Web Site in sa2, and from all other sources in sa3:
<search:config xmlns:search="http://xmlns.oracle.com/search" productVersion="11.2.1.0.0"> <search:partitionConfig> <search:partitionAttrs> <search:partitionAttr> <search:name>EQ_SOURCE_NAME</search:name> </search:partitionAttr> </search:partitionAttrs> <search:partitionRules> <search:partitionRule> <search:partitionValue>Doc Library</search:partitionValue> <search:valueType>ATTR</search:valueType> <search:ruleType>VALUE</search:ruleType> <search:storageArea>sa1</search:storageArea> </search:partitionRule> <search:partitionRule> <search:partitionValue>My Web Site</search:partitionValue> <search:valueType>ATTR</search:valueType> <search:ruleType>VALUE</search:ruleType> <search:storageArea>sa2</search:storageArea> </search:partitionRule> <search:partitionRule> <search:partitionValue>EQ_OTHER</search:partitionValue> <search:valueType>META</search:valueType> <search:ruleType>VALUE</search:ruleType> <search:storageArea>sa3</search:storageArea> </search:partitionRule> </search:partitionRules> </search:partitionConfig> </search:config>