Dados geográficos - Modelagem e Fontes de Dados

7
Dados Geográficos Modelagem e Fonte de Dados segundafeira, 28 de março de 2016 Dados Geográficos Modelagem e Fonte de Dados Provavelmente você já deve ter passado pela situação de ter de disponibilizar dados geográficos para os sistemas de informação de sua empresa. É uma boa prática ter estes dados centralizados em um único banco de dados e fazer com que as aplicações consumam as informações que as satisfaçam. Então, vamos versar sobre fontes confiáveis de dados, Uma vez escolhida a fonte, vamos ao exemplo de um modelo que o consuma. www.addressdoctor.com Foi adquirida pela norte americana Informatica. Na verdade, é uma ferramenta proprietária que já vem com a fonte de dados embutida na aplicação, gerando pouca liberdade de uso em um banco de dados destinado a alimentar os sistemas da corporação. www.geobytes.com GeoBytes foi uma das primeiras empresas a construir um banco de dados de localização global de endereços IP através da sobreposição de dados geográficos do usuário em um mapa de infraestrutura da internet. Isto permitiu uma das principais características de diferenciação da tecnologia GeoBytes de location de IP, a qual proporcionou uma mudança de foco da localização física de dispositivos da Internet para a "área de serviço" desses dispositivos. GeoSelect: fornece as ferramentas necessárias para a personalização geográfica de sites na web. GeoRemote: permite acesso remoto ao banco de dados da Geobytes GeoReport: exibe as informações geográficas dos visitantes de um site Arquivos texto com dados geográficos são disponibilizados gratuitamente para download no site. Continente Código Descrição País Código ISO2 Código ISO3 Nome Capital Área em Km quadrado População Sigla da moeda Nome da moeda Código DDI Código FIPS Região Administrativa Código Descrição Cidade ID do fornecedor Nome Latitude Longitude Fuso horário Código http://www.geonames.org GeoNames foi fundada por Marc Wick. Marc é um engenheiro de software autônomo vivendo na Suíça. GeoNames é um banco de dados geográficos livre e de código aberto. Principalmente para Motivo Desta Publicação Fontes de Dados Address Doctor Geo Bytes Principais Produtos e Serviços Estruturas de Dados Geo Names Gilberto Rodrigues Seguir 83 Visualizar meu perfil completo Quem sou eu 2016 (1) Março (1) Dados Geográficos Modelagem e Fonte de Dados Arquivo do blog 0 mais Próximo blog» [email protected] Nova postagem Design Sair

Transcript of Dados geográficos - Modelagem e Fontes de Dados

Dados Geográficos Modelagem e Fonte de Dados

segundafeira, 28 de março de 2016

Dados Geográficos  Modelagem e Fonte de Dados

Provavelmente você já deve ter passado pela situação de ter de disponibilizar dados geográficospara os sistemas de informação de sua empresa.  É uma boa prática ter estes dadoscentralizados em um único banco de dados e fazer com que as aplicações consumam asinformações que as satisfaçam.  Então, vamos versar sobre fontes confiáveis de dados, Umavez escolhida a fonte, vamos ao exemplo de um modelo que o consuma.

www.addressdoctor.com 

Foi adquirida pela norte americana Informatica.  Na verdade, é uma ferramenta proprietária que jávem com a fonte de dados embutida na aplicação, gerando pouca liberdade de uso em um bancode dados destinado a alimentar os sistemas da corporação.

www.geobytes.com 

GeoBytes foi uma das primeiras empresas a construir um banco de dados de localização globalde endereços IP através da sobreposição de dados geográficos do usuário em um mapa deinfraestrutura da internet. Isto permitiu uma das principais características de diferenciação datecnologia GeoBytes de location de IP, a qual proporcionou uma mudança de foco da localizaçãofísica de dispositivos da Internet para a "área de serviço" desses dispositivos.

 GeoSelect: fornece as ferramentas necessárias para a personalização geográfica de sites naweb. GeoRemote: permite acesso remoto ao banco de dados da Geobytes GeoReport: exibe as informações geográficas dos visitantes de um site Arquivos texto com dados geográficos são disponibilizados gratuitamente para download no site.

 Continente   Código   Descrição

 País   Código ISO2   Código ISO3   Nome   Capital   Área em Km quadrado   População   Sigla da moeda   Nome da moeda   Código DDI   Código FIPS

 Região Administrativa   Código   Descrição

 Cidade   ID do fornecedor   Nome   Latitude   Longitude   Fuso horário   Código

