6.91 SDO_NET.LOGICAL_POWERLAW_PARTITION
Format
SDO_NET.LOGICAL_POWERLAW_PARTITION( network IN VARCHAR2, partition_table_name IN VARCHAR2, max_num_nodes IN NUMBER, log_loc IN VARCHAR2, log_file IN VARCHAR2, open_mode IN VARCHAR2 DEFAULT 'A', link_level IN NUMBER DEFAULT 1, part_size_tolerance IN NUMBER DEFAULT 0);
Description
Partitions a logical power law (also called scale-free) network, and stores the information in the partition table. (In a power law network, the node degree values contain the power law information.)
Parameters
- network
-
Network name.
- partition_table_name
-
Name of the partition table, which is created by this procedure. (If an existing table with the specified name already exists, it is updated with partition information for the specified link level.) The partition table is described in Partition Table.
- max_num_nodes
-
Maximum number of nodes to include in each partition. For example, if you specify 5000 and if the network contains 50,000 nodes, each partition will have 5000 or fewer nodes, and the total number of partitions will be 10 or higher.
If the
part_size_tolerance
value is greater than 0, the maximum number of nodes to include in each partition is increased, as explained in the description of that parameter. - log_loc
-
Directory object that identifies the path for the log file. To create a directory object, use the SQL*Plus command CREATE DIRECTORY.
- log_file
-
Log file containing information about operations on the logical power law network, including any possible errors or problems.
- open_mode
-
A one-character code indicating the mode in which to open the log file:
W
for write over (that is, delete any existing log file at the specified location and name, and create a new file), orA
(the default) for append (that is, append information to the existing specified log file). If you specifyA
and the log file does not exist, a new log file is created. - link_level
-
Network link level on which to perform the partitioning (default = 1). The link level reflects the priority level for the link, and is used for network analysis, so that links with higher priority levels can be considered first in computing a path.
- part_size_tolerance
-
Allowed tolerance in partition size expressed as a percentage of
max_num_nodes
. Must be from 0 (the default) to 100.A
part_size_tolerance
value greater than 0 effectively raises themax_num_nodes
value. For example, ifmax_num_nodes
is 5000 and you specifypart_size_tolerance
as 10, then the actual maximum number of nodes to include in each partition is 5500 (5000 + 500, because 500 is 10 percent of 5000). In deciding whether to usepart_size_tolerance
and what value to specify, consider the cache size and the probability of related nodes being placed in different partitions.
Usage Notes
After you use this procedure to create the partitions, consider using the SDO_NET.GENERATE_PARTITION_BLOBS procedure, to enable better performance for many network analysis operations, especially with large networks.
If the logical network is not a power law network, do not use this procedure, but instead use the SDO_NET.LOGICAL_PARTITION procedure.
Examples
The following example creates partitions for link level 1 in the MY_LOGICAL_PLAW_NET
network, and creates the MY_LOGICAL_PLAW_PART_TAB table. The maximum number of nodes to be placed in any partition is 5000. Information about the operation is added (open_mode => 'a'
) to the my_logical_plaw_part.log
file, located in the location associated with the directory object named LOG_DIR
.
EXECUTE SDO_NET.LOGICAL_POWERLAW_PARTITION(network => 'MY_LOGICAL_PLAW_NET', - partition_table_name => 'my_logical_plaw_part_tab',- max_num_nodes => 5000,- log_loc => 'LOG_DIR', log_file=> 'my_logical_plaw_part.log',- link_level => 1, open_mode => 'a');
Parent topic: SDO_NET Package Subprograms