Questão nº 9

Questão de Ciência de Dados · FGV SEFAZ-MG 2022 - Tarde (nº 9)

FGV2022Auditor Fiscal - Tecnologia da InformaçãoCiência de Dados
Gabarito: Bver comentário ↓

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.

Resposta comentada

Gabarito Alternativa B

Apache Spark é um framework de processamento distribuído que permite analisar grandes volumes de dados de forma rápida e tolerante a falhas, especialmente útil para workloads que precisam reutilizar dados em várias etapas. Sua principal inovação são os RDDs, que permitem a computação em memória e a resiliência.

(A) Incorreta: Spark oferece suporte a dois tipos restritos de variáveis compartilhadas: broadcast e accumulators. Esta afirmação é verdadeira sobre o Spark; broadcast variables distribuem dados de leitura para todos os nós de forma eficiente, e accumulators permitem somas ou contagens distribuídas.
(B) Correta: Spark prove três principais abstrações para a programação paralela: RDDs, operações paralelas, e operações de comunicação. Esta afirmação é falsa sobre o Spark, sendo a exceção. As principais abstrações do Spark são os RDDs (a estrutura de dados) e os dois tipos de operações sobre eles: Transformações (que criam novos RDDs) e Ações (que executam computações e retornam resultados). "Operações paralelas" e "operações de comunicação" são características ou categorias de operações, mas não são as abstrações fundamentais nomeadas pelo framework para a programação paralela, como RDDs, Transformações e Ações são. A pegadinha está em confundir características genéricas com as abstrações específicas do framework.
(C) Incorreta: Os RDDs suportam tolerância a falhas por meio do conceito de linhagem (lineage). Esta afirmação é verdadeira sobre o Spark; a linhagem é o grafo de transformações que levou à criação de um RDD, permitindo que o Spark o reconstrua se uma partição for perdida.
(D) Incorreta: Os usuários podem explicitamente armazenar RDDs em cache na memória entre um conjunto de máquinas e reutilizá-lo em várias operações paralelas. Esta afirmação é verdadeira sobre o Spark; o método `cache()` ou `persist()` permite armazenar RDDs (ou DataFrames/Datasets) em memória ou disco para acelerar acessos futuros.
(E) Incorreta: RDDs (resilient distributed datasets) ou conjunto de dados distribuído resiliente é uma coleção de objetos de só leitura particionados em um conjunto de máquinas e pode ser reconstruído caso alguma partição for perdida. Esta afirmação é verdadeira sobre o Spark; esta é a definição exata de um RDD, sendo imutável, distribuído e tolerante a falhas.

Fonte: FGV SEFAZ-MG 2022 - Tarde Auditor Fiscal - Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho