Criei este aplicativo da web (php e mysql) que armazena informações para várias organizações (atualmente cerca de 20 clientes).
O cenário atual armazena informações relacionadas ao cliente em bancos de dados individuais, para que haja 20 bancos de dados do cliente e 1 banco de dados mestre.
Uma das principais vantagens aqui é que, à medida que cada banco de dados do cliente é isolado, a numeração dos artefatos do cliente (relatórios, auditorias) etc. é sequenciada; dando aos nossos clientes uma sensação de segurança.
Cada banco de dados possui aproximadamente 15 tabelas, e o maior número de linhas em uma tabela é de cerca de 2000. Espera-se que ele atinja 5.000 registros, no máximo.
Gerenciar uma única alteração no nível de banco de dados significa alterar 20 bancos de dados, mas no raro evento em que preciso fazer essa alteração, uso um script que faz isso em uma única chamada de função.
Estamos em um acordo de hospedagem compartilhada, e nosso ISP nos fornece um número limitado. de bancos de dados; e foi isso que me levou a pensar em termos de centralização do banco de dados; para que TODOS os dados do cliente possam ser armazenados no banco de dados mestre.
Obviamente, algumas questões importantes que surgem são:
uma. Mantendo a sequência do artefato (isso pode ser solucionado através da criação de uma chave de referência adicional) b. Velocidade e desempenho (nesse caso, posso criar índices para acelerar as coisas) c. Segurança: isso será gerenciado a cada consulta que buscar informações do cliente. também acompanhará o client_id
No futuro, poderemos considerar a comparação de conjuntos de dados de uma organização com outra, mas acredito que isso também pode ser alcançado em um banco de dados centralizado. Estou um pouco inclinado (por razões de desempenho e capacidade de manutenção) a mudar para um banco de dados centralizado.
Você acha que mudar para um banco de dados centralizado faz mais sentido do que permanecer como estamos (em bancos de dados individuais)?
Obrigada pelo Conselho.