Conjunto de dados públicos do OpenStreetMap no Google Cloud Platform com BigQuery SQL. Classificador de Camada OSM

Devido ao crescente interesse público na análise e visualização de vários modelos espaciais (por exemplo, para estudar a propagação de vírus), lembrei-me de um dos projetos em que estava trabalhando na plataforma freelancer Upwork. Este trabalho foi encomendado pelo Google e consistiu em criar um conjunto de dados público do OpenStreetMap (OSM) no Google Cloud Platform para trabalhar com ele usando o Google BigQuery e criar alguns exemplos de análise de dados do OpenStreetMap (consulte Notebooks Python Jupyter no repositório). Minha parte do projeto estava trabalhando com dados; quem quiser ver o código imediatamente - bem-vindo ao meu repositório git bigquery-openstreetmap. Além disso, mostrarei quais são as vantagens do conjunto de dados criado (dica: o classificador SQL está implementado e disponível) e como ele pode ser usado.


Mensagem para os leitores: por favor, não hesite em discutir o Upwork em particular e freelancer como um todo nos comentários, bem, cansado disso, palavra certa ... existem projetos diferentes por lá.


Análise de padrões de uso de estradas, área de Boston


Resultados da análise de rede de estradas de Boston do OpenStreetMap As estradas com alta centralidade de intermediação (bc) são destacadas em vermelho, as ruas com alta bc são destacadas em verde, a baixa bc é destacada em amarelo e as ruas com baixa bc são cinza.


Em vez de introduzir


Se houver tempo e interesse no tópico de trabalho com o OSM, eu poderia falar sobre a criação de roteamento complexo usando o PostgreSQL / PostGIS / PgRouting - como fornecer suporte rodoviário unidirecional para o problema do vendedor viajante , TSP), , ( ) — OSM. ( , , ) — 5-10 ( ), ( 100) , ("") . , SQLite3 Spatialite ( PostgreSQL/PostGIS/PgRouting) PostgreSQL/PostGIS .


OpenStreetMap


OpenStreetMap:


OpenStreetMap ( « »), OSM- .

, OSM , . , , — OSM . , Google Maps API/Bing Maps API , , ( , , ). , OSM . , , , ( , , , , ...), , - OSM , - , . , , , OpenStreetMap License.


OpenStreetMap , , . , OSM ( ) — , ( : ). OSM ("OSM uses different database schemas for different applications"). , - ( web database schema) (, , ). "" "" 10 , (Simple schema for Osmosis) — ( ). : Database Schemas , :


Schema nameCreated withUpdatableGeometries (PostGIS)Losslesshstore columnsDatabase
pgsnapshotosmosisyesoptionalyesyesPostgreSQL
ogr2ogrogr2ogrnoyesnooptionalvarious
overpassOverpass APIyes?yes?custom
mongosmMongOSMmaybe???MongoDB
node-mongosmMongoosejsyesyesyesNAMongoDB
goosmgoosmnoyesyesNAMongoDB
pbf2mongopbf2mongonoyesyesNAMongoDB

ogr2ogr , . , , , PostgreSQL/PostGIS. pgsnapshot, osmosis — - , , ogr2ogr. verpass ( web API) . , MongoDB, "" , .


(ogr2ogr) ogr2ogr (osmconf.ini). , , , — , ( ), ( , ). OSM — , ( "relation") ( "node"). , , . . ogr2ogr , . osmconf.ini


OSM . — , … — , OSM , , , — ( ). , . " " — OSM wiki , ( , , , ). , OpenStreetMap Data in Layered GIS Format GEOFABRIK. , OSM, , , BigQuery SQL .


, "" ogr2ogr OSM GEOFABRIK. OpenStreetMap Public Dataset Google BigQuery ( SQL). , OSM — OSM bigquery-openstreetmap.



- , BigQuery SQL . , SQL . , — OSM , . " " , ("ignore incorrect geometries with wrong orientation (see GeoJSON RFC 7946)"). CSV .


Laptop com um exemplo de cálculo e animação da distância dos edifícios até o parque mais próximo nos parques da cidade de Nova York parks2buildings_distance_NY.ipynb :



Um laptop com um exemplo de cálculo e animação da distância dos edifícios até o parque mais próximo nos parques da cidade de Tóquio2buildings_distance_Tokyo.ipynb :



Para quem leu - veja o laptop Os resultados da análise da rede rodoviária da cidade de Boston como um exemplo de trabalho direto com dados OSM - e isso também é possível.


All Articles