Quelle conception pensez-vous qui s'exécute plus rapidement sur PostgreSQL?Dans PostgreSQL, est-il plus rapide d'inclure des colonnes TEXT dans la même table plutôt qu'une table séparée?
Faire une table de colonne 15 de varchars et similaires, mais de mettre toutes les colonnes de texte dans une table séparée avec un lien FKEY retour à cette table. Imaginons que vous souhaitiez rechercher l'enregistrement avec l'ID "4", puis que vous récupériez toutes les lignes, y compris les données des colonnes TEXT de la table jointe. Et imaginons que les tables ont 500 000 lignes.
Faire une table de 15 colonnes de varchars et similaires, et d'inclure vos colonnes TEXT dans la même table. Encore une fois, imaginez la même chose que ci-dessus - saisissez l'ID d'enregistrement 4 et tirez l'enregistrement complet, et il y a 500 000 lignes dans la table.
Je veux dire, dans la plupart des bases de données, la façon dont je le comprends, quand vous descendez à la couche physique de la façon dont ces colonnes TEXT fonctionnent, ils gardent un petit ID réellement dans la colonne de table sur chaque ligne, et cette identification va à un bloc de page séparé et exclusif (ou autre nomenclature) dans la base de données. Donc, pour moi, il semblerait que l'option B s'exécuterait plus vite car il n'y a pas besoin de la surcharge de la jointure fkey, et parce que les colonnes TEXT n'occupent pas plus qu'un espace entier dans cette colonne dans cette table donnée - et cet entier est une clé dans la base de données à un bloc de page ailleurs.
+1 pour déterrer la phrase exacte que je vais faire quand je lis la question! – some