- Se incorporó
- 15 Enero 2004
- Mensajes
- 11.976
Acá en la pega una de las bases de datos de negocio es Oracle 19c con pocos registros (sus 50 millones, es poco) pero algunos de esos registros tienen archivos (documentos PDF la mayoría) en campos de tipo LOB (BLOB, CLOB).
Queremos hacer una pequeña prueba de concepto: desarrollamos una caja negra que lee los archivos que están dentro de los campos de tipo LOB de Oracle y los transforma en vectores para luego meterle modelos de IA que lean los vectores.
Para evitar usar una base de datos vectorial aparte, yo he estado esperando desde el año pasaso a que salga la versión on premise de Oracle 23ai, que incluye campos vectoriales dentro de la misma base de datos relacional, lo que me deja TODO JUNTO mis datos de negocio con los vectores resultantes de la lectura de los archivos. Sueno como un comercial ofreciéndote la solución de Oracle para meterle IA a tu negocio pero justamente esa es la idea.
La cosa es que Oracle todavía no libera la versión on premise de Oracle 23ai y creo que ya no va a salir nah este año 2025, entonces tengo dos opciones para continuar con este pequeño proyecto conceptual:
- Usar una base de datos vectorial tipo chroma o milvus
- Usar una base de datos transaccional con soporte para vectores, que en este caso sería Postgres.
Si aplico la opción 2, puedo migrar datos transaccionales de Oracle a Postgres con una herramienta adhoc peeeeroooooo.... me queda la duda la equivalencia en Postgres con los campos LOB de Oracle que almacenan los archivos PDF.
Estoy googleando y el tipo de dato a en Postgres a donde le puedo chantar un PDF es BYTEA.
Planeo utilizar la herramienta Ora2PG para hacer la migración y la voy a ir documentando acá en este hilo.
Yo nunca he usado Postgres a nivel experto, siempre lo he utilizado como base de datos repositorio de software con pocos datos (casi como un sqlite), así que no tengo experiencia ni manejo en temas finos. Por eso, si hay acá alguien ducho que se anime a darme consejos de lo que sea (ojo con el almacenamiento, guarda con la memoria, fíjate en los archivos que te mantienen la transaccionabilidad, etc) se lo agradecería.
Nota: No me interesa que la estructura de datos resultante en Postgres sea útil para conectarle un servidor de aplicaciones y hacer correr el sistema de negocio. Simplemente quiero tener las tablas con los registros (incluyendo archivos PDF dentro de los campos) para que un modelo de IA los lea y lo convierta en vectores.
Queremos hacer una pequeña prueba de concepto: desarrollamos una caja negra que lee los archivos que están dentro de los campos de tipo LOB de Oracle y los transforma en vectores para luego meterle modelos de IA que lean los vectores.
Para evitar usar una base de datos vectorial aparte, yo he estado esperando desde el año pasaso a que salga la versión on premise de Oracle 23ai, que incluye campos vectoriales dentro de la misma base de datos relacional, lo que me deja TODO JUNTO mis datos de negocio con los vectores resultantes de la lectura de los archivos. Sueno como un comercial ofreciéndote la solución de Oracle para meterle IA a tu negocio pero justamente esa es la idea.
La cosa es que Oracle todavía no libera la versión on premise de Oracle 23ai y creo que ya no va a salir nah este año 2025, entonces tengo dos opciones para continuar con este pequeño proyecto conceptual:
- Usar una base de datos vectorial tipo chroma o milvus
- Usar una base de datos transaccional con soporte para vectores, que en este caso sería Postgres.
Si aplico la opción 2, puedo migrar datos transaccionales de Oracle a Postgres con una herramienta adhoc peeeeroooooo.... me queda la duda la equivalencia en Postgres con los campos LOB de Oracle que almacenan los archivos PDF.
Estoy googleando y el tipo de dato a en Postgres a donde le puedo chantar un PDF es BYTEA.
Planeo utilizar la herramienta Ora2PG para hacer la migración y la voy a ir documentando acá en este hilo.
Yo nunca he usado Postgres a nivel experto, siempre lo he utilizado como base de datos repositorio de software con pocos datos (casi como un sqlite), así que no tengo experiencia ni manejo en temas finos. Por eso, si hay acá alguien ducho que se anime a darme consejos de lo que sea (ojo con el almacenamiento, guarda con la memoria, fíjate en los archivos que te mantienen la transaccionabilidad, etc) se lo agradecería.
Nota: No me interesa que la estructura de datos resultante en Postgres sea útil para conectarle un servidor de aplicaciones y hacer correr el sistema de negocio. Simplemente quiero tener las tablas con los registros (incluyendo archivos PDF dentro de los campos) para que un modelo de IA los lea y lo convierta en vectores.