http://www.geonames.org 

GeoNames foi fundada por Marc Wick. Marc é um  engenheiro de software autônomo  vivendo naSuíça.

GeoNames é um banco de dados geográficos livre e de código aberto. Principalmente para

Motivo Desta Publicação

Fontes de DadosAddress Doctor

Geo Bytes

Principais Produtos e Serviços

Estruturas de Dados

Geo Names

Gilberto Rodrigues 

Seguir 83

Visualizar meu perfilcompleto

Quem sou eu

▼  2016 (1)

▼  Março (1)

Dados Geográficos  Modelagem eFonte de Dados

Arquivo do blog

0   mais    Próximo blog» [email protected]   Nova postagem   Design   Sair

desenvolvedores que desejam integrar o projeto em serviços web e aplicações, que integra dadosgeográficos no nível mundial, incluindo nomes de lugares em várias línguas, a altitude, apopulação, latitude e longitude. Os usuários são capazes de editar manualmente, corrigir eadicionar novos nomes usando uma interface wiki amigável. Os dados são acessíveis através devários webservices além de download do banco de dados diariamente.

Lançado no final de 2005, GeoNames já está servindo a mais de 3 milhões de solicitações deserviços web por dia e contém mais de oito milhões de nomes geográficos.

Um número crescente de organizações, como a British Broadcasting Company (BBC) eGreenpeace, estão saindo de suas bases de dados proprietárias e migrando para GeoNames.Outras organizações de alto perfil usando o banco de dados incluem o Microsoft Popfly, LinkedIn,Slide.com e Nike.

Principais Produtos e Serviços Web services comerciais (pago) Consultoria em dados geográficos e desenvolvimento de aplicações (pago) Arquivos texto com dados geográficos (gratuito) Arquivos texto com dados geográficos que passam por um grande número de verificações deconsistência (pago)

Estruturas de Dados Continente   CódigoDescrição

 País   Código ISO2   Código ISO3   Código ISO numérico   Nome (multilíngua)   Capital   Área em Km quadrado   População   Sufixo do domínio na internet   Sigla da moeda   Nome da moeda   Formato do código postal   Idiomas   Países vizinhos   Código DDI   Código FIPS

 Região Administrativa (1º e 2º níveis)   Código   Descrição Cidade   ID Geonames   Nome   Latitude   Longitude   Fuso horário   População   Data da última atualização

 Hierarquia

 Nome Traduzido de País

 Característica Geográfica

PreçoOs dados normais são gratuitos.Dados com verificação de consistência e mais alguns arquivos: 60 euros por mês, em contratode 12 meses.

Países

Name Code GeoBytes GeoNamesAddress Doctor(INFORMATICA)

ISO2 Country Code ISO2_COUNTRY_CODE X X X

ISO3 Country Code ISO3_COUNTRY_CODE X X X

ISO NUMBER ISO_NUMBER X X ?

Country Name COUNTRY_NAME X X X

Capital Name CAPITAL_NAME X X X

Area(in sq km) AREA_IN_SQ_KM X X N

Population POPULATION_NUMBER X X X

Domínio da Internet TLD_CODE X X ?

Currency Code CURRENCY_CODE X X N

Currency Name CURRENCY_NAME X X N

Phone PHONE_CODE X X X

Comparativo de Dados Disponibilizados

FIPS FIPS X X X

GDP GDP N N X

Postal Code Format POSTAL_CODE_FORMAT_DESC N X X

Postal Code RegularExpression POSTAL_CODE_REGEX N X ?

Languages LANGUAGES N X ?

Neighbours NEIGHBOURS N X ?

Países

Name Code GeoBytes GeoNamesAddress Doctor(INFORMATICA)

ISO2 Country Code ISO2_COUNTRY_CODE X X X

ISO3 Country Code ISO3_COUNTRY_CODE X X X

