Quali sono i pro e i contro della memorizzazione dei file nelle cartelle DB2 e? [duplicare]

0

Lavoro in un'applicazione Web in cui gli utenti possono caricare file. Possono recuperare e visualizzare quei file in un secondo momento. Una soluzione con cui l'utente può lavorare può avere più allegati ma il clic per visualizzarne solo uno alla volta. Nessuna manutenzione della versione. Gli utenti possono cancellare quei file. Nessuna eliminazione morbida. I file vengono catturati con pochi altri campi sull'interfaccia utente e quei campi sono memorizzati nella tabella DB2. I file possono avere un massimo di 5 MB.

Ora, sarebbe appropriato archiviare questi file nel database DB2 come oggetti BLOB (o) sarebbe opportuno memorizzarli in una cartella? Qual è l'approccio migliore?

    
posta Abi 23.11.2011 - 06:51
fonte

2 risposte

1

Se hai solo un numero ridotto di file (ad esempio, meno di 10.000) e sono abbastanza piccoli (come le foto), tienili ovunque desideri - nel db o nella struttura del file. La differenza in termini di prestazioni / efficienza non è evidente per la maggior parte delle applicazioni, quindi usa solo la soluzione che preferisci.

Altrimenti, troverai più facile gestire a lungo termine se sono memorizzati nel file system. Soprattutto se si tratta di documenti molto importanti, sarete in grado di implementare sistemi di backup molto migliori e non dovrete preoccuparvi di un enorme database che dovrà estendere i volumi, il che potrebbe rendere difficile il backup.

Tenete presente anche, in particolare con le applicazioni Web, che la consegna dei file memorizzati nel file system non richiede l'uso di una connessione al database per trasferire il file effettivo. Mentre se è in un blob, viene utilizzata una connessione al database e la sua larghezza di banda.

    
risposta data 23.11.2011 - 08:29
fonte
0

Per gentile concessione Jeff O

Although this has been asked on StackOverflow, I think there is an automatic assumption among programmers on this subject that may not always hold true, so I'm answering it here. There are situations where placing in the database may be better.

https://stackoverflow.com/questions/5613898/what-about-storing-images-in-sql-server There is a link here that shows file size may matter and placing small images in a database may be better for performance. Currently, 250K to 1 M seems to be the grey area. This is specific to SQL Server 2008. I'm guessing more relational databases are going to break their mold a bit and begin to improve their ability to handle large blobs of data.

They may even be better at indexing and searching blob content. Can't wait for the day when I can query all pictures for those Where Photos.File.FaceCount > 1 to get group photos without someone having to manually create the metadata.

NOTA Si prega di non aggiornare questa risposta, questo è solo per il riferimento OP. Le parole provengono dalla bocca di qualcun altro, quindi non dovrei essere quello che ottiene il repository

    
risposta data 23.05.2017 - 13:33
fonte

Leggi altre domande sui tag