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

MySQL:JSON incorporado vs tabela


UMA das razões de normalizar um banco de dados é reduzir a redundância (seus "blocos repetíveis")

OUTRO motivo é permitir consultas "para trás". Se você queria saber qual vídeo foi filmado em "15 Pike Place", sua solução JSON falhará (você terá que recorrer à leitura sequencial, decodificando JSON que anula o propósito de um RDBMS)

Boas regras de ouro:
  • Dados estruturados - coloque em tabelas e colunas
  • Dados que podem fazer parte das condições de consulta - coloque em tabelas e colunas
  • Dados não estruturados que você sabe que nunca consultará - coloque em campos BLOBs, XML ou JSON

Em caso de dúvida, use tabelas e colunas . Você pode ter que gastar algum tempo extra inicialmente, mas você nunca vai se arrepender. As pessoas se arrependeram de sua escolha por campos JSON (ou XML, para esse assunto) repetidamente. Eu mencionei "de novo"?