8791 sujets

Développement web côté serveur, CMS

Bonjour à tous!

Question de débutant : Est-ce que dans une base MySQL, des champs vides peuvent impacter négativement les performances ?

Je vous explique plus amplement mon problème :
Sur mon site j'ai un flux d'actualités. Celui-ci affiche plusieurs types d'informations, informations que j'ai regroupé en 2 grands types : celles créées par les membres, et celles provenant de différents flux RSS de sites partenaires.
Seulement, la nature des infos fournies par ces 2 groupes est différente.
Dans le 1er, j'enregistre par exemple toujours l'id du membre à l'origine du contenu.
Dans le 2nd, c'est plutôt les infos propres aux flux RSS : url, titre, texte...

Alors je me demandais, sachant que le but de toutes ces infos étaient d'être TOUJOURS affiché dans UN SEUL flux, est-ce qu'il valait mieux tout mettre dans la même table et avoir beaucoup de champs vides mais ainsi ne faire qu'une seul requête ?
Ou est-ce qu'il valait mieux faire 2 tables, et faire une jointure à chaque requête ?

Merci d'avance pour vos réponses.
hum ma foi la différence se verra plus en terme d'espace disque de ta base de données qu'en terme de performances.

Pour le SGBDR que le champ soit vide ou non c'est quasi pareil.

La solution d'une table unique permet de gagner le temps d’exécution de la requête ( fait des tests tu verras que pour une requête simple d'union ( pourquoi une jointure ? ) c'est négligeable ... ) mais occupera plus de place ...

Par contre pourquoi ne pas générer à la volée ton flux rss ? Je ne vois pas trop l'intérêt de stocker le flux rss en BDD ...
Tous les plugins pour le cms que j'utilise font de la sorte : requête sur le contenu du cms puis mise en forme et pareil pour les flux externes .. aucun n'utilise de tables spécifiques ...