Наборы сетевых данных в PostgreSQL

Наборы сетевых данных представляют собой наборы классов объектов, обладающих отношением связности. Наборы сетевых данных создаются с использованием трех типов источников – источников объектов ребер, например, центральные линии улиц, источников объектов соединения, например, классов объектов точек, содержащих железнодорожные стрелки, и источников объектов поворотов. Они используются для моделирования транспорта. Для работы с наборами сетевых данных вам необходимо установить дополнительный модуль Дополнительный модуль ArcGIS Network Analyst.

Наборы сетевых данных в ArcGIS for Desktop

В дереве каталога наборы классов объектов, которые содержат наборы сетевых данных в PostgreSQL, выглядят аналогично до тех пор, пока вы не раскроете набор данных. В раскрытом наборе данных вы увидите набор сетевых данных, представленный следующим значком:

Значок набора сетевых данных

Имя сети в базе геоданных в PostgreSQL содержит имя базы данных, имя владельца сети и имя сети.

Например, геометрическая сеть road_network_nd, принадлежащая пользователю hbear, в базе геоданных m16 обозначается в дереве Каталога как m16.hbear.road_network_nd.

При создании набора сетевых данных система также создает класс объектов системных соединений. Данный класс пространственных объектов имеет такое же имя, как и набор сетевых данных, но при этом сопровождается окончанием _Junctions.

Наборы сетевых данных в базе данных PostgreSQL

Набор сетевых данных отслеживается в таблице gdb_items. В таблице gdb_itemtypes хранится значение, указывающее, что объект является набором сетевых данных. В таблице gdb_itemrelationships хранится информация об отношениях сети и набора пространственных объектов.

Также имеются таблицы, созданные в схеме пользователя, владеющего набором сетевых данных. К ним относятся:

ID в именах первых шести таблиц является ID логической сети. itemID в двух последних таблицах представляет собой objectid из таблицы gdb_items.

Структуры таблиц показана ниже:

n_<id>_desc

Таблица n_<id>_desc содержит записи для всех элементов пересечения, ребра и поворота набора сетевых данных.

Имя поля

Тип поля

Описание

Null?

oid

integer

Уникальный идентификатор элемента сети

NOT NULL

userclassid

integer

Идентификатор класса пространственных объектов, к которому принадлежит элемент

NOT NULL

userid

integer

ObjectID элемента

NOT NULL

usersubid

integer

Идентификатор элемента в объекте; применяется только к пространственным объектам "сложное ребро"

NOT NULL

elementtype

smallint

Кодовая идентификация типа элемента сети

NOT NULL

eid

integer

Уникальный идентификатор элемента сети; уникален только для типа сетевого элемента

NOT NULL

n_<id>_prop

Таблица n_<id>_props содержит итоговое описание сетевых параметров, например, количество элементов и максимальные значения EID.

Имя поля

Тип поля

Описание

Null?

propertyid

integer

The unique identifier of the network property

NOT NULL

propertyname

varchar(32)

The name of the property

NOT NULL

propertyvalue

integer

The value of the property

NOT NULL

nd_<itemID>_dirtyareas

Таблица nd_<itemid>_dirtyareas отслеживает редактируемые пространственные элементы в наборе сетевых данных.

Имя поля

Тип поля

Описание

Null?

objectid

integer

Уникальный идентификатор записи

NOT NULL

isretired

integer

Указывает на использование данного объекта для отслеживания измененной области набора сетевых данных

NOT NULL

dirtyarea

st_geometry

geometry

Геометрия полигона измененной области

nd_<itemID>_dirtyobjects

Таблица nd_<itemid>_dirtyobjects отслеживает все реляционные объекты сети, подвергнутых редактированию, в наборе сетевых данных, например, повороты и записи истории трафика.

Имя поля

Тип поля

Описание

Null?

objectid

integer

Уникальный идентификатор записи

NOT NULL

classid

integer

objectID элемента измененного объекта в таблице gdb_items.

NOT NULL

oid

integer

Идентификатор измененного объекта

NOT NULL

updatetype

smallint

Тип выполненного редактирования – вставить (0), обновить (1) или удалить (2) – для измененного объекта

NOT NULL

Остальные таблицы сети содержат аналогичные имена полей и типы. Их структура выглядит так:

Имя поля

Тип поля

Описание

Null?

oid

integer

Уникальный идентификатор страницы bytea в таблице

NOT NULL

pagenumber

integer

Номер страницы bytea в таблице

NOT NULL

pageblob

bytea

Описание элемента, к которому относится таблица, например ребро и его статус

tableid

integer

Для таблиц BLOB n_<ID>_edgeweight, n_<ID>_turnweight, и n_<ID>_junctionweight, tableID соответствует weightID. Для таблицы BLOB n_<ID>_topology, tableID соответствует положению исходной таблицы среди таблиц топологии, заданных в файле GeoDatabase\GeoDatabase\Network\Network\TableDefs.h.

NOT NULL

Далее приведена диаграмма набора сетевых параметров в PostgreSQL:

Таблицы набора сетевых данных в PostgreSQL

Штриховые линии определяют неявные отношения между столбцами.

Существуют дополнительные, опциональные таблицы, которые вы можете использовать как часть набора сетевых данных для модели времени движения или скоростей истории трафика, а также определения изменений в часовом поясе, которые могут повлиять на сетевой анализ. К ним относятся таблицы, которые вы создаете перед созданием вашего набора сетевых данных, и сохраненные в вашей схеме (аналогично внесению в схему класса пространственных объектов, на котором построена сеть). Вам необходимо указать имена таблиц. Дополнительные сведения об использовании таких таблиц истории трафика и часового пояса см. в разделе Дополнительный модуль Дополнительный модуль ArcGIS Network Analyst.

Наборы сетевых данных в XML-документе рабочей области

Наборы сетевых данных маркируются как логические сети. Ниже приводится выдержка из документа XML, созданного с помощью экспорта из набора данных RoadNetwork.

<LogicalNetworkName>m16.hbear.RoadNetwork_ND</LogicalNetworkName> 
  <NetworkType>1</NetworkType> 
  <Buildable>true</Buildable> 
  <SupportsTurns>true</SupportsTurns> 
  <Properties xsi:nil="true" /> 
  <UserData xsi:nil="true" /> 
  <EdgeFeatureSources xsi:type="esri:ArrayOfEdgeFeatureSource">
    <EdgeFeatureSource xsi:type="esri:EdgeFeatureSource">
      <ID>1</ID> 
      <ClassID>1</ClassID> 
      <Name>m16.hbear.Streets</Name> 
      <ElementType>esriNETEdge</ElementType> 
      <Properties xsi:nil="true" /> 
      <FromElevationFieldName /> 
      <ToElevationFieldName /> 
        <Connectivity xsi:type="esri:PropertySet">
          <PropertyArray xsi:type="esri:ArrayOfPropertySetProperty">
            <PropertySetProperty xsi:type="esri:PropertySetProperty">
              <Key>Version</Key> 
              <Value xsi:type="xs:short">1</Value> 
            </PropertySetProperty>
            <PropertySetProperty xsi:type="esri:PropertySetProperty">
              <Key>UsesSubtypes</Key> 
              <Value xsi:type="xs:short">0</Value> 
            </PropertySetProperty>
            <PropertySetProperty xsi:type="esri:PropertySetProperty">
              <Key>ClassConnectivity</Key> 
              <Value xsi:type="xs:short">1</Value> 
            </PropertySetProperty>
            <PropertySetProperty xsi:type="esri:PropertySetProperty">
              <Key>SubtypeConnCount</Key> 
              <Value xsi:type="xs:int">0</Value> 
            </PropertySetProperty>
            <PropertySetProperty xsi:type="esri:PropertySetProperty">
              <Key>DefaultGroup</Key> 
              <Value xsi:type="xs:int">1</Value> 
            </PropertySetProperty>
            <PropertySetProperty xsi:type="esri:PropertySetProperty">
              <Key>GroupCount</Key> 
              <Value xsi:type="xs:int">0</Value> 
            </PropertySetProperty>
         </PropertyArray>
      </Connectivity>
    </EdgeFeatureSource>
  </EdgeFeatureSources>
  <JunctionFeatureSources xsi:type="esri:ArrayOfJunctionFeatureSource" /> 
    <SystemJunctionSources xsi:type="esri:ArrayOfSystemJunctionSource">
      <SystemJunctionSource xsi:type="esri:SystemJunctionSource">
        <ID>3</ID> 
        <ClassID>4</ClassID> 
        <Name>m16.hbear.RoadNetwork_ND_Junctions</Name> 
        <ElementType>esriNETJunction</ElementType> 
        <Properties xsi:nil="true" /> 
        <ElevationFieldName /> 
      </SystemJunctionSource>
    </SystemJunctionSources>
  <TurnFeatureSources xsi:type="esri:ArrayOfTurnFeatureSource">
    <TurnFeatureSource xsi:type="esri:TurnFeatureSource">
      <ID>2</ID> 
      <ClassID>2</ClassID> 
      <Name>m16.hbear.Turns</Name> 
      <ElementType>esriNETTurn</ElementType> 
      <Properties xsi:nil="true" /> 
    </TurnFeatureSource>
  </TurnFeatureSources>
  <EvaluatedNetworkAttributes xsi:type="esri:ArrayOfEvaluatedNetworkAttribute">
    <EvaluatedNetworkAttribute xsi:type="esri:EvaluatedNetworkAttribute">
      <ID>1</ID> 
      <Name>Oneway</Name> 
      <Units>Unknown</Units> 
      <DataType>esriNADTBoolean</DataType> 
      <UsageType>esriNAUTRestriction</UsageType> 
      <UserData xsi:nil="true" /> 
      <UseByDefault>true</UseByDefault> 
      <AttributeParameters xsi:type="esri:ArrayOfNetworkAttributeParameter" /> 
    </EvaluatedNetworkAttribute>
  </EvaluatedNetworkAttributes>

Связанные темы

5/10/2014