← Questões de Banco de Dados

Banco de Dados · FGV · 2023

Questão comentada de Banco de Dados

Matei Zaharia et al. propuseram o framework Spark como alternativa para processar workloads que reutilizam dados através de múltiplas operações paralelas. As opções a seguir apresentam características do framework Spark, à exceção de uma. Assinale-a.

Gabarito: B

O Spark surgiu para acelerar processamento distribuído, especialmente quando os dados precisam ser reaproveitados em várias etapas, sem ficar relendo tudo do disco o tempo inteiro. A estrela da arquitetura são os RDDs, que são conjuntos distribuídos, imutáveis e tolerantes a falhas. Se uma partição some, o Spark consegue reconstruí-la pela linhagem, isto é, pela sequência de operações que gerou aquele dado. Além disso, o usuário pode persistir ou colocar RDDs em cache na memória, o que faz enorme diferença quando a mesma massa de dados participa de várias operações paralelas. O Spark também trabalha com variáveis compartilhadas restritas, como broadcast variables e accumulators, que servem para cenários bem específicos de comunicação entre as tarefas. A questão erra na alternativa B porque ela mistura os conceitos. O Spark não é descrito por "três principais abstrações" como RDDs, operações paralelas e operações de comunicação. Na formulação clássica do framework, as abstrações centrais são os RDDs e as operações sobre eles, com apoio das variáveis compartilhadas restritas. Por isso, B é a exceção. Em resumo: quando a banca falar em tolerância a falhas, pense em lineage; quando falar em reaproveitamento, pense em cache; e quando falar em compartilhamento de dados entre tarefas, lembre de broadcast e accumulators. O Spark gosta de velocidade, mas também gosta de memória bem usada.

Continue treinando

Questões relacionadas