Logo Passei Direto
Buscar

Simulado 02 - DataFrames e Otimização

Ferramentas de estudo

Questões resolvidas

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Prévia do material em texto

Simulado 02: Manipulação de PySpark DataFrames e Otimização
Tópicos de Big Data em Python — Avaliação Prática
QUESTÃO 01
Dado o DataFrame PySpark df contendo as colunas "departamento" e "salario", qual comando calcula
corretamente a média salarial por departamento?
A df.select("departamento").mean("salario")
B df.groupBy("departamento").agg(f.avg("salario"))
C df.filter("departamento").reduceByKey(lambda a, b: a + b)
D df.map(lambda x: (x.departamento, x.salario)).avg()
QUESTÃO 02
O otimizador 'Catalyst' do Apache Spark desempenha um papel fundamental na execução eficiente de
consultas em DataFrames. Qual é a sua principal função?
A Comprimir os arquivos em formato Parquet diretamente no disco antes da leitura.
B Realizar a conversão de código Python puro em C++ para garantir execução nativa na GPU.
C Aplicar otimizações lógicas e físicas, tais como Pushed Down Predicates e Projection Pruning, gerando bytecodes
eficientes.
D Gerenciar as chaves de criptografia e autenticação de usuários no cluster Hadoop YARN.
QUESTÃO 03
Em cenários onde um DataFrame muito grande precisa sofrer um JOIN com um DataFrame muito pequeno
(tabela de dimensão/lookup), qual estratégia minimiza o Shuffle de dados?
A Utilizardf_grande.repartition(100).join(df_pequeno)
B Utilizardf_grande.join(broadcast(df_pequeno), "id")
C Converter ambos os DataFrames para RDDs antes de executar o Join.
D Salvar o DataFrame pequeno em formato CSV temporário e ler via Python pandas.
QUESTÃO 04
Considere a diferença entre os métodos repartition(n) e coalesce(n) no PySpark. Assinale a afirmativa
correta:
A coalesce(n)é usado para aumentar o número de partições e sempre provoca Shuffle total.
B repartition(n)reduz o número de partições unindo partições existentes sem mover dados na rede.
C coalesce(n)reduz o número de partições de forma eficiente
sem Shuffle completo, enquanto
repartition(n)pode aumentar ou diminuir
partições realizando Shuffle.
D Ambos os métodos executam exatamente o mesmo algoritmo, alterando apenas a sintaxe.
Simulado Tópicos de Big Data em Python — Módulo 2 Página 1 de 1

Mais conteúdos dessa disciplina