I database NON sono più veloci. Pensaci: alla fine memorizzano i dati anche nel filesystem. Quindi la domanda se un database è più veloce dipende fortemente dal percorso di accesso.
Se si dispone di un solo percorso di accesso, correlato alla struttura del file, il file system potrebbe essere molto più veloce di un database. Assicurati di avere un po 'di cache disponibile per il filesystem.
Ovviamente si perdono tutte le cose belle di un database: - transazioni - modi flessibili per indicizzare i dati, e quindi accedere ai dati in modo flessibile ragionevolmente veloce. - linguaggio di query flessibile (anche se brutto) - alta recuperabilità.
Il ridimensionamento dipende molto dal file system utilizzato. La maggior parte dei file system AFAIK ha una sorta di limite superiore per il numero di file (totalmente o per directory), sebbene su quelli nuovi questo è spesso molto alto. Per centinaia e migliaia di file con una struttura di directory tale da mantenere le directory di dimensioni ragionevoli, dovrebbe essere possibile trovare un file system ben funzionante.
@ Commento di Eric: Dipende da ciò che ti serve.Se avete solo bisogno il contenuto del esatto in archivio per query, ed è possibile determinare la posizione e il nome del file in modo deterministico l'accesso diretto è più veloce di quello che fa un database, che è più o meno:
- accesso un gruppo di voci di indice, al fine di
- accedere a un gruppo di righe di tabella (rdbms in genere leggono i blocchi che contengono più righe), al fine di
- scegliere una singola riga dal blocco.
Se la si guarda: avete indici e righe aggiuntive in memoria, che rendono il vostro caching inefficiente, dove si trova il l'aumento di velocità di un db dovrebbero provenire da?
I database sono ottimi per il caso generale. Ma se hai un caso particolare, c'è quasi sempre una soluzione speciale che è meglio in un certo senso.
fonte
2009-08-03 07:10:12
Ed è per questo? Presumibilmente hai un requisito non convenzionale per scegliere un'architettura di soluzione non convenzionale. – dkretz
Voglio ricostruire l'applicazione in Visual Studio, ma GoDaddy non consente la connessione remota al database quando è ospitato gratuitamente. – chustar
Penso che stai reinventando NNTP. Perché non provare [leafnode] (http://leafnode.sourceforge.net/) utilizza file di testo normale ... che è ciò che è NNTP. – Thufir