Os dados colunar em NoSQL

lojas de coluna na NoSQL são semelhantes à primeira aparição de SGBD relacionais tradicionais. Os conceitos de linhas e colunas ainda estão lá. Você também definir famílias de coluna antes de carregar dados no banco de dados, o que significa que a estrutura dos dados deve ser conhecido com antecedência.

No entanto, as lojas de colunas organizar os dados de forma diferente de bancos de dados relacionais fazer. Em vez de armazenar dados em uma linha para acesso rápido, os dados são organizados para operações de coluna rápidas. Esta coluna # vista 8208-centric faz lojas coluna ideais para a execução de funções de agregação ou para procurar registros que correspondem a várias colunas.

As funções de agregação são combinações de dados ou funções de análise. Eles podem ser tão simples como contar o número de resultados, soma-los, ou calcular sua média média. Eles podem ser mais complexo, embora - por exemplo, retornando um valor complexo que descreve uma gama abrangente de tempo.

lojas de coluna também são por vezes referido como grandes mesas ou clones grande mesa, refletindo seu ancestral comum, Bigtable do Google.

Talvez a principal diferença entre as lojas de coluna e um RDBMS tradicional é que, em uma loja de coluna, cada registro (pense linha em um RDBMS) não requer um valor único por coluna. Em vez disso, é possível modelar famílias de colunas. Um único registro pode consistir em um campo ID, uma família de coluna para # 147 para o cliente # 148- informações, e outra família coluna para # 147-ordem dos itens # 148- informações.

Cada uma destas famílias de colunas consiste em vários campos. Uma destas famílias de coluna pode ter múltiplos # 147 linhas # 148- em seu próprio direito. informações item da ordem, por exemplo, tem várias linhas - uma para cada item de linha. Estas linhas irá conter dados como ID do item, quantidade e preço unitário.

Um dos principais benefícios de uma loja de coluna sobre um RDBMS é que as lojas de coluna não exigem campos para estar sempre presente e não requerem um valor de preenchimento nulo em branco como um RDBMS faz. Este recurso evita que o problema de dados esparsos, preservando espaço em disco. Um exemplo de um conjunto de dados variáveis ​​e esparso é mostrado aqui.

image0.jpg

A grande coisa sobre lojas coluna é que você pode recuperar todas as informações relacionadas com um único ID de registro, em vez de usar o complexo Structured Query Language (SQL) juntar-se como em um RDBMS. Fazer isso requer um pouco de análise de modelagem e os dados iniciais, apesar de tudo.

No exemplo mostrado, você pode recuperar todas as informações a fim de selecionar uma única linha loja de coluna, o que significa que o desenvolvedor não precisa estar ciente do complexo exata juntar-se a sintaxe de uma consulta em uma loja de coluna, ao contrário eles teriam que ser usando SQL complexa junta em um RDBMS.

Assim, para estruturas de dados relacional complexa e variável, uma loja de coluna pode ser mais eficiente no armazenamento e menos propenso a erros em desenvolvimento do que os seus antepassados ​​RDBMS.

Note-se que, no item família de colunas, ID de cada item é representado na chave, eo valor é a quantidade encomendada. Esta configuração permite a pesquisa rápida de todas as ordens que contêm este ID item.

Se você conhece os campos de dados envolvidas na frente e precisa recuperar rapidamente os dados relacionados juntos como um único registro, então considerar uma loja de coluna.

menu