ISO NUMBER ISO_NUMBER X X ?

Country Name COUNTRY_NAME X X X

Capital Name CAPITAL_NAME X X X

Area(in sq km) AREA_IN_SQ_KM X X N

Population POPULATION_NUMBER X X X

Domínio da Internet TLD_CODE X X ?

Currency Code CURRENCY_CODE X X N

Currency Name CURRENCY_NAME X X N

Phone PHONE_CODE X X X

FIPS FIPS X X X

GDP GDP N N X

Postal Code Format POSTAL_CODE_FORMAT_DESC N X X

Postal Code RegularExpression POSTAL_CODE_REGEX N X ?

Languages LANGUAGES N X ?

Neighbours NEIGHBOURS N X ?

Regiões Administrativas

Code Name Data Type GeoBytes GeoNamesAddressDoctor

RegionIDENTIFIER Region IDENTIFIER INTEGER X X X

CountryIDENTIFIER Country IDENTIFIER INTEGER X X X

ADMIN1 NAME Admin1 Region NAME Text(255) X X X

ADMIN1 CODE Admin1 Region CODE Text(255) X (*) X X

ADMIN2 NAME Admin2 Region NAME Text(255) X X X

ADMIN2 CODE Admin2 Region CODE Text(255) X X X

ADMIN3 NAME Admin3 Region NAME Text(255) X (**) N ?

ADMIN3 CODE Admin3 Region CODE Text(255) X N ?

ADMIN4 NAME Admin4 Region NAME Text(255) X (**) N ?

ADMIN4 CODE Admin4 Region CODE Text(255) X N ?

(*)

ADMIN2 é apenas o último níveldo país, deixando de fora osníveisintermediários

(**)Por auto relacioinamentoInclompleto para alguns países

Cidades e Localidades

Code Name GeoBytes GeoNamesAddressDoctor

City IDENTIFIER City IDENTIFIER X X X

Country IDENTIFIER Country IDENTIFIER X X X

Region IDENTIFIER Region IDENTIFIER X X X

City NAME City NAME X X X

City ASCII NAME City ASCII NAME N X N

Latitude NUMBER Latitude NUMBER X X X*

Longitude NUMBER Longitude NUMBER X X X*

TimeZone CODE TimeZone CODE X X X

City CODE City CODE X N X

Population NUMBER Population NUMBER N X N

Last Update DATETIME

Last Update DATETIME N X X

Classe Geográfica Classe Geográfica N X N

EspecificaçãoGeográfica

EspecificaçãoGeográfica N X N

Altitude Média Altitude Média N X ?

Outros Quesitos

Quesito GeoBytes GeoNamesAddress Doctor(INFORMATICA)

Países Multilíngua N S N

Integração Data Quality N N S

Disponibilização de Dados S S N

Retorno de Suporte ND S S (*)

Fórum S S N

(*) O retorno ocorreu mas nãose completou totalmente

Então, baseandose nos comparativos, vamos nos basear nos dados disponibilizados peloGeonames,

Name Code Data Type Length Precision PrimaryForeignKey Mandatory

#Rows

#Distinct

%Unique

#Nulls % Null Inf Data Type

ISO2 Country Code ISO2_COUNTRY_CODE VARCHAR2(2) 2 TRUE FALSE TRUE 250 250 100 0 0 CHAR(2)

ISO3 Country Code ISO3_COUNTRY_CODE VARCHAR2(3) 3 FALSE FALSE TRUE 250 250 100 0 0 CHAR(3)

ISO NUMBER ISO_NUMBER NUMBER(5) 5 FALSE FALSE TRUE 250 249 99,6 0 0 INTEGER(3,2)

FIPS CODE FIPS_CODE VARCHAR2(15) 15 FALSE FALSE FALSE 250 247 98,8 3 1,2 CHAR(2)

Country Name COUNTRY_NAME VARCHAR2(200) 200 FALSE FALSE TRUE 250 250 100 0 0 VARCHAR(44,4)

Capital Name CAPITAL_NAME VARCHAR2(200) 200 FALSE FALSE FALSE 250 243 97,2 6 2,4 VARCHAR(20,4)

