Jump to content


Photo

Banco De Dados


  • Faça o login para participar
2 replies to this topic

#1 chacal009

chacal009

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Masculino

Posted 17/05/2010, 14:45

Salve, Salve!

Estou com uma dúvida e gostaria de esclarecê-la:
Um site de grande movimentação, como o americanas.com por exemplo, que é um e-commerce, que gera uma transação entre sistema x banco de dados enorme, pegando este exemplo e imaginando um fluxo enorme de dados(Consultas, Modificações) nos registros do banco de dados, este sendo SQL Server; seria melhor por exemplo eu ao invés de criar um único banco com tabelas (gerais, produtos, clientes, pedidos) e sim criar um banco gerais, outro banco produtos, outro clientes, outro pedidos fazendo desta forma uma divisão de um banco de dados para outros bancos de dados.

Isso traria algum benefício em termos de performance do e-commerce? diminuaria a sobrecarga do banco de dados ew até do servidor? ou continuaria na mesma, ou até mesmo pioraria. Vamos pensar em um sistema com fluxo grande de transações diárias; pensemos também em termos de manutenção futura do banco de dados, dividindo-se dessa forma facilitaria a manutenção também?

Uma dúvida também, quando faço uma requisição por exemplo de um registro na tabela A; o servidor carregaria todo o banco de dados, procuraria pela tabela A dentre as outras tabelas, e depois iria para a tabela A e procuraria pelo registro, ou ele apenas e simplesmente vai direto para a tabela A sem ter essa sobrecarga?

Outra questão, seria melhor colocar o Banco de dados em um servidor e o sistema em outros, ou seja, um servidor apenas para o banco de dados, e um outro apenas para o sistema e demais aplicações?

Sou leigo nesse assunto, gostaria dessa ajuda de vocês.
Obrigado, desde já agradeço.

Flows!
the CHACAL

"Quando me chamam de AMADOR, lembro que os amadores construíram a Arca, e os PROFISSIONAIS o Titanic"

#2 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 15/06/2010, 10:30

Os bancos de dados separados só fariam sentido se você tiver discos também separados, discos físicos.
Existem várias formas de otimizar um ambiente de alta disponibilidade, muitas vezes 1 servidor apenas não consegue dar conta do recado.
Se num ambiente onde 80% dos processos são consultas, você pode preparar alguns servidores, fazendo um balanceamento de carga para melhorar a resposta, deixando outro servidor apenas para os cadastros. Uma coisa que você mencionou, sobre a manutenção, a separação dos dados, neste caso, será muito bem otimizada, principalmente para as tarefas de manutenção. Servidores dedicados são sempre melhor opção a servidores compartilhados.

Cada ambiente deve receber uma atenção individualizada, óbvio que cenários são bem vindos, mas sempre haverão particularidades.

Edição feita por: Prog, 15/06/2010, 10:33.

------
Mero mortal!

#3 edero

edero

    Turista

  • Usuários
  • 53 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte
  • Interesses:PHP, DOT.NET, FLEX, SQL-SERVER, TDD, Agilidade, RAILS

Posted 19/07/2010, 10:43

Evite separar as bases de dados para isto é interessante o particionamento (De forma grosseira é organizar os dados em espaços físicos diferentes (Fliegroups).) ou replicação (De forma grosseira distribuir os dados em várias base de dados.). Para uma base de dados somente de consulta pode utilizar o SNAPSHOT (Foto instantanea).
Maiores informações sobre particionamento: http://technet.micro...y/dd569876.aspx
Maiores informações sobre replicação: http://technet.micro...r/bb331775.aspx
Maiores informações sobre SNAPSHOT: http://msdn.microsof...y/ms175158.aspx


Os bancos de dados separados só fariam sentido se você tiver discos também separados, discos físicos.
Existem várias formas de otimizar um ambiente de alta disponibilidade, muitas vezes 1 servidor apenas não consegue dar conta do recado.
Se num ambiente onde 80% dos processos são consultas, você pode preparar alguns servidores, fazendo um balanceamento de carga para melhorar a resposta, deixando outro servidor apenas para os cadastros. Uma coisa que você mencionou, sobre a manutenção, a separação dos dados, neste caso, será muito bem otimizada, principalmente para as tarefas de manutenção. Servidores dedicados são sempre melhor opção a servidores compartilhados.

Cada ambiente deve receber uma atenção individualizada, óbvio que cenários são bem vindos, mas sempre haverão particularidades.






1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq