29-10-2021
Blocos Padrão das Aplicações Data-Intensive
Atualmente grande parte das aplicações existentes trabalham sobre enormes quantidades de dados. Para estas aplicações a potência dos processadores não é o principal fator limitante. Os problemas geralmente estão nas enormes quantidades de dados, na complexidade dos dados e na velocidade com que são atualizados.
Estas aplicações, conhecidas como data-intensive, são construídas a partir de alguns blocos padrão que fornecem as funcionalidades necessárias. Os blocos recorrentes são:
Base de dados - Funcionalidade de guardar dados de forma a poderem ser encontrados mais tarde;
Cache - Opção de se lembrar de respostas a operações pesadas, aumentando a velocidade de resposta;
Índices - Indexar os dados permite filtrá-los e pesquisá-los por palavras-chave, acelerando o processo de encontrar o que se procura;
Processamento de fluxo (stream processing) - Envio de mensagens para processos paralelos para serem tratadas de forma assíncrona;
Processamento em lote - Analisar periodicamente uma grande quantidade de dados acumulados.
Estes blocos já existem, não é preciso implementá-los sempre que se pretende criar uma aplicação nova, o segredo está em escolher a opção certa para cada um destes pontos, pois cada aplicação tem diferentes requisitos.
Existem vários sistemas de gestão de base de dados e cada um tem as suas características próprias, há diferentes abordagens em relação à cache, várias formas de construir índices, etc...
Construir uma aplicação implica decidir quais as ferramentas e que abordagens são mais adequadas para a tarefa em questão. Pode ainda acontecer ter de combinar ferramentas quando se pretende algo que uma única ferramenta não faz sozinha.
Por todas estas questões, é muito importante conhecer os princípios e aspetos práticos dos sistemas de dados e saber como os utilizar na criação de aplicações data-intensive.
Artigos relacionados:
👉 Follow @niuGIS
RELACIONADAS