|
Acadêmico(a): João Paulo Poffo |
Título: Nova Organização para Estrutura de Dados em Bancos Relacionais: Estudo de Caso |
|
Introdução: |
Para um usuário é irrelevante como um programa de computador trata suas informações internamente, o mais importante é o seu resultado visível. Pois, caso o consumo de memória, processador ou espaço em disco forem altos, existem a cada dia novas tecnologias, mais rápidas, poderosas, e com preços mais baixos. Entretanto, há também a necessidade de manipular mais informação em menos tempo. Neste contexto, a evolução do hardware, apesar de contundente, sozinha, é insuficiente para preencher completamente esta lacuna. De tempos em tempos têm-se a necessidade de rever antigos conceitos e analisar se são realmente as melhores alternativas para resolver os problemas de hoje.
Existem várias formas de organizar as estruturas de bancos de dados relacionais. Desde as mais primitivas como arquivos binários, até as mais complexas baseadas em blocos de dados. Dentre todas as estruturas existentes identifica-se um padrão: os dados de um registro estão sempre juntos. Diante do exposto, propõe-se a quebra deste paradigma identificando alguns focos para possíveis ganhos em utilização de espaço de armazenamento e velocidade na obtenção da informação. Para atingir tal meta foi desenvolvida uma arquitetura onde cada coluna de cada tabela estará sempre ordenada. Esta organização visa inibir a criação de índices, evitando redundância de dados e tornando toda informação passível de ser localizada com eficiência. Afinal, não se sabe que informação é realmente importante até o momento em que ela se faz necessária.
É necessário testar se a arquitetura proposta pode realmente trazer tais benefícios. Este teste pode ser efetuado através da realização de uma prova de conceito onde são estabelecidas métricas para comparação com outras arquiteturas existentes. Porém, para possibilitar esta comparação, é necessário que esta nova arquitetura esteja implementada. O desenvolvimento de um Sistema Gerenciador de Banco de Dados (SGBD) compreende muitos problemas como controle de acesso, interfaces de comunicação com o usuário, integridade referencial, entre outros. O SGBD MySQL ajuda a resolver este problema, pois disponibiliza um mecanismo que permite restringir o desenvolvimento somente à nova organização proposta. Este mecanismo é chamado de tipos de tabela. Os tipos de tabela permitem definir estruturas de dados diferentes para cada tabela criada na base de dados mantendo a possibilidade de relacionamento. Cada tipo de tabela é mantida por um storage engine o qual funciona como uma camada de persistência que é ligada às camadas de controle do banco de dados. A partir deste ponto a implementação do trabalho será referenciada como Tipo de Tabela.
|
|
|