Bonjour,
Je travaille actuellement sur un site web. Les contenus y sont divers, mais peu "variés". J'ai donc au départ décidé de partir sur une table unique, avec cette structure :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 CREATE TABLE `contents` ( `id_content` int(11) NOT NULL AUTO_INCREMENT, `name_content` text NOT NULL, `desc_content` text NOT NULL, `content_content` text NOT NULL, `pictype_content` varchar(15) NOT NULL, `type_content` varchar(50) NOT NULL, `theme_content` varchar(30) NOT NULL, `alaune_content` varchar(3) NOT NULL DEFAULT 'non', `favlvl_content` int(11) NOT NULL DEFAULT '0', `posttime_content` int(11) NOT NULL, `updatetime_content` int(11) NOT NULL DEFAULT '0', `answers_content` int(11) NOT NULL DEFAULT '0', `author_content` int(11) NOT NULL, PRIMARY KEY (`id_content`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;
Comme vous pouvez le constater, elle n'a pas bcp de colonnes. Enfin pas bcp comparé à d'autres tables gargantuesques qu'on peut parfois trouver.
Sa structure me permet de gérer des contenus de tout types : billets de blog, sujet de forum, tribunes libres, articles d'enseignement, actualités, etc, tous ces contenus partageant entre eux les mêmes caractéristiques.
Mes craintes se portent sur la taille finale de la table avec des milliers de contenus ajoutés. J'ai lu quelques articles sur la différence de perfs entre petites tables avec jointures et grandes tables. Mais le terme "grande" est à chaque fois utilisé pour désigner le nombre de colonnes, et non la "grosseur", le poids de a table, et évidemment, les petites tables sont à préférer les jointures ne consommant que peu de ressource.
Je bosse avec mysql. Je m'ouvre a vos avis parce que je voulais scinder cette table, mais je constate que si je donne à chaque type de contenu sa table, leurs attributs sont fatalement redondants, et à plus de 95%, chaque contenu ayant effectivement un theme, un auteur, une date de création de màj, etc.
A long terme, avec plusieurs centaines, voire milliers de contenus ajoutés, cette table unique risque t'elle de me poser des problèmes ? Fragmentation ? Erreurs ?
Merci d 'avance pour votre participation constructive
Partager