Horizontal contra gerenciamento de armazenamento de dados verticais

A maioria dos gerentes de banco de dados relacionais foram construídos em um gerenciador de armazenamento horizontal

, o que coloca todos os dados em um banco de dados por linha (ou registro) quando uma transação ocorre. Uma tabela de banco de dados é representado como uma cadeia de páginas de banco de dados que contêm uma ou mais linhas de dados.

Video: Sistemas de Gerenciamento de Banco de Dados - e-Tec IFSP - Semana 2

Um gerente de armazenamento horizontal fornece suporte rápido processamento de transações online (OLTP), porque a maioria das transações ocorrem em um formato de registro - por exemplo, a inserção de uma entrada de contabilidade geral ou um cheque. No entanto, quando um usuário solicita um registro, a página de banco de dados que contém os dados são frequentemente movidos para a memória, o que para aplicações de business intelligence é altamente ineficiente.

Vários produtos de banco de dados especialidade surgiram ao longo dos anos destinados a auxiliar e otimizar aplicações centradas no consulta, como inteligência de negócios. Esses produtos permitem que você desenvolva mais facilmente data warehouses interativos. O objetivo desses bancos de dados de coluna-wise é aumentar a velocidade de consultas de apoio à decisão realizados contra grandes quantidades de dados.

Quando os administradores de banco de dados são solicitados se eles nunca iria colocar um índice em uma coluna que contém o código de uma pessoa área, ponto de classe média de um aluno, ou o total de transações de um cliente, eles respondem com um sonoro “Não!” Eles costumam dar essa resposta inflexível por motivos baseados na tecnologia, tais como:

  • Nós índice apenas com base, caminhos bem conhecidos convencionais (tais como nome) por causa da sobrecarga de índices.

  • o cardinalidade, ou ocorrência única de dados, forçaria o banco de dados para executar uma varredura da tabela de qualquer maneira.

Video: HTML5 - Aula 22 - WebStorage

No entanto, quando você perguntar aos usuários as informações que eles precisam para cumprir suas responsabilidades de trabalho, eles respondem com estes tipos de requisitos:

  • Veja o número de pessoas por código de área no meu território para que eu possa gerir mais eficazmente minhas promoções.

  • Identificar os estudantes de alto nível na classe de graduação para que eu possa organizar as entrevistas apropriadas.



  • Descobrir o que os clientes fazer negócios com a minha empresa e gastar entre US $ 100.000 e US $ 500.000 por ano.

Cada um destes três requisitos caracteriza uma solicitação do usuário diferente, mas todos eles desempenham funções semelhantes: Eles são consultas orientada para o apoio à decisão. A necessidade de acessar dados impulsiona requisitos de informação do usuário, mas padrões de acesso dos usuários não são compatíveis com a maioria das estratégias de indexação RDBMS. Em suma, a tecnologia RDBMS fica no caminho do sucesso dos aplicativos.

Uma tabela de base de dados é representado como uma cadeia de páginas da base de dados que contêm uma ou mais linhas de dados, como ilustrado nesta figura. Um gerente de armazenamento horizontal fornece suporte rápido processamento de transações online (OLTP), porque a maioria das transações ocorrem em um formato de registro.

Estas bases de dados relacionais auxiliar actividade consulta através de índices. Índices são construídos no topo das linhas de simplificar e acelerar a recuperação de dados em caminhos comuns, como mostrado na figura.

soluções de armazenamento de dados, tais como inteligência de negócios, não use muitas dessas técnicas de indexação, porque eles foram criados para auxiliar aplicações OLTP na necessidade frequente encontrar e atualizar linhas individuais em tabelas de banco de dados.

Para suportar adequadamente as consultas dos usuários típicos encontrados em inteligência de negócios, outras técnicas de armazenamento e indexação são obrigatórios. Vendedores tais como Sybase e Vertica construíram gerentes de armazenamento verticais. Em vez de armazenar dados por linha, estes produtos armazenar os dados por colunas - daí o nome gerenciador de armazenamento verticais ou armazenamento direcção de coluna.

Este método de armazenamento resolve eficazmente o problema de consultas de usuários contra grandes conjuntos de dados porque um usuário muitas vezes procura apenas algumas colunas, contra o grande número de colunas gerenciados em uma linha por um gerenciador de armazenamento horizontal. Com os dados armazenados como uma série de alterações de páginas, cada página com que contém dados de coluna, o tempo de processamento da consulta é reduzido por um factor de 500 ou mais para 1.

Além disso, estes produtos suportam outras optimizações que auxiliam na velocidade de processamento da consulta, incluindo compressão de dados, as operações de consulta paralelas, e várias técnicas de indexação por coluna. O desafio na implementação de tais tecnologias envolve padronização. Por isso, muitos departamentos de gerenciamento de dados se recusar a implementar essas tecnologias, porque essas tecnologias requerem trabalho de apoio adicional.


Publicações relacionadas