Area(in sq km) AREA_IN_SQ_KM NUMBER(10) 10 FALSE FALSE FALSE 250 240 96 6 2,4 INTEGER(8,4)

Population POPULATION_NUMBER NUMBER(12) 12 FALSE FALSE FALSE 250 247 98,8 0 0 INTEGER(10,4)

Twoletter continet code CONTINENT_CODE CHAR(2) 2 FALSE TRUE FALSE 250 7 2,8 0 0 CHAR(2)

Internet Top Domain LevelCODE TLD_CODE VARCHAR2(15) 15 FALSE FALSE FALSE 250 246 98,4 2 0,8 CHAR(3)

Currency Code CURRENCY_CODE VARCHAR2(3) 3 FALSE FALSE FALSE 250 156 62,4 1 0,4 CHAR(3)

Currency Name CURRENCY_NAME VARCHAR2(30) 30 FALSE FALSE FALSE 250 84 33,6 1 0,4 VARCHAR(13,3)

Phone Code PHONE_CODE VARCHAR2(20) 20 FALSE FALSE FALSE 250 232 92,8 6 2,4 VARCHAR(16,1)

Postal Code Format Description POSTAL_CODE_FORMAT_DESC VARCHAR2(100) 100 FALSE FALSE FALSE 250 47 18,8 102 40,79 VARCHAR(55,3)

Postal Code RegularExpression POSTAL_CODE_REGEX VARCHAR2(200) 200 FALSE FALSE FALSE 250 46 18,39 104 41,6 VARCHAR(155,9)

Languages LANGUAGES VARCHAR2(100) 100 FALSE FALSE FALSE 250 244 97,6 3 1,2 VARCHAR(89,2)

Supplier IDENTIFIER SUPPLIER_IDENTIFIER NUMBER(12) 12 FALSE FALSE TRUE 250 250 100 0 0 INTEGER(7,4)

Neighbours NEIGHBOURS VARCHAR2(100) 100 FALSE FALSE FALSE 250 158 63,2 86 34,4 VARCHAR(41,2)

Equivalent FIPS Code EQUIVALENT_FIPS_CODE VARCHAR2(15) 15 FALSE FALSE FALSE 250 1 0,4 249 99,6 CHAR(2)

Name Code Data Type Length Precision PrimaryForeignKey Mandatory

#Rows

#Distinct % Unique # Nulls % Null Inf Data Type

ISO2 Country Code ISO2_COUNTRY_CODE VARCHAR2(2) 2 TRUE TRUE TRUE 3821 231 6,04 0 0,00 CHAR(2)

Admin1 Code ADMIN1_CODE VARCHAR2(20) 20 TRUE FALSE TRUE 3821 588 15,38 0 0,00 VARCHAR(7,1)

Admin1 Name ADMIN1_NAME VARCHAR2(200) 200 FALSE FALSE FALSE 3821 3713 97,17 10 0,26 VARCHAR(56,2)

Admin1 ASCIIName ADMIN1_ASCII_NAME VARCHAR2(200) 200 FALSE FALSE FALSE 3821 3765 98,53 0 0,00 VARCHAR(72,3)

Data Profiling do GeonamesPaís

Região Administrativa 1 (No caso brasileiro, é a unidade da federação)

geonameid CITY_IDENTIFIER NUMBER(12) 12 FALSE FALSE FALSE 3821 3821 100,00 0 0,00 INTEGER(7,4)

Name Code Data Type Length Precision PrimaryForeignKey Mandatory

#Rows

#Distinct % Unique # Nulls % Null Inf Data Type

ISO2 Country Code ISO2_COUNTRY_CODE VARCHAR2(2) 2 TRUE TRUE TRUE 27236 163 0,59 0 0 CHAR(2)

Admin1 Code ADMIN1_CODE VARCHAR2(20) 20 TRUE TRUE TRUE 27236 262 0,96 0 0 VARCHAR(6,1)

Admin2 Code ADMIN2_CODE VARCHAR2(80) 80 TRUE FALSE TRUE 27236 22863 83,94 0 0 VARCHAR(26,1)

