Giter Site home page Giter Site logo

lixo-digital-preservation-br's Introduction

AddressForAll

Este repostório se presta às duas utilizações do nome AddressForAll:

  • Projet AddressForAll: git de dados ou documentos de uso geral do projeto
  • Repositório de refererência para issues do Instituto AddressForAll.

Para detalhes sobre uso das issues e kanban, ver tutoriais da Spec06.

lixo-digital-preservation-br's People

Contributors

crebollobr avatar igoreliezer avatar ppkrauss avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

lixo-digital-preservation-br's Issues

Gravatai

make nsvia_none
psql postgres://postgres@localhost/ingest2 -c "SELECT ingest.any_load('shp2sql','/tmp/sandbox/_pk14_001/PS_LOTEAMENTOS_SIRGAS 2000','nsvia_none','pk14_001_p2_nsvia','14_001','1ad669693352407105ccdeb37a4398d62b0accb25888122c84afe2788c121c7b.rar',array['gid', 'geom'])"
ERROR: null value in column "ftid" violates not-null constraint
DETAIL: Failing row contains (49, 14.001, 1ad669693352407105ccdeb37a4398d62b0accb25888122c84afe2788c121c7b..., null, shp, 1, d186a1c53a1f6bc6105593edb7a32a48, {"file": "/tmp/sandbox/_pk14_001/PS_LOTEAMENTOS_SIRGAS 2000.shp"..., null).
CONTEXT: SQL function "getmeta_to_file" statement 1
SQL function "getmeta_to_file" statement 1
PL/pgSQL function ingest.any_load(text,text,text,text,real,text,text[],text,boolean) line 16 at assignment
make: *** [makefile:81: nsvia] Error 1

Nuvem para Digital-Guard

Precisamos ter uma Nuvem onde podemos colocar os arquivos para a preservação digital. Deve ser possível indicar uma URL que dá acesso ao download direto de cada arquivo, sem passar por clicar em botão "Baixar".

  • Onde drive é instável e parece que exige clicar num botão "dowload"
  • Thierry vai ver com Simon Shapiro se podemos ter acesso a um serviço "cold"da Azure archive para guardar backup de baixo acesso.

Colocar ogr2ogr no template make_ref027a.mustache.mk

  1. Colocar o ogr2ogr no template make_ref027a.mustache.mk
    {{>common003_shp2pgsql}}
    {{>common005_ogr2ogr}}

Porque a mesma cidade tem ogr2ogr e shapefile

  1. Extração mais genérica sem o ponto para extrair gdb, subpasta ou coleção de arquivos

cd $(sandbox); 7z x -y $(part{{file}}_path) "{{orig_filename}}.*" ; chmod -R a+rx . > /dev/null

cd $(sandbox); 7z x -y $(part{{file}}_path) "{{orig_filename}}*" ; chmod -R a+rx . > /dev/null

  1. ogr2ogr com uma variável a mais opicional {{orig_ext}}

docker run --rm --network host -v $(sandbox):/tmp osgeo/gdal ogr2ogr -overwrite -f "PostgreSQL" PG:" dbname='$(pg_db)' host='localhost' port='5432' user='postgres' " "/tmp/{{orig_filename}}{{orig_ext}}" {{{orig_tabname}}} -nln $(tabname)

exemplos
orig_ext: .TAB
orig_ext: .gpkg
orig_ext: .xls

Geracao dos makefiles de traducao dos READMEs de cada _preservation

Na submissao via Eclusa os arquivos a serem preservados ficam na pasta _preservation, onde a descricao humana do que fazer se encontra em arquivo README.md, e as instrucoes computacionais (traducao da descricao humana) em makefile.
Dentre os pacotes com README ja disponivel, os seguintes foram eleitos, nesta ordem, por Thierry e Igor:

Três Cidades Pioloto

  • BR-RS-PortoAlegre
    • Numeração predial ( Carlos OK )
    • Eixos ( Carlos OK )
    • Bairros ( Carlos OK )
  • BR-SP-Cabreuva
  • BR-PR-PatoBranco (material está na pasta 'tratamento')

Cidades candidatas para processamento

Sem tarefas

  • BR-MG-BeloHorizonte
    • CSV ( TODO Converter csv para postgres - Carlos )
  • BR-MG-Contagem

Com tarefas

  • BR-PR-Curitiba
  • BR-MS-CampoGrande
  • BR-PR-Cascavel
  • BR-SP-Piracicaba
  • BR-SP-RibeiraoPreto
  • BR-SP-Atibaia

IBGE Face de Quadras

  • BR/_pk053/

Não fazer (interno do OSM e A4A)

  • BR-PR-SaoJosePinhais
  • BR-ES-Serra

Complementar jurisdiction e desmembrar pasta de dados

Adicionar no CSV br-jurisdiction.csv o que foi adicionado no SQL,

INSERT INTO optim.jurisdiction 
  (osm_id,jurisd_base_id,jurisd_local_id,name, parent_abbrev,abbrev,wikidata_id,lexlabel,isolabel_ext) VALUES
  (59470,76,-1,'Brasil','INT','BR',155,'br','BR'),
  (-1,-1,-2,'Internacional','--','INT',2,'int','INT');

A pasta de dados, data precisaria ser desmembrada em duas, data_in e data_out (ou /data/in e /data/out para manter compatibilidade FrictionlessData), tendo em vista que alguns dados são obrigatoriamente inputs (ex. acima) e outros são publicações (por exemplo a tabela optim.origin).

Pato Branco

Uma vez que todos os lotes tiverem número de lote e número de quadra pela tarefa 1, deve-se usar a planilha Relatorio_de_numeracao_predial.csv para atribuir os endereços nos lotes.

Florianopolis - Makefile

Florianópolis
Importar csv: com problema, layer duplicado e erro no formato tele

O arquivo csv deve ser formado dos e ter \r\n no final da linha

ingest2=# \d pk59_001_p1_cadvia
              Foreign table "public.pk59_001_p1_cadvia"
     Column     | Type | Collation | Nullable | Default | FDW options
----------------+------+-----------+----------+---------+-------------
 cd_atrb        | text |           |          |         |
 nm_atrb        | text |           |          |         |
 nm_descricao\r | text |           |          |         |
Server: files
FDW options: (filename '/tmp/sandbox/_pk59_001/atributo_logradouro.csv', format 'csv', header 'true', delimiter ',')

ele criou o campo nm_descricao\r com o \r no final

Curitiba - Makefile

logradouro e numeração, porém os caracteres com acentos estão corrompidos. Ver com Peter.
Mais o problema zip -> rar -> geojson

Araucária

/opt/carlos/digital-preservation-BR/data/in/PR/Araucaria/_pk067$ make via pg_db=ingest2 orig=/tmp
psql postgres://postgres@localhost/ingest2 -c "SELECT ingest.any_load('shp2sql','/tmp/sandbox/_pk67_001/Sistema Vi rio','via_full','pk67_001_p1_via','67_001','39cfe0ef43045a9bfaf872ffc648b8294151f73d431607220141cd248b45e260.zip',array['gid', 'endereço AS via_name', 'geom'])"
ERROR: integer out of range
CONTEXT: SQL function "feature_asis_assign_volume" statement 1
SQL function "feature_asis_assign" statement 1
SQL statement "UPDATE ingest.layer_file
SET proc_step=2, -- if insert process occurs after q_query.
feature_asis_summary= ingest.feature_asis_assign(q_file_id)
WHERE file_id=q_file_id"
PL/pgSQL function ingest.any_load(text,text,text,text,real,text,text[],text,boolean) line 78 at SQL statement
make: *** [makefile:125: via] Error 1

PR-Pato Branco

Parte do projeto VIVO - Cidades para teste .


Dados

  • Feito?
  • População estimada [2020]: 83.843 pessoas
  • População no último censo [2010]: 72.370 pessoas
  • Densidade demográfica [2010]: 134,25 hab/km²

Fonte: https://cidades.ibge.gov.br/brasil/pr/pato-branco/panorama

O que temos

  • Feito?
    Salvo na Preservação:
  • cad:Mapa urbano
  • pdf:Planilha de endereço
  • Mapa urbano (CAD convertido em shapefile pela Prefeitura)

Note: Pato Branco não possui eixo de vias em shapefile/geojson. Só no OSM.

Volumetria OSM

  • Feito?
    (em andamento)

Volumetria A4A

  • Feito?
    (em andamento)

O que mais precisa ser feito

  • Corrigir o mapa CAD, fechando lotes em polígonos abertos.
  • Gerar shapefile do mapa CAD corrigido e enviar para PostGIS.
  • PostGIS: Atribuir dados de endereço nos lotes do mapa (já passado para PostGIS/Peter e Ênio).
  • PostGIS: Gerar ponto de endereço em cada testada de lote.

Pendente em Sampa validar endereços com vias

As vias oficiais serão comparadas com as vias do OSM mais recente.... Os nomes de via de ambos também precisam bater com a listagem de nomes de via oficial.

Um relatório final precisa indica falhas, "buracos", etc. para futuras correções ou complementação dos dados.


Notas técnicas

Para quem quiser baixar e testar os lotes de sampa:

wget -c http://addressforall.org/_private/addesses_sp_spa2020-07.sql.zip # se cair basta repetir o comando!
sha256sum addesses_sp_spa2020-07.sql.zip
unzip addesses_sp_spa2020-07.sql.zip
psql ingest1 < addesses_sp_spa2020-07.sql

Com o download completo, confira o sha256 do arquivo (se bate com o indicado abaixo) e se seu software de unzip funciona com ele. Abaixo os resultados especiados.

c6960a0b38e2b793c8bc12b153498a6c623405429e75083b6db1a1b6eca0a5dd  addesses_sp_spa2020-07.sql.zip

SET
SET
SET
SET
SET
 set_config 
------------
(1 row)

SET
SET
SET
SET
SET
SET
CREATE TABLE
ALTER TABLE
COPY 1586786

Depois de carregado, visualizar a tabela public.addesses_sp_spa com QGIS,

RS-Porto Alegre

Parte do projeto VIVO - Cidades para teste .


Dados

  • Feito?
  • População estimada [2020]: 1.488.252 pessoas
  • População no último censo [2010]: 1.409.351 pessoas
  • Densidade demográfica [2010]: 2.837,53 hab/km²

Fonte: https://cidades.ibge.gov.br/brasil/rs/porto-alegre/panorama

O que temos

  • Feito?
    Salvo na Preservação:
  • Pontos de número predial
  • Eixos
  • Bairros

Volumetria OSM

  • Feito?
    (em andamento)

Volumetria A4A

  • Feito?
    (em andamento)

O que mais precisa ser feito

  • PostGIS: Atribuir nomes de logradouros dos eixos nos pontos de numeração predial.

Rio Branco

via está deslocada em relação as outras camadas

Itu e Osasco

Vai precisar alterar mais coisas que o esperado.

  • ele tem ogr2ogr junto com shapefile
  • No comando

docker run --rm --network host -v $(sandbox):/tmp osgeo/gdal ogr2ogr -overwrite -f "PostgreSQL" PG:" dbname='$(pg_db)' host='localhost' port='5432' user='postgres' " /tmp/OpenStreetMap.gdb {{{orig_tabname}}} -nln $(tabname)

ele não usa o nome OpenStreetMap.gdb

poderia ser

docker run --rm --network host -v $(sandbox):/tmp osgeo/gdal ogr2ogr -overwrite -f "PostgreSQL" PG:" dbname='$(pg_db)' host='localhost' port='5432' user='postgres' " /tmp/{{{orig_tabname}}} {{{origtabname}}} -nln $(tabname)

mais uma variável

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.