14.5 Data Structures Used by the Routing Engine
Older versions of the routing engine (before Release 12.1) must have the following tables in their schema.
-
EDGE
-
NODE
-
PARTITION
-
SIGN_POST
The EDGE and NODE tables store edge and node information about the street network used by the routing engine. To understand how edges and nodes are used to represent street segments, intersections, and other entities in a street network, you must be familiar with the Oracle Spatial Network Data Model, which is described in Oracle Spatial Topology and Network Data Model Developer's Guide.
The following sections describe the tables used by the routing engine, in alphabetical order by table name.
Parent topic: Routing Engine
14.5.1 EDGE Table
The EDGE table contains one row for each directed edge in a street network. Each street segment (a part of a road between two nodes) is an undirected edge that corresponds to one or more directed edges in the EDGE table. The EDGE table contains the columns shown in Table 14-1.
Table 14-1 EDGE Table
Column Name | Data Type | Description |
---|---|---|
EDGE_ID |
NUMBER |
Edge ID number. Can be a positive or negative value, as explained in Relationship between Routing Engine and Geocoder. (Primary key.) |
START_NODE_ID |
NUMBER |
Node ID number of the start node of this edge. |
END_NODE_ID |
NUMBER |
Node ID number of the end node of this edge. |
PARTITION_ID |
NUMBER |
Partition ID number of the network partition that contains this edge. |
FUNC_CLASS |
NUMBER |
Functional road class: a number from 1 through 5, with 1 indicating a large, high-speed, high-volume road, and each successive class generally smaller in size, speed, and volume. Class 2 roads have consistent speeds and are used to get traffic to and from class 1 roads. Class 3 roads have high volume and are used to connect class 2 roads. Class 4 roads move volumes of traffic between neighborhoods (for example, a busy main road in a city). Class 5 roads are all other roads (for example, a small, low-volume street in a neighborhood). |
LENGTH |
NUMBER |
Length of this edge, in meters. |
SPEED_LIMIT |
NUMBER |
Assigned speed limit for this edge, in meters per second. |
GEOMETRY |
SDO_GEOMETRY |
Line string geometry representing this edge, with the coordinates ordered from the start node to the end node. |
NAME |
VARCHAR2(128) |
Name of this edge. |
DIVIDER |
VARCHAR2(1) |
A value of |
Parent topic: Data Structures Used by the Routing Engine
14.5.2 NODE Table
The NODE table contains one row for each node that is the start node or end node of one or more edges in the street network. A node often corresponds to an intersection (the intersection of two edges); however, a node can be independent of any intersection (for example, a "no exit" or "no outlet" street). The NODE table contains the columns shown in Table 14-2.
Table 14-2 NODE Table
Column Name | Data Type | Description |
---|---|---|
NODE_ID |
NUMBER |
Node ID number.(Primary key.) |
GEOMETRY |
SDO_GEOMETRY |
Point geometry representing this node. |
PARTITION_ID |
NUMBER |
Partition ID number of the network partition that contains this node. |
Parent topic: Data Structures Used by the Routing Engine
14.5.3 PARTITION Table
The PARTITION table is generated by the routing engine based on the contents of the EDGE and NODE tables. The PARTITION table contains the columns shown in Table 14-3.
Table 14-3 PARTITION Table
Column Name | Data Type | Description |
---|---|---|
PARTITION_ID |
NUMBER |
Partition ID number.(Primary key.) |
SUBNETWORK |
BLOB |
Part of the network included in this partition. |
NUM_NODES |
NUMBER |
Number of nodes in this partition. |
NUM_NON_BOUNDARY_EDGES |
NUMBER |
Number of edges in this partition that are edges that are completely contained within the partition. |
NUM_OUTGOING_BOUNDARY_EDGES |
NUMBER |
Number of edges in this partition that start in this partition and terminate in another partition. (An edge cannot be in more that two partitions; for example, an edge cannot start in one partition, go through a second partition, and end in a third partition.) |
NUM_INCOMING_BOUNDARY_EDGES |
NUMBER |
Number of edges in this partition that start in another partition and terminate in this partition. (An edge cannot be in more that two partitions; for example, an edge cannot start in one partition, go through a second partition, and end in a third partition.) |
Parent topic: Data Structures Used by the Routing Engine
14.5.4 SIGN_POST Table
The SIGN_POST table stores sign information that is used to generate driving directions. For example, a sign might indicate that Exit 33A on US Route 3 South goes toward Winchester. A SIGN_POST row might correspond to a physical sign at an exit ramp on a highway, but it does not need to correspond to a physical sign. The SIGN_POST table contains the columns shown in Table 14-4.
Table 14-4 SIGN_POST Table
Column Name | Data Type | Description |
---|---|---|
FROM_EDGE_ID |
NUMBER |
Edge ID number of the edge to which this sign applies (for example, the street segment containing the exit ramp).(Primary key.) |
TO_EDGE_ID |
NUMBER |
Edge ID number of the edge to which this sign points (for example, the street segment to which the exit ramp leads). |
RAMP |
VARCHAR2(64) |
Ramp text (for example, |
EXIT |
VARCHAR2(8) |
Exit number (for example, |
TOWARD |
VARCHAR2(64) |
Text indicating where the exit is heading (for example, |
LANGUAGE_CODE |
CHAR (3 CHAR) |
A three-letter language code indicating the language used on the sign. Examples |
Parent topic: Data Structures Used by the Routing Engine