Descrever uma arquitetura de data warehousing
A arquitetura de análise de dados em grande escala pode variar, assim como as tecnologias específicas usadas para implementá-la, mas em geral os seguintes elementos estão incluídos:
- Ingestão e processamento de dados – os dados de um ou mais armazenamentos de dados transacionais, arquivos, fluxos em tempo real ou outras fontes são carregados em um data lake ou um data warehouse. A operação de carregamento geralmente envolve um processo de ETL (extração, transformação e carregamento) ou ELT (extração, carregamento e transformação) no qual os dados são limpos, filtrados e reestruturados para análise. Em processos de ETL, os dados são transformados antes de serem carregados em um armazenamento analítico, enquanto em um processo de ELT eles são copiados para o armazenamento e depois transformados. De qualquer forma, a estrutura de dados resultante é otimizada para consultas analíticas. O processamento de dados geralmente é executado por sistemas distribuídos que podem processar grandes volumes de dados em paralelo usando clusters de vários nós. A ingestão de dados inclui o processamento em lote de dados estáticos e o processamento em tempo real de dados de streaming.
- Armazenamento de dados analíticos – os armazenamentos de dados para análise em grande escala incluem data warehouses relacionais, data lakes baseados em sistema de arquivos e arquiteturas híbridas que combinam recursos de data warehouses e data lakes (às vezes chamados de data lakehouses ou bancos de dados lake). Discutiremos isso em mais detalhes posteriormente.
- Modelo de dados analíticos – embora analistas de dados e cientistas de dados possam trabalhar com os dados diretamente no armazenamento de dados analíticos, é comum criar um ou mais modelos de dados que agregam previamente os dados para facilitar a produção de relatórios, dashboards e visualizações interativas. Geralmente, esses modelos de dados são descritos como cubos, nos quais valores de dados numéricos são agregados em uma ou mais dimensões (por exemplo, para determinar o total de vendas por produto e região). O modelo encapsula as relações entre valores de dados e entidades dimensionais para dar suporte à análise de "drill up/drill down".
- Visualização de dados – os analistas de dados consomem dados de modelos analíticos e diretamente de repositórios analíticos para criar relatórios, dashboards e outras visualizações. Além disso, os usuários em uma organização que talvez não sejam profissionais de tecnologia podem executar relatórios e análise de dados por autoatendimento. As visualizações dos dados mostram tendências, comparações e KPIs (indicadores chave de desempenho) para uma empresa ou outra organização e podem assumir a forma de relatórios impressos, grafos e gráficos em documentos ou apresentações de PowerPoint, dashboards baseados na Web e ambientes interativos nos quais os usuários podem explorar os dados visualmente.