Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    274

    [MySql] Parere su struttura

    Dunque, mi trovo a dover gestire una situazione un poco complicata.
    Nel giro di un paio(?) di mesi dovrò mettere mano a diciamo una ventina di siti web con identica struttura (utilizzo persino gli stessi files 'fisici' per comodità di gestione..) di files e database.
    Alcune tabelle del database saranno condivise tra tutti i siti web (utenti, sessioni, etc). Altre saranno uniche per ogni sito.
    Esiste un sito principale - gia ora - dove ho intenzione di tenere la userbase e le altre tabelle che verranno condivise da tutti gli altri siti.
    Veniamo al punto:
    Credete sia più conveniente, in termini puramente prestazionali, tenere ogni nuovo sito su un database differente (sempre sullo stesso server) e fare quindi queries due diversi database o mi suggerite di non sbattermi perchè tanto non cambia nulla?
    -> Mi ritroverei con 1000+ tabelle all'interno del database, in questo caso

    Se avete bisogno di ulteriori dettagli non esitate a chiedere.

    banned,

  2. #2
    se siano meglio più database o uno solo non te lo so dire, aldilà delle prestazioni potrebbe esser comodo usare più database per questioni di privilegi e sicurezza.

    Comunque, mi sembrano veramente tantine 1000 tabelle per 20 siti, non è che c'è un qualche problema nella normalizzazione?

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    274
    L'utente del DB resterebbe comunque uno solo.. 2 proprio come limite massimo (inteso uno per il DB dove stanno i dati degli utenti e uno per tutti gli altri DB).
    1000 tabelle per 20 siti sono relativamente poche, la struttura del DB è stata _parecchio_ orientata agli oggetti sin dagli inizi appunto per facilitare un'eventuale condivisione di dati.
    Sul sito principale, pieno di contenuti e sezioni varie, conto circa 180 tabelle. Gli altri sono - per fortuna - più piccolini.

    banned,

  4. #4
    [supersaibal]Originariamente inviato da banned
    1000 tabelle per 20 siti sono relativamente poche, la struttura del DB è stata _parecchio_ orientata agli oggetti sin dagli inizi appunto per facilitare un'eventuale condivisione di dati.[/supersaibal]
    su un dbms relazionale, hai voglia a orientare agli oggetti, sempre relazionale resta

    comunque non conoscendo la struttura delle informazioni che usi non posso esprimermi più di tanto e quindi la mia resta un'impressione a pelle, fatto sta che 1000 tabelle mi sembrano comunque un'enormità.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    274
    Effettivamente non ho usato la terminologia migliore
    Intendo dire che ho puntato a dividere il più possibile i contenuti all'interno delle varie tabelle del DB.
    Questo per fare chiamate al DB che siano il più leggero possibile -> preferisco 2 queries leggere piuttosto che una più pesante.
    Allo stesso modo se mi trovo in una situazione in cui devo condividere qualcosa - come ora - ho minori difficoltà.

  6. #6
    come ti dicevo, senza conoscere la struttura dei tuoi dati non è possibile giudicare in maniera ragionata.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    274
    --
    avatar -> avatar
    avatar_link -> link all'avatar di un utente
    --
    banner
    bannerXclients
    banner_ended -> x il sistema di rotazione di banner e l'accesso ai clienti
    --
    block_module_link -> blocchi dei vari moduli, collegamenti tra files php e templates
    commenti -> sistema di commenti linkabile ad ogni singolo 'id' di ogni singola sezione
    notifiche -> stessa cosa dei commenti, ma per ricevere notifihce
    --
    config
    configcategory
    configoption -> configurazioni di admin
    --
    gruppi -> i vari gruppi
    permission_gruppi -> le permissions dei gruppi di sopra
    gruppi_user -> linking del singolo utente ad un determinato gruppo
    --
    image
    imagebody
    imagecategory
    imageset
    imageset_link
    imagesetimagebody -> per il sistema di upload e management delle immagini.. imagebody serve per le immagini caricate in binario su DB. Il tutto è richiamabile da ogni angolo del sito
    --
    modules -> moduli (le sezioni) installati/attivati e permissions varie per i gruppi
    customblocks -> blocchi on the fly
    useronline -> si spiega da solo
    priv_msgs -> idem
    ranks -> livelli degli utenti, posts based
    sessions -> si spiega da solo
    smilies -> idem
    templateset -> i vari template set esistenti
    templatefile -> i file 'fisici' contenenti i tpl
    templatesource -> i contenuti dei tpl (sì, ho doppia scelta)
    users -> utenti

    La struttura del db sopra indicata non è completa perchè mancano tutte le tabelle delle varie sezioni - diciamo che è la struttura del 'core' - e perchè son timido quindi evito di snerciare troppo in un forum pubblico :P
    Credo basti, comunque, per far comprendere in parte il funzionamento.
    Ovviamente non ho interesse a condividere tutte queste tabelle (anche perchè sennò avrei solamente dei cloni ), diciamo che all'atto pratico quelle fondamentali sono users, gruppi, avatars, smilies, sessions, ranks, banners.. poche altre (alcune fanno parte delle sezioni.. details).

    Ora la situazione è (poco) più chiara?

    banned,

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 © 2025 vBulletin Solutions, Inc. All rights reserved.