Questa domanda riguarda esclusivamente le prestazioni e sarei grato se le risposte siano specifiche per il caso che fornisco.Quale è più efficiente: una tabella singola lunga o una tabella distribuita? e perché?
Qual è il livello di prestazione più appropriato?
- creazione di una tabella con troppi campi
- creando più di una tabella e distribuzione di campi simili a loro
CASE: un vasto Web CMS Modulo
Modello 1: Lungo ma un tavolo
cms
-----------------------------------------------
Id
Title
Description
Images
Order
Status
Publish
meta_keywords
meta_description
meta_author
Cleary, la maggior parte dei CMS Open Source come joomla usano il modello sopra. Ma penso che quel modello sia lo che uccide lo spirito di RDBMS. Possiamo facilmente separare il contenuto, la configurazione e il meta di un particolare articolo in tabelle diverse. Come il seguente
Motivo 2: Molti, ma correlati Tabella
Cms_content cms_meta cms_configuration
---------------------------------------------------------------------------
Id id id
Title content_id content_id
Description keywords status
Content description order
Images author publish
Nota: Le relazioni in questo caso è uno-a-uno
Quale è il modello corretto da seguire? Perché scegliere un tavolo lungo ma uno, o perché non scegliere tabelle distribuite, sul tavolo singolo?
"Corretto" dipende sempre dalle finalità e dai casi di utilizzo. Non c'è un proiettile d'argento – zerkms
@zerkms, d'accordo è per questo che ho fornito anche un caso :) – Starx
Oh, intendevi che è un "caso". Ok. Qualche ragione per dividere l'entità ** single ** nelle parti? I campi appartengono alla stessa entità, questo schema fa il suo lavoro. Quindi non toccare la cosa che funziona ;-) – zerkms