Admin2 OriginalName ADMIN2_ORIGINAL_NAME VARCHAR2(200) 200 FALSE FALSE TRUE 27236 25037 91,92 0 0 VARCHAR(50,2)

Admin2 ASCII Name ADMIN2_ASCII_NAME VARCHAR2(200) 200 FALSE FALSE TRUE 27236 25002 91,79 0 0 VARCHAR(50,2)

geonameid CITY_IDENTIFIER NUMBER(12) 12 FALSE FALSE TRUE 27236 27236 100 0 0 INTEGER(7,4)

Name Code Data Type Length Precision PrimaryForeignKey Mandatory

#Rows

#Distinct % Unique # Nulls % Null Inf Data Type

TimeZoneId TIMEZONE_CODE VARCHAR2(40) 40 TRUE FALSE TRUE 410 410 100 0 0 VARCHAR(30,9)

GMT offset GMT_HOUR VARCHAR2(32) 32 FALSE FALSE TRUE 410 39 9,51 0 0 DECIMAL(4,2)

DST offset DST_HOUR VARCHAR2(32) 32 FALSE FALSE FALSE 410 38 9,26 0 0 DECIMAL(4,2)

Name Code Data Type Length Precision Primary Foreign Key Mandatory # Rows # Distinct % Unique # Nulls % Null Inf Data Type

Feature Class Code FEATURE_CLASS_CODE CHAR(1) 1 TRUE TRUE TRUE 656 9 1,37 0 0 CHAR(1)

Feature Type Code FEATURE_TYPE_CODE VARCHAR2(10) 10 TRUE FALSE TRUE 656 656 100 0 0 VARCHAR(5,2)

Feature Type Description FEATURE_TYPE_DESCRIPTION VARCHAR2(1000) 1000 FALSE FALSE TRUE 656 640 97,56 0 0 VARCHAR(46,3)

Name Code Data Type Length Primary Foreign Key Mandatory # Rows # Distinct % Unique # Nulls % Null Inf Data Type

geonameid CITY_IDENTIFIER NUMBER(10) 10 TRUE FALSE TRUE 7831318 7831318 100 0 0 INTEGER(7,4)

City Name CITY_NAME VARCHAR2(200) 200 FALSE FALSE TRUE 7831318 5016881 64,06 0 0 VARCHAR(151,1)

City ASCII Name CITY_ASCII_NAME VARCHAR2(200) 200 FALSE FALSE FALSE 7831318 4982363 63,62 317 0,01 VARCHAR(151,1)

Latitude Number LATITUDE_NUMBER VARCHAR2(20) 20 FALSE FALSE FALSE 7831318 2708367 34,58 0 0 INTEGER(7,4)

Longitude Number LONGITUDE_NUMBER VARCHAR2(20) 20 FALSE FALSE FALSE 7831318 3549403 45,32 0 0 INTEGER(8,4)

Feature Class Code FEATURE_CLASS_CODE CHAR(1) 1 FALSE TRUE FALSE 7831318 9 0,01 5325 0,06 CHAR(1)

Feature Type Code FEATURE_TYPE_CODE VARCHAR2(10) 10 FALSE TRUE FALSE 7831318 636 0,01 90010 1,14 VARCHAR(5,2)

ISO2 Country Code ISO2_COUNTRY_CODE VARCHAR2(2) 2 FALSE TRUE TRUE 7831318 250 0,01 0 0 CHAR(2)

Admin1 Code ADMIN1_CODE VARCHAR2(20) 20 FALSE TRUE FALSE 7831318 624 0,01 42956 0,54 VARCHAR(7,1)

Admin2 Code ADMIN2_CODE VARCHAR2(80) 80 FALSE TRUE FALSE 7831318 23454 0,29 5074639 64,79 VARCHAR(63,1)

Admin3 Code ADMIN3_CODE VARCHAR2(20) 20 FALSE FALSE FALSE 7831318 44422 0,56 7523488 96,06 VARCHAR(10,1)

Admin4 Code ADMIN4_CODE VARCHAR2(20) 20 FALSE FALSE FALSE 7831318 59576 0,76 7686379 98,14 VARCHAR(8,2)

Population Number POPULATION_NUMBER NUMBER(12) 12 FALSE FALSE FALSE 7831318 42249 0,53 0 0 INTEGER(10,4)

