sql >> Base de Datos >  >> RDS >> Oracle

¿Cuáles son las formas de insertar y recuperar datos BLOB de la base de datos Oracle usando SQL?

En primer lugar, debe esperar almacenar BLOB en una base de datos para ser (a veces un poco, a menudo significativamente) más lento, pero definitivamente no más rápido que almacenarlos en un sistema de archivos. Las razones para almacenarlos en una base de datos no se centran en el rendimiento, sino en, por ejemplo:

  • Indisponibilidad de un sistema de archivos (compartido) en un escenario agrupado o con equilibrio de carga
  • Facilidad de copia de seguridad:Proceso único, a.o.t. 2 procesos cuando se utilizan archivos y DB
  • Seguridad de las transacciones:un BLOB está allí y completo o no, pero no en una etapa a medias
  • otros en los que no puedo pensar en este momento.

La regla general es que si nada de esto le preocupa, debe almacenar sus archivos como... archivos. Almacenar los metadatos y el nombre de la ruta en una base de datos es, en mi humilde opinión, una práctica buena y común.

Con respecto al ajuste de Oracle:hay libros escritos sobre eso. Sospecho que suman mucho más de una tonelada en formato de libro de bolsillo de árbol muerto. En primer lugar, puede observar el consumo de memoria del proceso de Oracle:regla general:si es menos de un gigabit y usa BLOB, tiene problemas. Infórmese sobre los diferentes grupos de memoria y cómo aumentarlos. Es posible que se apliquen algunos límites para la edición express.