Dans MySQL, quelle est la différence entre le stockage de données dans plusieurs colonnes et le stockage de données dans des colonnes JSON
P粉393030917
2023-07-24 16:17:05
<p>Supposons que j'ai une table appelée T1. Initialement, il a ID, Identifier, C1, C2 comme colonnes. Au fil du temps j'ajouterai de nouvelles colonnes C3, C4, etc. Serait-il préférable d'avoir ces colonnes comme ID, Identifiant, Info ? Où Info est une colonne JSON contenant C1, C2, C3 comme clés et leurs valeurs correspondantes. Compte tenu de la taille d’environ 10 ^ 9 enregistrements, quelles seront les performances des lectures, des écritures et des mises à jour ? </p>
Si vous envisagez d'utiliser une base de données relationnelle, vous devez utiliser le modèle relationnel. Bien que de nombreux systèmes de gestion de bases de données relationnelles puissent désormais gérer JSON, cela ne signifie pas que vous devez enregistrer vos données au format JSON (par défaut).
Un bon exemple d'utilisation de JSON est si vos données sources sont fournies au format JSON. Vous pouvez le charger tel quel dans une base de données relationnelle, puis utiliser SQL pour le « décompresser » du format JSON de la table intermédiaire vers le format relationnel approprié.
En ce qui concerne les performances, il y a trop de variables impliquées pour fournir une réponse utile. La seule façon d’obtenir des réponses utiles est de tester dans votre environnement avec vos données et requêtes qui vous concernent.