У меня проблемы с чтением большого файла формы в GeoDMS GUI версии 7.177.
Я пытаюсь зачитать BAG (baseadministratie gemeenten, администрация голландского муниципалитета, гигантский географический файл) в GeoDMS непосредственно из Kadaster. Сначала он был преобразован из .xml в .csv, затем из .csv в .shp (используя библиотеку Python 'shapefile'). Когда я делаю выбор из 10 000 зданий, все идет хорошо. Однако, когда я хочу прочитать всю BAG (около 16 000 000 зданий), GeoDMS не может прочитать весь файл формы, через некоторое время загрузка ЦП приближается к 0%, и никакого дальнейшего прогресса, похоже, не будет.
Код:
/*
This program reads the BAG in .shp format and writes it to .dmsdata format for speedy processing in Minta
*/
container root
{
unit<dpoint> rdc_base; // RDC stands for Rijksdriehoekscoordinaten, Dutch state coordinate system
unit<dpoint> rdc := range(rdc_base,point(300000.0,0.0),point(625000.0,280000.0)); // default rdc: built on doubles
unit<uint32> bagRead:
storageName = 'c:/zandbak/intermediate/bagPND.dbf'
, dialogData = 'geometry'
, dialogType = 'map'
, storageReadOnly = 'true'
, isHidden = 'true'
{
attribute<rdc> geometry(polygon):
storageName = 'c:/zandbak/intermediate/bagPND.shp'
, storageReadOnly = 'true';
attribute<string>buildingId;
attribute<string>status;
attribute<string>year;
}
unit<uint32> bagWrite := subset(bagRead/buildingId==bagRead/buildingId)
, storageName = 'c:/zandbak/output/bagPND.fss'
, storageReadOnly = 'false'
, dialogData = 'geometry'
, dialogType = 'map'
{
attribute<uint32> nr_OrgEntity;
attribute<rdc> geometry(polygon) := bagRead/geometry[nr_OrgEntity];
attribute<string> buildingId := bagRead/buildingId[nr_OrgEntity];
attribute<string> status := bagRead/status[nr_OrgEntity];
attribute<string> year := bagRead/year[nr_OrgEntity];
}
}
Я запускаю этот код в пакетном режиме:
"C:\Program Files\ObjectVision\GeoDms7177\GeoDmsRun.exe" "C:\repository\vesta\bagpreprocessing\root.dms" /bagWrite
Как уже говорилось, этот кодекс хорошо работает для 10 000 зданий. Однако не для 16М зданий. Есть ли способ прочитать большие файлы формы в GeoDMS?