Reduzindo o tempo de valor em nosql
Video: MongoDB (Aula 1) Diferenças entre SQL e MongoDB Parte 1
Conteúdo
Hora de valor é a quantidade de tempo necessário de iniciar um projeto de TI para ser capaz de perceber o benefício do negócio. Isso pode ser benefícios tangíveis em redução de custos ou a capacidade de realizar novos negócios, ou benefícios intangíveis como proporcionando um melhor serviço ao cliente ou produtos.
lojas de valor-chave são as mais simples bases de dados NoSQL com relação ao modelo de dados. Assim, você pode rapidamente construir aplicações, especialmente se você aplicar alguns princípios-chave, incluindo a revisão como você gerenciar estruturas de dados.
Usando estruturas simples
lojas de valor-chave são mais flexíveis do que os bancos de dados relacionais em termos de formato de dados. Use essa flexibilidade para a sua vantagem para maximizar a taxa de rendimento da sua aplicação. Por exemplo, se você está armazenando mosaicos de mapas, armazená-los em formato hexadecimal, para que possam ser processado imediatamente em um navegador.
Em seu aplicativo, armazenar estruturas de fácil utilização que não requerem dezenas de tempo de processamento. Estas estruturas podem ser simples tipos intrínsecos como números inteiros, strings e datas, ou estruturas mais sofisticadas, como listas, classificado conjuntos, ou mesmo documentos JSON armazenados como uma string.
Porque pode ser interpretado diretamente por uma aplicação web javascript, use JSON para o status de aplicativo web simples ou preferência de armazenamento. Se você está armazenando dados de registro, armazená-lo no formato mais apropriado para recuperação e análise.
Use a estrutura mais adequada para a sua aplicação, não o administrador do banco de dados. Considere também os efeitos do tempo sobre seu banco de dados. você vai querer modificar estruturas de dados no futuro para suportar novos recursos?
estruturas de dados mudam com o tempo. Um documento JSON flexível é melhor do que um arquivo de dados CSV ou de largura fixa arquivo de dados porque as estruturas JSON pode facilmente variar ao longo do tempo sem a necessidade de considerar as propriedades novas ou excluídos. Alterar uma coluna em um arquivo CSV armazenado em um armazenamento de chave-valor, e você deve atualizar todo o código do seu aplicativo! Este não é o caso com um documento JSON, onde código antigo simplesmente ignora novas propriedades.
manuseamento estrutura complexa
Se você tem complexos conjuntos de dados interligados, dar o pensamento cuidadoso para as estruturas de dados em sua loja de valor-chave. armazenar dados define de uma forma que permite a recuperação fácil. Em vez de armazenar oito itens separadamente, que exigirá oito lê, desnormalizar os dados - escrever os dados para o mesmo registro em tempo de ingestão - de modo que apenas uma leitura é necessário mais tarde.
Isso significa que alguns dados serão armazenados várias vezes. Um exemplo é armazenar nome do cliente em um documento ordem. Embora este armazena o nome do cliente através de muitas ordens, isso significa que quando mostrando um resumo da ordem que você não tem que descobrir que o valor customer_number = 12 significa Sr. Um Fowler - evitar uma solicitação de leitura adicional.
Desnormalização consome mais espaço em disco do que os bancos de dados relacionais forma normal, mas aumenta muito o rendimento da consulta. É o equivalente NoSQL de uma visão materializada em um banco de dados relacional. Você está sacrificando espaço de armazenamento para a velocidade - o clássico tradeoff ciência da computação.
Para os cientistas da computação de uma certa geração, é considerado heresia para manter várias cópias dos mesmos dados. É simplesmente ineficiente. professores de banco de dados relacionais iria comê-lo no café da manhã!
No entanto, com o actual baixo custo de armazenamento e as demandas crescentes de aplicações modernas, é muito melhor do que sacrificar o armazenamento de velocidade na leitura de dados. Então, considere desnormalização como um amigo.