osvald.jr Postado Março 8, 2010 Denunciar Share Postado Março 8, 2010 Caros,Estamos trabalhando em um sistema de envio de mensagens, a cobrança será feita por mensagem enviada e prevemos um volume de 5k mensagens/dia.Gostaria da opinião de vocês sobre o que é melhor com relação ao desempenho:1. Ter uma tabela de mensagens e quando o usuário solicitar o saldo atual, efetuar uma contagem nesta tabelaou2. A cada inserção nesta tabela, efetuar um update em uma outra tabela incrementando a quantidade enviada? []`s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Março 9, 2010 Denunciar Share Postado Março 9, 2010 Bom dia Osvald, Prefiro a 1ª opção. Motivo: - 1ª opção: - a instrução "select count(chave) from tabela" é muito rápida (milisegundos). Mesmo com tabelas com grande volume de dados (trabalho com tabelas com mais de 6 milhões de registros). - A periodicidade da requisição do Saldo Atual não será cotidiana. Mesmo que fosse, não impactará a performance. - Não necessitará de nenhum controle para identificar a quantidade de mensagens. - 2ª opção: - terá que criar uma tabela apenas para armazenar o valor total. - terá que realizar uma implementação para ficar incrementando o contador. As manipulações entre as duas tabelas terão que ser realizadas dentro de uma única transação. - Custo/benefício de implementação não viável. Terá que se preocupar com implementação onde o Sql já possui a funcionalidade (mesma coisa de criar uma função de contagem de caracter, ao invés de utilizar a função do Sql). Volume de Dados. Dica: A tabela onde conterá as mensagens terá 5k mensagens/dia. Faça um teste no sistema: - Inserção de quantidade significativa de dados na tabela. - Potencial de processamento por parte do servidor. Principais: Quantidade total de dados necessários na tabela de mensagens. - Data para expurgo dos dados. Será necessário realmente TODAS as informações na tabela principal? Já pense no expurgo dos dados. Mesmo com os dados expurgados (quer dizer, em outra tabela), pode-se ter acesso aos mesmos. Espero ter ajudado. :.) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
osvald.jr
Caros,
Estamos trabalhando em um sistema de envio de mensagens, a cobrança será feita por mensagem enviada e prevemos um volume de 5k mensagens/dia.
Gostaria da opinião de vocês sobre o que é melhor com relação ao desempenho:
1. Ter uma tabela de mensagens e quando o usuário solicitar o saldo atual, efetuar uma contagem nesta tabela
ou
2. A cada inserção nesta tabela, efetuar um update em uma outra tabela incrementando a quantidade enviada?
[]`s
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.