Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768

    Consiglio: più tabelle, più record o più db?

    Ciao a tutti,

    sono alla ricerca di qualcuno che sappia consigliarmi in termini prestazionali quale sia la soluzione più efficiente e più corretta per il mio problema.

    Nel dominio principale sfrutto un Db con circa 30 tabelle.

    Nei sottodomini mi occorrono 5 tabelle che ho già (devo usare le stesse per condividere i dati in tutti i domini e per permettere aggiornamenti, modifiche e cancellazioni che siano operative istantaneamente in ogni sottodominio e dominio principale) mentre devo modificare i record delle altre 25 tabelle....

    Qual'è la cosa più giusta da fare tra queste proposte (eventualmente segnalatemela voi):

    1) aggiungo un campo nelle 25 tabelle (che devo modificare) che identifichi a quale sottodominio il record fa riferimento.
    Problema: alcune tabelle potrebbero avere milioni di record pregiudicando la velocità di tutti i sottodomini.

    2) ricreare, per ogni sottodominio, le 25 tabelle;
    Problema: potrei avere nel mio db centinaia di tabelle...

    3) creare, per ogni sottodominio, un nuovo db contenente le 25 tabelle e connettere il sito al db principale (in modo da avere sempre le 5 tabelle fisse) e al db creato per quel sottodominio.
    Problema: non so se si può fare...

    Ci sono dei modi empirici per verificare quale sia la soluzione migliore?
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  2. #2
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    nessun consiglio
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  3. #3
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    Up
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  4. #4
    Originariamente inviato da gasmor
    Up
    letto e riletto ma non si capisce bene.

    25 tabelle comuni + 5 tabelle per ogni sottodominio.

    Se le 25 tabelle sono comuni perche' dovresti associare un record qui e l'altro la?
    oppure le tabelle comuni sono 5? ma allora il record da associare e' un attributo del sottodominio?

    boh! non e' chiaro.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    allora cerco di spiegarmi meglio.

    Ho un sito che deve essere multilingua.

    nel dominio centrale c'è il sito fisicamente che per funzionare necessita di 30 tabelle.
    Tra queste tabelle ce ne sono 5 che contengono dati che non ho la necessità di tradurre come ad esempio: "gli utenti registrati" e le "sessioni di navigazione" e che devono essere disponibili a tutti i sottodomini.

    per attivare il multilingua utilizzo un file .htaccess che in pratica reindirizza questo url di sottodominio:

    en.miosito.it

    in

    www.miosito.it/index.php?lang=en

    quindi fisicamente il sito non cambia, ciò che cambia sono i risultati che devono essere visualizzati in lingua inglese.

    ora mi chiedo: visto che devo riusare comunque quelle 5 tabelle cosa mi conviene fare per le altre 25?

    1) aggiungo un campo nelle 25 tabelle che identifica la lingua a cui fa riferimento il record e poi prendere i risultati in questo modo:

    select * from tabella where nuovo_campo = 'en'
    --------------------------------------------------------------------
    2) Aggiungere al db le 25 tabelle con nome modificato per ogni sottodominio ed avere una cosa del genere:

    MIO_DB contiene:

    tabella fissa_1
    tabella fissa_2
    ...
    tabella fissa_5

    tabella_6
    tabella_7
    ...
    tabella_30

    en_tabella_6
    en_tabella_7
    ...
    en_tabella_30

    dove "tabella_6/30" e "en_tabella_6/30" sono rispettivamente identiche solo che:
    se sono nel dominio principale uso:
    le 5 tabelle fisse + le 25 tabelle

    se sono nel sottodominio inglese uso:
    le 5 tabelle fisse + le 25 "en_tabelle"
    --------------------------------------------------------------------
    3) creare, per ogni sottodominio, un nuovo db contenente le 25 tabelle e connettere il sito al db principale (in modo da avere sempre le 5 tabelle fisse) e al db creato per quel sottodominio esempio:

    MIO_DB contiene:

    tabella fissa_1
    tabella fissa_2
    ...
    tabella fissa_5

    tabella_6
    tabella_7
    ...
    tabella_30

    EN_MIO_DB contiene:

    en_tabella_6
    en_tabella_7
    ...
    en_tabella_30

    ed usare tutte le tabelle di MIO_DB nel caso di dominio principale.
    mentre nel caso di sottodomio usare
    le 5 tabelle fisse di MIO_DB + tutto EN_MIO_DB
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  6. #6
    piu' leggo e meno ci capisco. Cioe' capisco quello che vuoi fare ma non capisco frasi di questo tipo:

    dove "tabella_6/30" e "en_tabella_6/30" sono rispettivamente identiche solo che:
    se sono nel dominio principale uso:
    le 5 tabelle fisse + le 25 tabelle

    se sono nel sottodominio inglese uso:
    le 5 tabelle fisse + le 25 "en_tabelle"
    se sono uguali dove si trova il problema? Forse vorrai dire gli stessi campi ma con contenuto di linga diverso. Ma allora perche non creare: un campo, un en_campo, un de_campo, un es_campo e fare solo 25 tabelle di lingua?

    Oppure usare come molti cms un file di lingua che alla stessa variabile fa coincidere una diversa traduzione. Scegli il file da includere et voila' ...


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    Originariamente inviato da piero.mac
    Oppure usare come molti cms un file di lingua che alla stessa variabile fa coincidere una diversa traduzione. Scegli il file da includere et voila' ...

    lo uso...

    Il problema è per il contenuto degli articoli...
    Potrei pubblicare un articolo in italiano (e visualizzarlo quindi solo nella version italiana) e un articolo in inglese di un argomento completamente diverso (e visualizzarlo solo nella versione inglese)

    Forse vorrai dire gli stessi campi ma con contenuto di linga diverso.
    yes

    Ma allora perche non creare: un campo, un en_campo, un de_campo, un es_campo e fare solo 25 tabelle di lingua?
    perchè non so quante sono le lingue....
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  8. #8
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    Ma allora perche non creare: un campo, un en_campo, un de_campo, un es_campo e fare solo 25 tabelle di lingua?
    Inoltre, potrebbero anche non trattarsi di lingue diverse.

    Ok quest'ultima la spiego:

    potrei avere ad esempio:

    blog.miosito.it
    computer.miosito.it
    forum.miosito.it
    gossip.miosito.it
    ....

    insomma un'infinità di possibilità...

    e fare in modo che gli articoli pubblicati per il sito gossip.miosito.it siano visibili solo in quel sito.

    Il problema è ben più ampio di quello che sembra perchè nelle 25 tabelle non ci sono solo gli articoli ma, ad esempio, le categorie a cui si riferiscono, i nice-url, i tag relativi, i commenti relativi ecc....

    Per intenderci meglio: supponiamo di voler fare 1000 blog differenti usando sempre lo stesso wordpress (parlo di una sola installazione per tutti) dove a cambiare siano solo i db tenendo conto che devo avere un'unica tabella utenti che sia uguale per tutti i 1000 blog...

    Come procederesti?

    Spero di essere stato più chiaro...
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  9. #9
    questo andrebbe chiesto sul sito di wordpress... di sicuro c'è qualche plugin che lo fa

  10. #10
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    dicevo wordpress tanto per dire...
    per far capire quello che voglio ottenere...

    Uso un mio cms
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.