Em uma organização composta por várias unidades de negócio g...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: E - errado
A questão em discussão aborda o conceito de fragmentação em sistemas de bancos de dados distribuídos, que é uma técnica utilizada para melhorar o desempenho e a eficiência de acesso aos dados. A fragmentação é o processo de dividir uma tabela em partes menores, que podem ser distribuídas e gerenciadas de forma independente. Existem dois tipos principais de fragmentação:
- Fragmentação Horizontal: É quando uma tabela é dividida em várias tabelas contendo linhas distintas, mas com a mesma estrutura de colunas. É comumente utilizada quando diferentes usuários ou departamentos estão interessados em diferentes subconjuntos de linhas de uma tabela. Por exemplo, uma filial de uma empresa pode querer acessar apenas os dados dos seus clientes locais, não necessitando dos dados dos clientes de outras filiais.
- Fragmentação Vertical: Ocorre quando uma tabela é dividida em colunas. Cada fragmento contém o mesmo número de linhas, mas com um subconjunto das colunas originais. Isso é útil quando diferentes unidades de uma organização precisam acessar atributos específicos de registros, mas não todos os atributos. Por exemplo, o departamento de vendas pode precisar de informações sobre os produtos e clientes, enquanto o departamento financeiro pode precisar de informações sobre os pagamentos e a contabilidade.
A afirmação da questão sugere que a fragmentação horizontal é recomendada para bases de clientes comuns com atividades heterogêneas, enquanto a fragmentação vertical seria aplicada quando as atividades são semelhantes, mas a base de clientes é particionada. No entanto, essa afirmação está incorreta porque geralmente se utiliza a fragmentação horizontal quando se deseja dividir uma tabela com base em critérios que diferenciam as linhas, como a localização geográfica dos clientes, o que seria adequado para bases de clientes particionadas. Já a fragmentação vertical seria mais apropriada quando diferentes unidades de negócio precisam de acesso a diferentes colunas da mesma base de dados, o que independe da homogeneidade ou heterogeneidade das atividades realizadas.
Portanto, a alternativa está incorreta porque a escolha entre fragmentação horizontal e vertical não depende da homogeneidade das atividades ou do particionamento da base de clientes da maneira descrita na questão, mas sim dos requisitos específicos de acesso e manuseio dos dados pelas unidades de negócio.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Trata-se da matéria de Banco de Dados Distribuidos.
Podemos fragmentar um banco horizontalmente dizendo, por exemplo, que as linhas (tuplas) contendo COD_PROJ=1 deverão ficar no banco X remoto. Este banco X fica na unidade onde o projeto está sendo realizado. Desta forma, fragmentamos o banco colocando suas informações próximas das aplicações que acessam.
A fragmentação vertical é a escolha de alguns atributos da tabela que deverão ficar armazenados fisicamente em outro banco. Por exemplo, da tabela EMPREGADOS, posso deixar o atributo salário somente no banco do RH. Os demais bancos não enxergariam esse atributo.
A fragmentação horizontal é baseada em um WHERE
A fragmentação vertigal é um SELECT.
Diante destas explicações, não há sentido em dizer que "o uso de fragmentação horizontal é recomendado quando há grande heterogeneidade de atividades realizadas em uma base de clientes comum a todas as unidades, enquanto a fragmentação vertical é indicada quando as várias unidades realizam basicamente as mesmas atividades em uma base de clientes particionados entre as unidades."
A heterogeneidade (ou não) das atividades não indicam a necessidade de fragmentação.
Errado. Houve inversão dos conceitos. Segundo Silberschatz em seu livro "Sistemas de Banco de Dados" pag. 522: "A fragmentação horizontal normalmente é usada para manter tuplas nos sites em que sao mais usadas, para minimizar a transferencia de dados."
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo