Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mysql:É prático criar uma tabela separada para as postagens de cada usuário


Você deve adicionar ids de usuário a lojas/postagens. Existem vários motivos pelos quais você não deseja ter tabelas separadas para cada usuário:
  • O MySQL foi projetado para lidar com tabelas com muitas linhas, não com muitas tabelas com a mesma estrutura.
  • A estruturação de consultas entre tabelas exigirá a combinação de muitas tabelas diferentes.
  • Uma pequena alteração na estrutura de dados, como adicionar uma nova coluna, torna-se um pesadelo.
  • As referências estrangeiras às lojas tornam-se impossíveis.
  • Se os dados de um usuário não preencherem uma única página de dados, você acaba desperdiçando muito de memória.

Existem alguns motivos pelos quais a divisão de dados em tabelas separadas pode ser necessária. Aqui estão alguns motivos possíveis:
  • O acesso é mais facilmente gerenciado no nível da tabela do que no nível da linha.
  • A replicação dos dados para cada usuário pode ter requisitos diferentes.
  • Uma entidade externa exige que os dados estejam em tabelas ou bancos de dados separados.

No entanto, o primeiro conjunto de razões parece pesar muito mais para estruturas de tabela/entidade únicas. Essas preocupações mais avançadas não parecem ser um problema.