Average Elevation Meter MEASURE AVG_ELEV_METER_MEASURE NUMBER(12) 12 FALSE FALSE FALSE 7831318 6293 0,08 0 0 INTEGER(4,2)

TimeZoneId TIMEZONE_CODE VARCHAR2(40) 40 FALSE TRUE FALSE 7831318 409 0,01 4105 0,05 VARCHAR(30,9)

Last Update Date LAST_UPDATE_DATE DATE FALSE FALSE FALSE 7831318 4253 0,05 0 0

DATETIME YEAR TO DAY[dd/mm/year]

Name Code Data Type Length Precision Primary Foreign Key Mandatory # Rows # Distinct % Unique # Nulls % Null Inf Data Type

Alternate Name Identifier ALTERNATE_NAME_IDENTIFIER NUMBER(10) 10 TRUE FALSE TRUE 6550024 6550024 100 0 0 INTEGER(7,4)

geonameid CITY_IDENTIFIER NUMBER(10) 10 FALSE TRUE TRUE 6550024 2525442 38,55 0 0 INTEGER(7,4)

ISO Language Code ISO_LANGUAGE_CODE VARCHAR2(100) 100 FALSE FALSE FALSE 6550024 341 0,01 3812866 58,21 VARCHAR(7,2)

Alternate Name ALTERNATE_NAME VARCHAR2(300) 300 FALSE FALSE FALSE 6550024 3553436 54,25 0 0 VARCHAR(193,1)

Is Preferred Name Flag IS_PREFERRED_NAME_FLAG CHAR(1) 1 FALSE FALSE FALSE 6550024 1 0,01 6449952 98,47 INTEGER(1,1)

Is Short Name Flag IS_SHORT_NAME_FLAG CHAR(1) 1 FALSE FALSE FALSE 6550024 1 0,01 6540419 99,85 INTEGER(1,1)

Name Code Data Type Length Precision Primary Foreign Key Mandatory # Rows # Distinct % Unique # Nulls % Null Inf Data Type

ISO 6393 Code ISO_639_3_CODE CHAR(3) 3 TRUE FALSE TRUE 7766 7766 100 0 0 CHAR(3)

ISO 6392 Code ISO_639_2_CODE VARCHAR2(15) 15 FALSE FALSE FALSE 7766 477 6,14 7289 93,85 VARCHAR(11,3)

ISO 6391 Code ISO_639_1_CODE CHAR(2) 2 FALSE FALSE FALSE 7766 185 2,38 7581 97,61 CHAR(2)

Language Name LANGUAGE_NAME VARCHAR2(100) 100 FALSE FALSE FALSE 7766 7766 100 0 0 VARCHAR(58,1)

Região Administrativa 2  (No caso brasileiro, é a cidade/município)

Time Zone

Característica Geográfica

Cidade (Localidade)

Nome Alternativo

Idioma

Página inicial

Assinar: Postagens (Atom)

Postado por Gilberto Rodrigues às 22:29  2 comentários: 

Name Code Data Type Length Precision Primary Foreign Key Mandatory # Rows # Distinct % Unique # Nulls % Null Inf Data Type

Parent geonameid PARENT_GEONAMEID NUMBER(10) 10 TRUE TRUE TRUE 239957 39238 16,35 0 0 INTEGER(7,4)

Child geonameid CHILD_GEONAMEID NUMBER(10) 10 TRUE TRUE TRUE 239957 236996 98,76 0 0 INTEGER(7,4)

Hierarchy Type HIERARCHY_TYPE VARCHAR2(40) 40 FALSE FALSE TRUE 239957 17 0,01 111793 46,58 VARCHAR(23,3)

Baseados nas estruturas de dados acima, chegamos então ao seguinte modelo lógico:

Espero que este artigo tenha lhe sido útil.  Abraço e boa sorte! 

Gilberto Rodrigues dos Santos

Contatos

Email: [email protected] (21) 98211 0505

Linkedin: br.linkedin.com/in/gilbertorodriguesadmdados

Hierarquia da Localidade

Modelo de Dados

+1   Recomende isto no Google