Projetando Chaves Exclusivas (Chaves Primárias) para um banco de dados NoSQL altamente desnormalizado
Estou trabalhando em um aplicativo da web relacionado a fóruns de discussão usando o banco de dados Java e Cassandra.
Preciso construir 'chaves' para as linhas que armazenam os detalhes do usuário e outro conjunto de linhas que armazena o conteúdo postado pelo usuário.
Uma opção é obter o UUID gerado aleatoriamente fornecido pela linguagem Java, mas estes têm 16 bytes de comprimento. e como o banco de dados NoSQL envolve desnormalização pesada, estou preocupado se estaria desperdiçando muito espaço em disco, RAM e outros recursos se a chave pudesse ser gerada em tamanhos menores.
Preciso gerar dois tipos de chaves, uma para os usuários e outra para o conteúdo publicado por usuários.
Para o Conteúdo postado pelos usuários, seriatimestamp+userId
seja uma boa chave. Ondetimestamp
é a hora do servidor em que o conteúdo foi postado euserId
refere-se à chave da linha do usuário.
Todas as sugestões, comentários apreciados ..
Obrigado Marcos