Reduzindo o tempo de Valor em NoSQL

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 na 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.

Key # 8208 de valor lojas são os mais simples bancos de dados NoSQL com relação ao modelo de dados. Assim, você pode criar rapidamente aplicações, especialmente se você aplicar alguns princípios-chave, incluindo a revisão como você gerenciar estruturas de dados.

Usando estruturas simples

armazenamentos de chaves # 8208 de valor 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 transferência do seu aplicativo. Por exemplo, se você está armazenando os blocos de mapas, armazená-los em formato hexadecimal, para que possam ser processado imediatamente em um navegador.

Em seu aplicativo, a loja fácil # 8208-to estruturas 8208 de uso # que não exigem contagens de tempo de processamento. Estas estruturas podem ser simples tipos intrínsecos como inteiros, strings e datas, ou estruturas mais sofisticadas, como listas, classificado conjuntos, ou mesmo documentos JSON armazenados como uma cadeia.

Porque ele pode ser interpretado diretamente por uma aplicação web javascript, usar JSON para o status de aplicativo web simples ou preferência de armazenamento. Se você está armazenando dados de log, guarde-o 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 # fixo arquivo de dados de 8208 de largura, 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 uma chave # loja 8208 de valor, e você deve atualizar todo o código do seu aplicativo! Este não é o caso com um documento JSON, onde o código mais velhos simplesmente ignora novas propriedades.

manipulação de estrutura complexa

Se você tem complexos conjuntos de dados interligados, dar o pensamento cuidadoso para as estruturas de dados em seu armazenamento de chaves # 8208-valor. armazenar dados define de uma forma que permite a recuperação fácil. Em vez de armazenar oito itens em separado que vai exigir oito lê, desnormalizar os dados - gravar os dados para o mesmo registro em tempo de ingestão - para que apenas uma leitura é necessário mais tarde.

Isso significa que alguns dados serão armazenados várias vezes. Um exemplo é armazenar o 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. A Fowler - prevenção de 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 a taxa de transferência 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 crescentes exigências de aplicações modernas, é muito melhor do que sacrificar armazenamento para a velocidade na leitura de dados. Então, considere desnormalização como um amigo.

menu