Repetimos a palestra sobre Geolocalização no evento Passaporte Delphi 2019 do nosso amigo Thulio Bittencourt.
Aqui mostramos uma solução de geolocalização com Redis no backend e Google Maps no front end sendo os artefatos, aplicativo e servidor rest, desenvolvidos em Delphi.
Geolocalização com Redis e Google MapsMario Guedes
Palestra ministrada no Delphi Squad POA onde falamos de geolocalização utilizando Google Maps no Android e Redis no backend.
As aplicações atuais requer, cada vez mais, esta característica e surgem várias dúvidas de como resolver a questão.
Geolocalização com Redis e Google MapsMario Guedes
Palestra ministrada no Delphi Squad POA onde falamos de geolocalização utilizando Google Maps no Android e Redis no backend.
As aplicações atuais requer, cada vez mais, esta característica e surgem várias dúvidas de como resolver a questão.
Aula da disciplina de Cartografia e Geoprocessamento para o Planejamento Territorial, Universidade Federal do ABC (UFABC), fevereiro de 2024. Gravação: https://youtu.be/HlBmBPeRyzY
Artigo no blog a respeito do tema:
https://adenilsongiovanini.com.br/blog/transformacao-de-coordenadas-o-guia-definitivo/
Conheça melhor o Livro Topografia cadastral e Georreferenciamento de Imóveis Rurais na Prática e os bônus disponibilizados juntamente com o mesmo. Link:
https://adenilsongiovanini.com.br/georreferenciamento-de-imoveis-rurais-na-pratica/
Conheça meus cursos e livros. Link:
https://adenilsongiovanini.com.br/cursos-online/
Conheça o Livro Topografia Cadastral e georreferenciamento de Imoveis Rurais na Prática. Link:
https://adenilsongiovanini.com.br/georreferenciamento-de-imoveis-rurais-na-pratica/
Artigo no blog sobre o tema:
https://adenilsongiovanini.com.br/blog/levantamento-topografico-georreferenciado/
Fazendo barba, cabelo e bigode com REDISMario Guedes
REDIS é um poderoso "storage in-memory" que pode ser utilizado em diversas situações. O benefício mais evidente é o de liberar o banco de dados principal.
Nesta apresentação vemos três casos de uso:
- Cacheamento Lado Servidor
- Mensageria entre processos
- Dashboard em tempo real
O vídeo da apresentação está em: https://youtu.be/iyAoKLw1HbY
Quer aprender tudo sobre REDIS? Acesse nosso site: https://arrayof.io
Mais conteúdo relacionado
Semelhante a Geolocalização com Redis e Google Maps
Aula da disciplina de Cartografia e Geoprocessamento para o Planejamento Territorial, Universidade Federal do ABC (UFABC), fevereiro de 2024. Gravação: https://youtu.be/HlBmBPeRyzY
Artigo no blog a respeito do tema:
https://adenilsongiovanini.com.br/blog/transformacao-de-coordenadas-o-guia-definitivo/
Conheça melhor o Livro Topografia cadastral e Georreferenciamento de Imóveis Rurais na Prática e os bônus disponibilizados juntamente com o mesmo. Link:
https://adenilsongiovanini.com.br/georreferenciamento-de-imoveis-rurais-na-pratica/
Conheça meus cursos e livros. Link:
https://adenilsongiovanini.com.br/cursos-online/
Conheça o Livro Topografia Cadastral e georreferenciamento de Imoveis Rurais na Prática. Link:
https://adenilsongiovanini.com.br/georreferenciamento-de-imoveis-rurais-na-pratica/
Artigo no blog sobre o tema:
https://adenilsongiovanini.com.br/blog/levantamento-topografico-georreferenciado/
Fazendo barba, cabelo e bigode com REDISMario Guedes
REDIS é um poderoso "storage in-memory" que pode ser utilizado em diversas situações. O benefício mais evidente é o de liberar o banco de dados principal.
Nesta apresentação vemos três casos de uso:
- Cacheamento Lado Servidor
- Mensageria entre processos
- Dashboard em tempo real
O vídeo da apresentação está em: https://youtu.be/iyAoKLw1HbY
Quer aprender tudo sobre REDIS? Acesse nosso site: https://arrayof.io
Integrando-se à Blockchain da EthereumMario Guedes
Blockchain já passou pelo filtro do tempo. Nesta apresentação mostramos alguns conceitos relacionados à blockchain da Ethereum e as oportunidades que se descortinam.
Quando começamos a lidar com REST tudo parece meio mágico e ao mesmo tempo pesado.
Neste vídeo apresentamos alguns conceitos iniciais dos padrões REST sob a perspectiva do protocolo HTTP.
Paralelismo na prática: Threads de uma vez por todas e sem medo!Mario Guedes
Por vezes considerado um recurso obscuro pelos desenvolvedores Delphi, esta apresentação visa mostrar situações cotidianas que podem ser otimizadas pela aplicação de threads no Delphi, as armadilhas e erros comuns na adoção do paralelismo, e as soluções para contornar estas situações .Podemos tornar nossos aplicativos mais fluídos bem como tornar o processamento de tarefas mais rápidos. Nesta palestra veremos algumas boas práticas acerca do assunto partindo da classe TThread chegando à recente PPL (Parallel Programming Library). É um recurso importante no desenvolvimento Win32, Mobile e backend nos ajudando a tornar as aplicações assíncronas e, portanto, escaláveis.
Apresentação na CodeRage Brasil 2019 sobre as possibilidades do Redis com o Delphi.
Vídeo para apresentação: https://youtu.be/WI7SAY_ds1s
Exemplos no GitHub: https://github.com/jmarioguedes/CodeRage2019_Redis.git
Material de apoio à palestra on-line sobre a utilização do Redis e NGINX com Delphi.
*Vídeo:* https://youtu.be/ckXnPngRu7A
*GitHub:* https://github.com/jmarioguedes/INTENSIVE_DELPHI_2018
TDCSP - 2018 - Possibilidades com o REDIS no DelphiMario Guedes
O REDIS é uma poderosa ferramenta que expande as possibilidades no lado servidor. Nesta palestra será mostrado as oportunidades que que o REDIS oferece:
~> Cacheamento lado servidor
~> Controle de sessão DataSnap
~> Mensageiria entre processos
~> Enfileiramento de processamento
~> Execução de código Lua
Data Science é uma realidade e não pode ser ignorada. A utilização de BOTs é umas das tendências que está se consolidando. Mostraremos como tirar proveito desta tecnologia permitindo que os usuários interajam com a aplicação da forma mais natural possível para o ser humano: conversando.
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Mario Guedes
Nessa palestra, José Mario Silva Guedes mostra a migração da abordagem Cliente Servidor para Multi Camadas passando pelo SOA (Soap) até chegar no ROA (Rest), por intermédio de uma linha do tempo do uso das linguagens VB, Delphi, Java chegando no Python, bem como, da evolução do banco de dados relacional para abordagem noSQL e suas variantes. Por fim, será abordado o cenário atual, mostrando a adoção de Machine Learning e tecnologias cognitivas, como por exemplo a adoção de Bots para o atendimento
Uma arquitetura que queira ser escalável e resiliente tem que lançar mão de conceitos e artefatos alinhados com estes objetivos.
A apresentação mostra uma proposta de arquitetura que atendam a estes dois objetivos.
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBMario Guedes
Nos dias de hoje há várias oportunidades de expormos ao menos parte da nossa aplicação para o mundo, seja por conta de um aplicativo móvel, seja por conta de integração com terceiros. Outras vezes se mostra oportuno tentarmos oferecer uma solução cloud ou invés de uma solução "on-premise". Então, sair do modelo cliente servidor para um modelo SOA nos trás desafios relacionados a escalabilidade e resiliência. Nesta palestra mostrarei uma arquitetura escalável e resiliente baseado em REST e micro serviços utilizando a abordagem noSQL.
4. Geolocalização, o que é?
Qualquer ponto na superfície terrestre pode ser endereçado através de
uma rede de linhas imaginárias que fatiam o globo.
A geolocalização é composta por duas coordenadas geográficas:
• Latitude
• Longitude
5.
6. Latitude
A latitude é determinada em graus, de 0º à 90º.
Da Linha do Equador ao norte, os números são positivos.
Da Linha do Equador ao sul, os números são negativos.
Os paralelos determinam as latitudes e os paralelos são círculos
completos em volta da Terra, por isso temos 180º ao todo.
7. Longitude
A longitude é determinada em graus, de 0º à 180º.
Do Meridiano de Greenwich à leste, os números são positivos
Do Meridiano de Greenwich à oeste, os números são negativos
Os meridianos determinam as longitudes, e os meridianos são semicírculos em
volta da Terra, por isso temos 360º ao todo.
Observe que essas linhas também são utilizadas para determinar os fusos
horários, mas isso é outra história.
8. Graus?
Graus, minutos e segundos para ser mais exato.
Graus de ângulo mesmo …
Os babilônios achavam que um ano tinha 360 dias, daí decidiram dividir um círculo em
360 partes, sendo cada parte um ângulo.
Cada ângulo equivale à 60 minutos, sendo minuto a subdivisão de um ângulo.
Por fim, cada minuto se subdivide em segundos.
Aqui minutos e segundos são medidas de distância e não de tempo!
9. Temos um plano cartesiano então?
A Linha do Equador é o Eixo X
O Meridiano de Greenwich é o Eixo Y
A intersecção das duas linhas é o ponto
ZERO
Mas isso não significa que a Terra é plana
hein?
Linha do Equador
Meridiano de
Greenwich
10. E a altitude?
É uma informação importante também!
Determina-se a altitude de um local em relação ao nível do mar.
Afinal, vivemos em uma enorme rocha imperfeita porém “esférica”.
Altitude Positiva
Altitude Negativa
Profundidade
11. Geohash
• Geohash é um sistema de geocodificação que utiliza uma sequência
de números e letras para representar coordenadas geográficas.
• Nosso encontro, por exemplo, pode ser representado da seguinte
maneira:
• Latitude : -23.5708384
• Longitude: -46.6576912
• Geohash : 6gycfm0cuvrb
• http://geohash.co
13. GPS - Global Positioning System
Sistema de Posicionamento Global
Foi criado na década de 60 como um projeto militar e atualmente é
administrado pelo Departamento de Defesa dos Estados Unidos
Utilizado em 1990 na Guerra do Golfo para orientar os soldados americanos
no deserto.
Plenamente operacional em 1995 e liberado para uso civil no ano 2000.
São 24 satélites que orbitam a Terra duas vezes por dia
Existem outras tecnologias como Glonass (Rússia), Compass (China) e
Galileo (Europa)
14. GPS
Para funcionar o receptor tem que receber
o sinal de 3 satélites no mínimo.
Uma maior quantidade aumenta a
precisão.
O receptor faz uns cálculos malucos com
as informações recebidas e com isso
consegue determinar a sua latitude e
longitude
15. Obtendo coordenadas
Satélite 1
Satélite 3
Satélite 2
Área de leitura do
satélite, triangulação
Coordenada informada
para os aplicativos
Precisão da coordenada
informada
16. Local do nosso encontro
Alameda Campinas, 1213 - Jardins, São Paulo -
SP, 01404-001
Latitude : -23.5708384
Longitude: -46.6576912
17. E como funciona tudo isto no seu celular?
O celular tem um bússola interna, certo?
Então ele consegue determinar em que direção fica o norte e com isso determinar
todas as outras.
O celular tem um receptor GPS, certo?
Então ele consegue determinar a sua localização física no planeta Terra
O celular tem acesso à Internet, certo?
Então ele consegue fazer download dos mapas, sincronizar todas as informações e
ser uma das ferramentas mais úteis do dia à dia do cidadão médio.
19. E como funciona no Redis?
Você já sabe que o Redis é um banco noSQL orientado à chave e valor que
armazena seus dados em memória e que por causa de tudo isso é rápido
pra caramba!
Ele oferece tipos e comando específicos para lidar com geolocalização.
Internamente o Redis utiliza o geohash e o tipo conjunto para lidar com
geolocalização.
20. Comandos Redis
GEOADD: Adiciona uma informação geolocalizada à um conjunto
GEORADIOS: Recupera itens de um conjunto à partir de coordenadas
GEOPOS: Retorna as coordenadas de um determinado item
GEORADIOSBYMEMBER: Recupera itens de um conjunto à partir de um determinado
item deste conjunto
GEODIST: Recupera a distância entre dois membros de um conjunto
GEOHASH: Recupera o geohash de uma coordenada geográfica
https://redis.io/commands#geo