Case Study
Plataforma de KPI para corretores de imóveis profissionais
Cliente
Indústria
- Tecnologia
- Fundada em 2011, em Portugal
- Faz parte do grupo OLX e é reconhecida como uma das marcas líderes no setor
- Mais de 300.000 imóveis em Portugal
Desafio
- Este projeto teve como objetivo desenvolver uma plataforma de KPI para fornecer uma melhor experiência de utilizador aos corretores de imóveis profissionais e agregar as informações mais importantes para os mesmos em tempo real.
Solução
Do ponto de vista arquitetural, o principal desafio foi criar uma estrutura capaz de lidar com enormes volumes diários de dados, mantendo a sua integridade e resiliência, uma vez que existe uma janela horária muito pequena para recuperar esses dados em caso de desastre.
A solução adotada passou pela utilização do Microsoft Azure Data Factory, programado para ingerir os dados em bruto e transformá-los posteriormente por duas vias:
- Envio de parte dos dados para o banco relacional Azure SQL Server;
- Envio dos restantes dados para o banco não relacional Azure Cosmos DB.
No entanto, essa foi apenas uma parte do desafio. Para a aplicação responder às expectativas e controlar tal volume de dados, estes precisariam de atingir uma elevada velocidade ao serem disponibilizados ao cliente final no front-end. Essa velocidade foi atingida através do uso de técnicas como cache em memória.
A política de cache tem em consideração que, após o utilizador aceder pela primeira vez, grande parte dos seus dados fica disponível em memória e todos os acessos posteriores não necessitam da base de dados, tornando a resposta altamente eficiente.
Do ponto de vista de segurança, o Imovirtual possui regras rigorosas de acesso e validação. Para a entrega deste projeto em produção, foram realizados testes de penetração e a solução foi adequada às políticas de segurança, através da utilização de cofres de segurança para armazenar segredos, senhas e conexões ao banco de dados.
Números importantes da solução
- Importação de dados diários: 800,000 registos
- Total de dados armazenados: 250,000,000
Metodologia
Foi utilizada a metodologia Scrum.
Tecnologias
- NET6
- Microsoft Azure Cloud
- Microsoft Azure Cosmos DB
- Microsoft Azure SQL Server
- Microsoft Azure Data Factory V2
- Microsoft Azure Key Vault
- Microsoft Azure Storage Account
Resultados
Os corretores de imóveis profissionais têm agora ao seu dispor uma plataforma completa onde podem visualizar todas as estatísticas dos seus anúncios.
Trata-se de uma análise detalhada assente em indicadores e gráficos de dados históricos, permitindo a tomada de decisões com base no desempenho. É ainda possível obter o histórico dos pagamentos e investimentos, assim como relatórios oficiais do mercado imobiliário por região.
Tempo e recursos
Projeto de 3 meses. A equipa envolvida incluiu:
- Gestor de Projeto
- Quality Assurance (QA) Engineer
- 1 Developer de Back-end
- 1 Developer de Front-end
- 1 Líder Técnico
Arquitetura macro
Imagens da aplicação
Página inicial:
Performance por anúncios:
Performance global:
Investimentos em destaque:
Qualidade global de anúncios:
Pagamentos: