Oracle
 sql >> Database >  >> RDS >> Oracle

Quali sono i modi per inserire e recuperare i dati BLOB dal database Oracle utilizzando SQL?

Prima di tutto, dovresti aspettarti la memorizzazione dei BLOB in un database in modo che sia (a volte un po', spesso significativamente) più lenta, ma sicuramente non più veloce della loro memorizzazione in un file system. I motivi per archiviarli in un DB non sono incentrati sulle prestazioni, ma su ad es.:

  • Indisponibilità di un file system (condiviso) in uno scenario cluster o con bilanciamento del carico
  • Facilità di backup:processo singolo, a.o.t. 2 processi quando vengono utilizzati file e DB
  • Sicurezza delle transazioni:un BLOB è presente e completo oppure no, ma non in una fase semicotta
  • altri non mi vengono in mente in questo momento.

La regola generale è che se nessuno di questi problemi ti riguarda, dovresti archiviare i tuoi file come ... file. La memorizzazione dei metadati e del percorso in un DB è una buona pratica comune IMHO.

Riguardo all'ottimizzazione di Oracle:ci sono libri scritti a riguardo. Sospetto di totalizzarli di gran lunga più di una tonnellata in formato tascabile dead tree. Potresti prima di tutto guardare al consumo di memoria del processo Oracle - regola pratica:se è meno di un concerto e usi BLOB, sei nei guai. Leggi i diversi pool di memoria e come aumentarli. Potrebbero essere applicati alcuni limiti per l'edizione express.