❑ Banco de dados. Projeto de banco de dados: projeto conceitual, lógico
e físico. A abordagem Entidade-Relacionamento (E-R). Modelo relacional: conceitos, restrições de integridade, mapeamento de modelos E-R para esquemas relacionais. Dependências funcionais e normalização. Linguagem SQL: DDL, DML, restrições de integridade, visões, autorização de acesso. Sistemas de gerência de bancos de dados (SGBDs). ❑ Bancos de dados NoSQL: definição de NoSQL, orientação à agregados, tipos de SGBD NoSQL: chave valor, chave valor orientado à documentos, família de colunas, grafos. ❑ Arquitetura e tecnologias de sistemas de informação. Conceitos básicos. Workflow e gerenciamento eletrônico de documentos. Banco de dados Conceitos básicos Questão - IPEA/2024/Infraestrutura Em um diagrama de entidades e relacionamentos (DER), as entidades são representadas por meio de retângulos, e os relacionamentos, por meio de losangos. No DER, um retângulo representa um conjunto de entidades. Tanto as entidades quanto os relacionamentos podem possuir atributos. Todas as entidades em um DER precisam possuir um atributo especial, denominado atributo identificador. Nesse contexto, considere que uma entidade PESQUISADOR, em um DER, representa um conjunto de pessoas que são pesquisadores. Nesse caso, o atributo identificador da entidade PESQUISADOR (A) informa a versão do DER. (B) deve, necessariamente, ser o atributo CPF. (C) viabiliza a identificação de categorias de pesquisadores. (D) permite identificar unicamente uma pessoa na entidade PESQUISADOR. (E) caracteriza o relacionamento da entidade PESQUISADOR com outra entidade. Questão - IPEA/2024/Infraestrutura Considere que um modelo conceitual de dados foi criado, por meio da utilização de um Diagrama de Entidades e Relacionamentos (DER), contendo as entidades UF e EMPRESA, e um relacionamento entre essas duas entidades denominado GERACAO. O objetivo é representar a potência instalada total, em kW, por cada empresa em cada UF. Em uma UF, pode haver várias empresas com geração de energia, e cada empresa pode gerar energia em várias UF. O atributo identificador na entidade UF é cod; o atributo identificador na entidade EMPRESA é CNPJ. Foram criadas tabelas, segundo o Modelo Relacional, derivadas do DER apresentado. O conjunto de tabelas corretamente derivadas do DER apresentado nas quais as chaves primárias encontram-se sublinhadas é (A) UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social); GERACAO (cod, CNPJ, potencia) (B) UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social, potencia) (C) UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social, potencia, UF) (D) UF (cod, nome, populacao); EMPRESA (CNPJ, razao-social); GERACAO (potencia) (E) UF (cod, nome, populacao, CNPJ); EMPRESA (CNPJ, razao-social, potencia) Questão - IPEA/2024/Desen. Considere os diferentes paradigmas de modelagem de dados: relacional, orientada a objetos e mapeamento objeto-relacional. Sobre esses paradigmas, verifica-se que (A) a modelagem orientada a objetos permite a representação de entidades complexas com atributos e comportamentos, refletindo mais de perto o mundo real. (B) a modelagem relacional é mais flexível do que a orientada a objetos, pois permite uma representação mais dinâmica dos dados. (C) o mapeamento objeto-relacional é um método exclusivo da modelagem relacional, permitindo a conversão direta de objetos em tabelas. (D) o mapeamento objeto-relacional é uma técnica exclusiva da modelagem orientada a objetos, não sendo aplicável a sistemas baseados em modelagem relacional. (E) os dados, na modelagem orientada a objetos, são representados como tabelas com linhas e colunas, semelhante à abordagem relacional. Questão - IPEA/2024/C. de Dados Sistemas de bancos de dados apresentam benefícios e desafios potencializados quando é possível adotar uma solução de gerência distribuída, coordenada por um sistema de banco de dados distribuído. Nesse contexto, uma importante questão de projeto refere-se à (A) autonomia, dimensão a ser considerada na arquitetura de um banco de dados distribuído, pois indica como a distribuição dos dados será processada, com a designação de fragmentos por nó. (B) confiabilidade do sistema, que pode, em função da natureza dos dados e da natureza das aplicações clientes, ser relaxada, em prol do desempenho de execução das consultas. (C) fragmentação vertical de dados, uma técnica que apresenta um conjunto de dados em tuplas, ou registros, entre os nós do sistema distribuído. (D) replicação de dados seja ela total ou parcial, pois demanda a implementação de protocolos que garantam a consistência das réplicas. (E) execução de consultas, que se concentram na minimização dos custos de processador e de entrada e saída, sendo os custos de comunicação parcela de menor impacto no total. Questão - IPEA/2024/Infraestrutura Segundo os resultados apresentados pela Pesquisa Anual de Comércio (PAC) realizada em 2021 pelo IBGE, o Brasil possuía cerca de 1.039.000 empresas comerciais da área varejista, com cerca de 7.413.000 pessoas trabalhando nessas empresas em 31/12 daquele ano. Uma organização criou e populou um banco de dados relacional para a realização de estudos nessa área, com as tabelas EMPRESA, FUNCIONÁRIO, PRODUTO e VENDA, entre outras. Nesse contexto, considere que, quando um determinado comando SELECT, que realiza acesso aos dados logicamente relacionados das quatro tabelas citadas, é executado no contexto apresentado, ele possui um alto tempo de resposta. Foi, então, avaliado que, dentre outras medidas, o desempenho da execução desse comando precisa ser aprimorado. Nesse caso, é necessário observar se no plano de execução desse comando há (A) buscas sequenciais a dados de alguma tabela que podem ser melhoradas por meio de índices. (B) índices especiais para operações do tipo “loop” sem utilização plena. (C) muitos índices sendo utilizados, o que pode prejudicar o desempenho do comando. (D) operações do tipo “divisão” e, caso haja, substituí-las por “junções” equivalentes. (E) operações do tipo “junção” e, caso haja, não utilizá-las. Questão - IPEA/2024/C. de Dados Para um estudo do tema Educação, foram coletados dados de escolas e de professores em todos os municípios brasileiros. Esses dados foram armazenados em duas relações (tabelas), organizadas de acordo com o seguinte modelo relacional: ESCOLA (cod-escola, nome-escola, cod-municipio, quantidade-alunos) PROFESSOR (CPF, nome-prof, data-nascimento, cod-municipio-residencia, cod-escola-prof) A chave primária de ESCOLA é cod-escola, e a de PROFESSOR é CPF. A coluna cod-escola-prof em PROFESSOR é uma chave estrangeira e indica em que escola o professor leciona. Considere a utilização dos operadores de Projeção (p ou PROJETE), Seleção (σ ou SELECIONE) e Junção ( ou JUNTE) da Álgebra Relacional. Questão - IPEA/2024/C. de Dados Que sequência de operações, em Álgebra Relacional, produz como resultado uma relação R-X com CPF e nome dos professores que NÃO residem no mesmo município onde lecionam? (A) R-X ← SELECIONE CPF, nome-prof de PROFESSOR onde cod-municipio-residencia é diferente de cod- municipio (B) R-A ← JUNTE PROFESSOR a ESCOLA onde cod-municipio-residencia é diferente de cod-municipio R- X ← PROJETE CPF, nome-prof de R-A (C) R-A ← SELECIONE CPF, nome-prof de PROFESSOR R-X ← JUNTE R-A a ESCOLA onde cod-escola-prof = cod-escola (D) R-A ← JUNTE PROFESSOR a ESCOLA onde cod-escola-prof = cod-escola R-B ← SELECIONE R-A onde cod-municipio-residencia é diferente de cod-municipio R-X ← PROJETE CPF, nome-prof de R-B (E) R-A ← PROJETE CPF, nome-prof de PROFESSOR R-B ← JUNTE R-A a ESCOLA onde cod-escola-prof = cod-escola R-X ← SELECIONE R-B onde cod-municipio-residencia é diferente de cod-municipio Questão - IPEA/2024/Infraestrutura Considere que, em um banco de dados preparado para persistir dados de apoio à realização de estudos na área agropecuária, existem duas tabelas: IMÓVEL (cod-sncr, denominacao, cod-mun, area-total) MUNICÍPIO (cod-mun, uf, qtd-imoveis) A chave primária de um imóvel é o seu código no Sistema Nacional de Cadastro Rural (SNCR), e a de um município é o seu código, segundo o IBGE. A coluna IMÓVEL.cod-mun é chave estrangeira e referencia MUNICÍPIO.cod-mun. Uma aplicação, ou sistema, realiza regularmente a seguinte transação nesse banco de dados: Início da transação, Inserção dos dados de um novo imóvel na tabela IMÓVEL, Atualização de qtd-imoveis na tabela MUNICÍPIO Commit Nesse exemplo, a propriedade de atomicidade de uma transação garantirá que (A) a integridade referencial entre as duas tabelas sempre será mantida. (B) apenas usuários autorizados poderão consultar os novos dados inseridos. (C) nenhuma das duas tabelas será modificada em caso de problema durante a sua execução. (D) não existirão dois municípios com o mesmo código. (E) não haverá deadlock entre duas transações concorrentes. Dependências funcionais e normalização. Dependências funcionais Normalização Questão. A tabela PESSOA, criada segundo os conceitos do Modelo Relacional para a realização de estudos na área da saúde, possui os seguintes atributos: PESSOA (CPF, nome, sexo, idade, RG, renda, município-residência, UF-residência) A chave primária dessa tabela é o atributo CPF. Nesse contexto, considere as seguintes dependências funcionais (DF) definidas para alguns dos atributos da tabela PESSOA: Considerando-se a definição da primeira, da segunda e da terceira formas normais, 1FN, 2FN e 3FN, respectivamente, a tabela PESSOA NÃO está na (A) 1FN, devido à DF CPF → nome (B) 2FN, devido à DF CPF → RG (C) 2FN, devido à DF RG → nome (D) 3FN, devido à DF CPF → renda (E) 3FN, devido à DF Município-residência → UF-residência Linguagem SQL Linguagem SQL Questão - IPEA/2024/C. de Dados Para a avaliação de políticas públicas na área de Segurança Alimentar e Nutricional, um município brasileiro utilizou dados persistidos em três relações (tabelas) organizadas de acordo com o seguinte modelo relacional: PRODUTO (cod-produto, nome-produto, grupo-alimentar) FORNECEDOR (CNPJ, nome-empresa, tipo) COMPRADO (CNPJ, cod-produto, data, quantidade, valor) Os atributos que formam as chaves primárias de cada tabela estão sublinhados. Nesse contexto, considere o comando SQL apresentado a seguir. SELECT P.cod-produto, SUM (quantidade) FROM PRODUTO P, FORNECEDOR F, COMPRADO C WHERE P.cod-produto = C.cod-produto AND C.CNPJ = F.CNPJ AND F.tipo = 'agricultura familiar’ GROUP BY P.cod-produto HAVING SUM (quantidade) > 10000 Questão - IPEA/2024/C. de Dados Os resultados produzidos pela execução desse comando apresentam o código do produto e a soma das quantidades compradas dos produtos de (A) fornecedores com mais de 10.000 produtos distintos. (B) fornecedores do tipo 'agricultura familiar' que tiveram mais de 10.000 unidades compradas. (C) fornecedores do tipo 'agricultura familiar' que fornecem mais de 10.000 produtos distintos. (D) todos os fornecedores do tipo 'agricultura familiar'. (E) produtos que tiveram mais de 10.000 unidades compradas. Questão - IPEA/2024/Infraestrutura Considere que um banco de dados foi criado para dar apoio à avaliação de instrumentos e políticas de gestão de trânsito no Brasil, nos últimos cinco anos. Os dados foram organizados e persistidos nas três seguintes tabelas, definidas de acordo com modelo relacional de dados: SINISTRO, com dados dos acidentes de trânsito; MUNICIPIO, com dados de municípios; e RODOVIA, com dados de rodovias estaduais e federais. SINISTRO (cod-sinistro, data-e-hora, localizacao, cod-rodovia, cod-municipio, quantidade-de-vitimas) RODOVIA (cod-rodovia, nome, estadual-ou-federal) MUNICIPIO (cod-municipio, uf, quantidade-de-habitantes) Os atributos que formam as chaves primárias de cada tabela estão sublinhados. Na tabela SINISTRO, há duas chaves estrangeiras: cod-rodovia, que indica onde ocorreu o sinistro, caso ele tenha ocor- rido em uma rodovia, e cod-municipio, que indica em que municipio ocorreu o sinistro. Nesse contexto, considere o seguinte comando SQL: Questão - IPEA/2024/Infraestrutura. SELECT S.cod-rodovia, S.data-e-hora, quantidade-de-vitimas FROM SINISTRO S WHERE S.cod-rodovia IN ( SELECT R cod-rodovia FROM RODOVIA R WHERE R estadual-ou-federal = federal) AND EXISTS ( SELECT * FROM MUNICIPIO M WHERE M.cod-municipio = S cod-municipio AND M.quantidade-de-habitantes < 50000) Os resultados produzidos pela execução desse comando apresentam o código da rodovia, a data e hora e a quantidade de vítimas de sinistros ocorridos em Questão - IPEA/2024/Infraestrutura Os resultados produzidos pela execução desse comando apresentam o código da rodovia, a data e hora e a quantidade de vítimas de sinistros ocorridos em (A) rodovias federais que passam por municípios com menos de 50.000 habitantes. (B) rodovias federais, em municípios com menos de 50.000 habitantes. (C) rodovias federais que têm como origem ou destino municípios com menos de 50.000 habitantes. (D) município com menos de 50.000 habitantes ou em rodovias federais. (E) município com menos de 50.000 habitantes com duas ou mais rodovias federais. NoSQL Bancos de dados NoSQL Questão - IPEA/2024/C. de Dados Uma das principais características de sistemas gerenciadores de bancos de dados (SGBD) NoSQL, quando comparados aos sistemas gerenciadores bancos de dados relacionais (SGBDR), é que seu esquema é considerado flexível ou não existente (schemaless). O esquema de um SGBD NoSQL ser flexível ou não existente tem como consequência o fato de que (A) a qualidade de dados pode ser mais difícil de ser garantida, quando comparado a um SGBDR. (B) a realização de adaptações para persistir conteúdos distintos é mais demorada do que em um SGBDR. (C) o desempenho de uma consulta aos dados é maior do que em um SGBDR. (D) os formatos de data são padronizados, da mesma forma que em SGBDR. (E) dados binários de qualquer natureza podem ser persistidos, o que um SGBDR não consegue fazer. Questão - IPEA/2024/Infraestrutura O IBGE é responsável no Brasil pela Classificação Nacional de Atividades Econômicas (código CNAE). Considere que um órgão de atuação nacional, que possui infraestrutura de Tecnologia de Informação e Comunicação (TIC) em todos os estados brasileiros, deseja realizar um censo de pequenas e médias empresas em 10 estados do Brasil. Para guardar os dados dessas empresas, foi criado um banco de dados distribuído (BDD) relacional com particionamento horizontal, também conhecido como sharding em muitos SGBDs NoSQL, utilizando como critério de distribuição a UF onde se localiza a sede da empresa, de tal modo que as empresas do Rio de Janeiro têm seus dados guardados na infraestrutura de TIC desse órgão no Rio de Janeiro. Com os dados distribuídos dessa forma, (A) a falha em uma das infraestruturas de TIC pode inviabilizar o uso de todo o banco de dados. (B) as características ACID não podem ser garantidas em uma transação distribuída. (C) as consultas a dados sumarizados podem ser otimizadas por meio da utilização de MapReduce. (D) os metadados do BDD devem ficar localizados apenas na infraestrutura de TIC da sede do órgão. (E) os programas que consultam esses dados precisam saber em que estado eles se encontram. Questão - IPEA/2024/C. de Dados ❑ Nas últimas décadas, a automatização e a inserção de máquinas agrícolas transformaram profundamente o panorama do trabalho nas áreas rurais [...] e, em menos de 50 anos, a produtividade do agronegócio brasileiro aumentou 400%. [...] ❑ Esses resultados vieram com a adoção da tecnologia nos processos cotidianos, e também com o investimento em pesquisas [...]. Agora, o agronegócio pode estar diante de um novo salto de produtividade; big data e machine learning são ferramentas que estão ganhando espaço e que podem, novamente, transformar o cenário do campo. ❑ Disponível em: https://summitagro.estadao.com.br/tendencias-e-- tecnologia/como-big-data- e- machine-learning-sao-aplicados-no--agronegocio/. Acesso em: 5 jan. 2024. Adaptado. ❑ A utilização da plataforma paralela de processamento MapReduce aplica-se adequadamente como um framework de processamento de Big Data, visando à escalabilidade para as aplicações. Questão - IPEA/2024/C. de Dados Nesse contexto, uma característica inerente à MapReduce é a (A) sua abordagem, que reflete uma solução simplificada de processamento de dados paralelos em um cluster. (B) sua função map(), que gera, para cada registro de entrada, um ou mais pares (chave,valor). (C) sua função reduce(), que gera um resultado combinado em valores que compartilham chaves distintas. (D) sua demanda pela existência de um esquema de dados. (E) natureza estática de suas funções, que devem respeitar a especificação original, caracterizando uma restrição inerente a essa abordagem. Questão - IPEA/2024/C. de Dados ❑ Para melhorar o processamento de grandes volumes de dados através de computação paralela ou distribuída, pode-se utilizar sharding, técnica que divide os dados em partes menores, chamadas shards. Essas partes são normalmente armazenadas em diferentes nós, ou sítios, de processamento em um sistema distribuído. ❑ O sharding é necessário para garantir a ❑ (A) privacidade dos dados ❑ (B) eficiência do processamento de dados ❑ (C) disponibilidade dos dados em caso de falha de um nó ❑ (D) escalabilidade do sistema de processamento de dados ❑ (E) consistência dos dados em caso de alteração de um shard Questão - IPEA/2024/C. de Dados ❑ Existem várias abordagens para a ingestão de dados, sendo cada uma delas adequada para determinado tipo de necessidade e de cenário. ❑ No caso da ingestão de dados em tempo real, streaming, os dados são ❑ (A) coletados e processados em intervalos regulares, por exemplo, diariamente ou semanalmente. ❑ (B) capturados e processados continuamente à medida que são gerados. ❑ (C) processados em pequenos lotes, com o processamento ocorrendo em intervalos curtos, mas não instantâneos. ❑ (D) processados apenas após um evento específico ser acionado, como, por exemplo, uma transação em banco de dados ou um clique de usuário. ❑ (E) armazenados em um data lake ou data warehouse, antes de qualquer forma de processamento ou de análise. Questão. ❑ O Ecossistema Spark tem componentes que oferecem funcionalidades específicas que o tornam uma ferramenta versátil e eficiente para o processamento de grandes volumes de dados, a análise em tempo real, o aprendizado de máquina e muito mais. Essa integração e flexibilidade são algumas das razões pelas quais o Spark se tornou uma ferramenta amplamente utilizada em aplicações de Big Data. Os componentes da Plataforma Spark pertencem a dois grupos principais: os componentes básicos e os componentes especializados, que provêm funcionalidades mais avançadas. Dentre os componentes básicos, podemos destacar o Spark Core, também conhecido como “coração” do Ecossistema, e que é responsável pelas tarefas consideradas essenciais. O componente Spark Core Questão. ❑ (A) é um módulo que atua como sistema de gerenciamento de banco de dados relacional para processamento de dados estruturados e distribuídos em um contexto Big Data. ❑ (B) é uma biblioteca para processamento de gráficos e análises de dados distribuídos, sem esquema e não estruturados, características principais em um ambiente Big Data. ❑ (C) é uma ferramenta responsável pelo tratamento e análise de streams de dados em tempo real, específica de grandes volumes, com velocidade e variedade, características típicas em sistemas de Big Data. ❑ (D) corresponde ao módulo que contempla funcionalidades de computação distribuída, incluindo agendamento de tarefas e gerenciamento de memória, para aplicações Big Data. ❑ (E) diz respeito ao principal add-on da plataforma que, por ser um framework orientado a objetos, tem esse hot-spot para melhorar a eficiência do armazenamento de dados distribuídos de aplicações Big Data em clusters. OBRIGADO