Questões de Sistemas Distribuídos (Arquitetura de Software)

Limpar Busca

Uma empresa precisa processar grandes volumes de dados e está avaliando a adoção de Apache Hadoop ou Apache Spark para suas operações. A equipe técnica analisou as características de cada tecnologia e fez as seguintes observações:



• A equipe deseja minimizar a latência no processamento dos dados.


• O projeto exige suporte para análise de dados em tempo real.


• O orçamento disponível permite a utilização de mais memória RAM, se necessário.


• A infraestrutura já possui um Data Lake armazenado no HDFS.



Com base nas informações apresentadas, assinale a alternativa que representa a escolha mais adequada e o seu principal motivo.

  • A O Hadoop é a melhor escolha, pois seu modelo baseado em MapReduce, permite o processamento em memória, reduzindo a latência.
  • B O Hadoop é a melhor escolha, pois é mais eficiente para análises interativas e streaming de dados.
  • C O Spark não pode ser usado nesse cenário, pois exige um sistema de arquivos próprio e não suporta HDFS.
  • D O Spark é a melhor escolha, pois oferece processamento em tempo real por meio do módulo Spark Streaming e pode usar HDFS como fonte de dados.
  • E O Hadoop e o Spark são equivalentes para esse caso, pois ambos possuem processamento em tempo real e baixa latência.

Os paradigmas de passagem de mensagens e chamada remota a procedimentos (RPC) permitem que componentes de sistemas distribuídos comuniquem-se para a realização de tarefas.

Em relação a esses paradigmas, considere as afirmativas a seguir.

I  →  Passagem de mensagens pode ser síncrona ou assíncrona, enquanto RPC é sempre síncrona.
II  →  Deadlocks podem ser um problema em sistemas de passagem de mensagens.
III  →  RPC requer que cliente e servidor utilizem o mesmo sistema operacional.
IV  →  A passagem de mensagens não requer uma arquitetura de memória compartilhada para funcionar corretamente.

Está(ão) correta(s)

  • A apenas II.
  • B apenas I e III.
  • C apenas I e IV.
  • D apenas II e IV.
  • E apenas I, III e IV.

Atualmente, no cenário do desenvolvimento de software, observa-se uma crescente popularidade no uso de APIs, uma vez que têm se mostrado uma solução eficaz para a transição entre sistemas legados e a implementação de novos sistemas. GraphQL (Graph Query Language) tem se destacado como uma das opções para consumo eficiente das API's. Sobre essa tecnologia, analise as afirmativas a seguir: 

I. JSON é um requisito para usar GraphQL.
Il. Por meio do GraphQL é possível evitar o overfetching.
III. Não é possível utilizar o GraphQL junto do REST, pois há conflito no serviço.
IV. É possível utilizar filtros e ordenação nativamente, porém para paginação é necessário uso de bibliotecas auxiliares. 

Da relação apresentada está CORRETO o que se afirma em:

  • A II.
  • B II e IV.
  • C I, III e IV.
  • D I, II e III.
  • E i.

Julgue o próximo item, relativo a RabbitMQ, Rancher e GIT.


git branch -D test


A execução do comando precedente excluirá a branch test caso todos os commits tenham sido realizados; porém, se a master estiver em estado de check-out, a exclusão será cancelada. 

  • Certo
  • Errado

Julgue o próximo item, relativo a RabbitMQ, Rancher e GIT.


No RabbitMQ, a forma padrão de se distribuir mensagens é round-robin, de modo que cada consumidor terá, em média, o mesmo número de mensagens.

  • Certo
  • Errado