14.5 ルーティング・エンジンで使用されるデータ構造

古いバージョンのルーティング・エンジン(リリース12.1より前)では、スキーマに次の表が必要です。

  • EDGE

  • NODE

  • PARTITION

  • SIGN_POST

EDGE表およびNODE表には、ルーティング・エンジンで使用する街路ネットワークに関するエッジおよびノードの情報が格納されます。エッジとノードを使用して通りセグメント、交差点および街路ネットワーク内のその他のエンティティを表現する方法を理解するには、Oracle Spatialネットワーク・データ・モデル(Oracle Spatialトポロジおよびネットワーク・データ・モデル開発者ガイドを参照)を十分に理解している必要があります。

これ以降の項では、ルーティング・エンジンで使用する表について、表名のアルファベット順に説明します。

14.5.1 EDGE表

EDGE表には、街路ネットワークの方向付きエッジごとに1つの行が含まれます。それぞれの通りセグメント(2つのノード間の道路の一部)は、方向のないエッジで、EDGE表内の1つ以上の方向付きエッジに対応します。このEDGE表に含まれる列を、表14-1に示します。

表14-1 EDGE表

列名 データ型 説明

EDGE_ID

NUMBER

エッジID番号です。「ルーティング・エンジンとジオコーダ間の関係」で説明されているように、値は正または負にできます。(主キー。)

START_NODE_ID

NUMBER

このエッジの開始ノードのノードID番号です。

END_NODE_ID

NUMBER

このエッジの終了ノードのノードID番号です。

PARTITION_ID

NUMBER

このエッジが含まれるネットワーク・パーティションのパーティションID番号です。

FUNC_CLASS

NUMBER

1から5の数字で表す道路機能クラスです。1は大規模で交通量が多い高速道路を示し、通常、数字が大きくなるに従って、規模、走行速度および交通量が小さくなります。クラス2の道路は安定した速度が維持され、クラス1の道路へのアクセスに使用されます。クラス3の道路は交通量が多く、クラス2の道路への接続に使用されます。クラス4の道路は、近隣の地区の間の輸送に使用されます(たとえば、交通量が多い市内の主要道など)。クラス5の道路は、その他のすべての道路です(たとえば、郊外の小規模な交通量の少ない通りなど)。

LENGTH

NUMBER

このエッジの長さ(m)です。

SPEED_LIMIT

NUMBER

このエッジに割り当てられた制限速度(m/s)です。

GEOMETRY

SDO_GEOMETRY

このエッジを表す線ストリング・ジオメトリです(座標は、開始ノードから終了ノードの順に並びます)。

NAME

VARCHAR2(128)

このエッジの名前です。

DIVIDER

VARCHAR2(1)

値がNの場合は、エッジが分割されていないことを示します。他の値は、分割されたエッジ上の回転を許容するかどうか、許容する場合はその場所および方法を示します。(現在のルーティング・エンジンでは、エッジが分割されているかどうかのみを考慮しています。)

14.5.2 NODE表

NODE表には、街路ネットワーク内の1つ以上のエッジの開始ノードまたは終了ノードごとに1つの行が含まれます。ノードは、ほとんどの場合、交差点(2つのエッジの交差部分)に対応しますが、交差点と無関係な場合もあります(たとえば、「出口なし」や「行き止まり」の道路など)。NODE表に含まれる列を、表14-2に示します。

表14-2 NODE表

列名 データ型 説明

NODE_ID

NUMBER

ノードID番号です。(主キー。)

GEOMETRY

SDO_GEOMETRY

このノードを表す点ジオメトリです。

PARTITION_ID

NUMBER

このノードが含まれるネットワーク・パーティションのパーティションID番号です。

14.5.3 PARTITION表

PARTITION表は、EDGE表とNODE表の内容に基づいて、ルーティング・エンジンによって生成されます。PARTITION表に含まれる列を、表14-3に示します。

表14-3 PARTITION表

列名 データ型 説明

PARTITION_ID

NUMBER

パーティションID番号です。(主キー。)

SUBNETWORK

BLOB

このパーティションに含まれているネットワークの一部です。

NUM_NODES

NUMBER

このパーティションのノード数です。

NUM_NON_BOUNDARY_EDGES

NUMBER

このパーティション内のエッジであり、このパーティションに完全に含まれるエッジの数です。

NUM_OUTGOING_BOUNDARY_EDGES

NUMBER

このパーティション内のエッジであり、開始点がこのパーティションで、終了点が別のパーティションであるエッジの数です。(1つのエッジが2つを超えるパーティションにまたがることはできません。たとえば、あるパーティションを起点とするエッジが、2番目のパーティションを通過して3番目のパーティションで終了することはできません。)

NUM_INCOMING_BOUNDARY_EDGES

NUMBER

このパーティション内のエッジであり、開始点が別のパーティションで、終了点がこのパーティションであるエッジの数です。(1つのエッジが2つを超えるパーティションにまたがることはできません。たとえば、あるパーティションを起点とするエッジが、2番目のパーティションを通過して3番目のパーティションで終了することはできません。)

14.5.4 SIGN_POST表

SIGN_POST表には、運転方向の生成に使用する標識情報が格納されます。たとえば、ある標識は、US Route 3 South上のExit 33AがWinchesterに向かうことを示すことができます。SIGN_POSTの行は、高速道路の出口ランプの物理的な標識に対応させることができますが、必ずしも物理的な標識に対応させる必要はありません。SIGN_POST表に含まれる列を、表14-4に示します。

表14-4 SIGN_POST表

列名 データ型 説明

FROM_EDGE_ID

NUMBER

この標識が適用されるエッジのエッジID番号です(たとえば、出口ランプが含まれる通りセグメント)。(主キー。)

TO_EDGE_ID

NUMBER

この標識が指す先のエッジのエッジID番号です(たとえば、出口ランプの先にある通りセグメント)。

RAMP

VARCHAR2(64)

ランプのテキストです(たとえば、US-3 SOUTH)。

EXIT

VARCHAR2(8)

出口番号です(たとえば、33A)。

TOWARD

VARCHAR2(64)

出口の先にある場所を示すテキストです(たとえば、WINCHESTER)。

LANGUAGE_CODE

CHAR (3 CHAR)

標識に使用される言語を示す3文字の言語コードです。たとえば、英語はENG、フランス語はFRE、スペイン語はSPAです。