Sim, eu sei que hoje é sexta-feira, mas mal posso esperar até a próxima semana para compartilhar esses posts #GeospatialTuesday! É como estou emocionado depois de ler Good Things Come Together:DBeaver, SAP HANA Spatial &Beer, de Mathias Kemeter.
Um minuto de fraqueza…
Não foi só a cerveja que me empolgou no post dele, mas… Sim, posso confirmar que Munique é o destino alemão para uma cerveja. Eu estive lá apenas uma vez na minha vida – para encontrar nossa equipe (aqui com Thomas Grassl, Maximilian Streifeneder, Eshanno Byam, Myles Fenlon, Marius Obert e Kevin Muessig) no verão de 2018…
…e para desfrutar de cervejas bávaras?
…mas agora:de volta ao ponto
O que realmente me empolgou no que Matthias compartilhou foi a visualização integrada de dados espaciais no DBeaver e o fato de que agora ele também suporta os resultados do SAP HANA!
Você viu em meus blogs anteriores que eu tive que copiar resultados espaciais do HANA SQL e colá-los em visualizadores externos da web, ou até mesmo escrever minha própria visualização usando ASCIIart.
Não mais!
Levei apenas alguns minutos para instalar o DBeaver, conectá-lo à minha instância SAP HANA Express e disparar as primeiras consultas, visualizando imediatamente os resultados em uma forma de visualizações espaciais ou no mapa!
Na minha postagem anterior, carreguei o conjunto de dados espaciais
WORLD_BOARDERS
, então vamos brincar com ele para fazer um pouco de GeoArt. WITH POINTS_GRID AS
(SELECT NEW st_point(glng.generated_period_start, glat.generated_period_start) AS point
FROM
series_generate_decimal(0.3, -88, 88 + 0.3) AS glat
CROSS JOIN series_generate_decimal(0.3, -180, 180 + 0.3) AS glng)
SELECT point FROM POINTS_GRID g, TM.WORLD_BORDERS b
WHERE
b.ISO2 = 'UA'
AND point.st_within(shape)=1;
Agora alternando para a visualização espacial no DBeaver.
Agora deixe-me mudar o Sistema de Referência Espacial de
Simple
para EPSG:4326
e … boom!! Consegui a prévia do resultado no mapa! Eu não sei se você pode ler como estou animado! E eu sou!! EU SOU!!!
Vamos usar alguns novos recursos geoespaciais do SPS04 da versão 2.0
No post anterior eu já usei o novo agrupamento de grade hexagonal. Vamos combiná-lo com a consulta acima e prestar homenagem à Austrália agora.
--Honeycombs
WITH POINTS_GRID AS
(SELECT NEW st_point(glng.generated_period_start, glat.generated_period_start) AS point
FROM
series_generate_decimal(0.3, -88, 88 + 0.3) AS glat
CROSS JOIN series_generate_decimal(0.3, -180, 180 + 0.3) AS glng)
SELECT COUNT(*), ST_ClusterID(), ST_ClusterCell() as "Honeycomb"
FROM (SELECT point FROM POINTS_GRID g, TM.WORLD_BORDERS b
WHERE
b.ISO2 = 'AU'
AND point.st_within(shape)=1)
GROUP CLUSTER BY point
USING HEXAGON X CELLS 30;
Agora vamos combiná-lo com o
ST_Buffer
aprimorado método, que obtém os novos number_of_interpolation_points
parâmetro em 2.0 SPS04. Vamos usar
number_of_interpolation_points
parâmetro igual a 3
para obter um mapa da Austrália feito de triângulos. --Buffers
WITH POINTS_GRID AS
(SELECT NEW st_point(glng.generated_period_start, glat.generated_period_start) AS point
FROM
series_generate_decimal(0.3, -88, 88 + 0.3) AS glat
CROSS JOIN series_generate_decimal(0.3, -180, 180 + 0.3) AS glng)
SELECT ST_ClusterCell().ST_Centroid().ST_Buffer(0.4, 3) as "Buffer"
FROM (SELECT point FROM POINTS_GRID g, TM.WORLD_BORDERS b
WHERE
b.ISO2 = 'AU'
AND point.st_within(shape)=1)
GROUP CLUSTER BY point
USING HEXAGON X CELLS 30;