layers com o sufixo _rural devem ser removidos, uma vez que não são layers válidos.
Os arquivos urbanos e rurais devem ser compactados separadamente e depois em conjunto e seguir a estrutura e nomenclatura, utilizando como exemplo o layer geoaddress:
Teste de ingestão do layer geoaddress:
a4a@ubuntu:/opt/gits/_dg/preserv-CO/data/IGAC/_pk003$ make geoaddress
------------------------------------------
------ Layer tipo geoaddress_full ------
-- Incluindo dados do arquivo-1 do package-3_001 na base ingest1 --
Nome-hash do arquivo-1: 48281334c4de8d73e6a7856cebfd5bce40a98cc6a64de73fa6a73618380ecf72.zip
Tabela do layer geoaddress sem nome de rua, só com numero predial: pk3_001_p1_geoaddress
Sub-arquivos do arquivo-1 com o conteúdo alvo: NOMENCLATURA_DOMICILIARIA.*
Tema dos sub-arquivos: Nomenclatura Domiciliaria urbano e rural
Run with tmux and sudo! (DANGER: seems not idempotent on psql)
a4a
Above user is root? If not, you have permissions for all paths?
[press ENTER for yes else ^C]
psql postgres://postgres@localhost/ingest1 -c "DROP TABLE IF EXISTS pk3_001_p1_geoaddress CASCADE"
NOTICE: table "pk3_001_p1_geoaddress" does not exist, skipping
DROP TABLE
Extracting ....
cd /tmp/sandbox/_pk3_001; 7z x -y /var/www/preserv.addressforall.org/download/48281334c4de8d73e6a7856cebfd5bce40a98cc6a64de73fa6a73618380ecf72.zip "NOMENCLATURA_DOMICILIARIA*" ; chmod -R a+rx . > /dev/null
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel Xeon E312xx (Sandy Bridge) (206A1),ASM)
Scanning the drive for archives:
1 file, 308068362 bytes (294 MiB)
Extracting archive: /var/www/preserv.addressforall.org/download/48281334c4de8d73e6a7856cebfd5bce40a98cc6a64de73fa6a73618380ecf72.zip
--
Path = /var/www/preserv.addressforall.org/download/48281334c4de8d73e6a7856cebfd5bce40a98cc6a64de73fa6a73618380ecf72.zip
Type = zip
Physical Size = 308068362
Everything is Ok
Files: 2
Size: 308067960
Compressed: 308068362
Extraindo ...
cd /tmp/sandbox/_pk3_001; 7z x -y "NOMENCLATURA_DOMICILIARIA*" ; chmod -R a+rx . > /dev/null
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel Xeon E312xx (Sandy Bridge) (206A1),ASM)
Scanning the drive for archives:
2 files, 308067960 bytes (294 MiB)
Extracting archive: NOMENCLATURA_DOMICILIARIA_R.zip
--
Path = NOMENCLATURA_DOMICILIARIA_R.zip
Type = zip
Physical Size = 7649388
Everything is Ok
Extracting archive: NOMENCLATURA_DOMICILIARIA_U.zip
--
Path = NOMENCLATURA_DOMICILIARIA_U.zip
Type = zip
Physical Size = 300418572
Everything is Ok
Archives: 2
OK archives: 2
Folders: 2
Files: 16
Size: 2265680406
Compressed: 308067960
Executando shp2pgsql ...
cd /tmp/sandbox/_pk3_001; find /tmp/sandbox/_pk3_001 -iname "NOMENCLATURA_DOMICILIARIA*.shp" -exec sh -c "psql postgres://postgres@localhost/ingest1 -c 'DROP TABLE IF EXISTS pk3_001_p1_geoaddress'; shp2pgsql -s 4686 {} pk3_001_p1_geoaddress | psql -q postgres://postgres@localhost/ingest1; psql postgres://postgres@localhost/ingest1 -c \"SELECT ingest.any_load('shp2sql','{}','geoaddress_full','pk3_001_p1_geoaddress','3_001','48281334c4de8d73e6a7856cebfd5bce40a98cc6a64de73fa6a73618380ecf72.zip',array['gid', 'texto AS house_number', 'geom'])\"; chmod -R a+rx . 2> /dev/null" \;
NOTICE: table "pk3_001_p1_geoaddress" does not exist, skipping
DROP TABLE
Shapefile type: Arc
Postgis type: MULTILINESTRING[2]
addgeometrycolumn
--------------------------------------------------------------------------
public.pk3_001_p1_geoaddress.geom SRID:4686 TYPE:MULTILINESTRING DIMS:2
(1 row)
any_load
------------------------------------------------
From file_id=295 inserted type=geoaddress_full+
in feature_asis 87040 items.
(1 row)
DROP TABLE
Shapefile type: Arc
Postgis type: MULTILINESTRING[2]
addgeometrycolumn
--------------------------------------------------------------------------
public.pk3_001_p1_geoaddress.geom SRID:4686 TYPE:MULTILINESTRING DIMS:2
(1 row)
any_load
------------------------------------------------
From file_id=296 inserted type=geoaddress_full+
in feature_asis 3027719 items.
(1 row)
Confira os resultados nas tabelas ingest.layer_file e ingest.feature_asis.
FIM.
a4a@ubuntu:/opt/gits/_dg/preserv-CO/data/IGAC/_pk003$
O código utilizado para a ingestão SaoPaulo de https://github.com/digital-guard/preserv-BR/blob/main/src/maketemplates/common003_shp2pgsql_multiplefiles_zipped.mustache serve para a ingestão dos layers com separação em urbano e rural de pk003.
Para tanto:
Para compactar:
zip -r ALGUMNOME.zip NOMENCLATURA_DOMICILIARIA_U.zip NOMENCLATURA_DOMICILIARIA_R.zip
orig_subfilename
que é a parte comum dos nomes dos arquivos:O commit https://github.com/digital-guard/preserv-CO/commit/bece842a00f7a9b5f03d91e15977166410f17a5f suprime os layers com sufixo _rural e cria um template para ingestão dos dados. Restando apenas alterar a nomenclatura e forma de compactar os arquivos dos layers com mais de um arquivo por layer e ajustar o sha256 no yaml de configuração.