PostgresSQL
PostgresSQL conecta tu flujo con una base de datos PostgreSQL para guardar en una tabla los registros que llegan de otros componentes y para ejecutar sentencias SQL. También puede pasar los datos de conexión a un agente que consulte la base por sí mismo.
Cuándo usarlo
- Guardar en una tabla las solicitudes o contactos que ha recogido el flujo.
- Ejecutar una consulta SQL para preparar un informe.
- Dar a un SQL Agent acceso a tu base de datos para que responda preguntas sobre ella.
Configuración
Necesitas una credencial Postgres SQL con la dirección de conexión de tu servidor. Consulta Credenciales.
El campo Operation decide qué hace el componente y qué campos aparecen:
Add(por defecto): guarda en una tabla los registros que conectes a Ingest Data. Si la tabla no existe, la crea con una columna de texto por cada campo de los registros.SQL: ejecuta la sentencia que escribas en Search Query y devuelve las filas obtenidas. Cualquier sentencia que cambie datos o tablas se guarda en la base de datos.DatabaseInfo: prepara los datos de conexión y la tabla para pasarlos a otro componente.Retriever: ofrece la tabla como buscador por significado, para los componentes que piden un retriever. La tabla tiene que haberse llenado conAddy un Embedding conectado, y aquí hay que conectar el mismo modelo de embeddings. Para un almacén vectorial completo, usa PGVector.
| Campo | Qué hace |
|---|---|
| Credential (obligatorio) | La credencial Postgres SQL con los datos de conexión. |
| Operation | Qué hace el componente. Por defecto, Add. |
| Table Name (obligatorio) | Con Add, Retriever y DatabaseInfo. La tabla en la que se guardan los datos, en la que se busca o la que se pasa a otro componente. |
| Ingest Data | Con Add. Los registros que se guardan, uno por fila. Conecta aquí la salida de datos de otro componente. |
| Search Query | Con SQL. La sentencia que se ejecuta, por ejemplo SELECT nombre, email FROM clientes WHERE ciudad = 'Valencia'. |
| Conexión | Qué conectar |
|---|---|
| Embedding | Opcional con Add, obligatorio con Retriever. Un modelo de embeddings, por ejemplo OpenAI Embeddings. Con Add, si los registros tienen un campo text, se guarda junto a cada fila una versión de ese texto que permite buscarlo después por significado (la columna toma el tamaño de los vectores del modelo). Con Retriever, convierte la pregunta para buscar en la tabla. |
Opciones avanzadas
| Campo | Qué hace |
|---|---|
| Drop Table | Con Add. Borra la tabla, con todo su contenido, y la vuelve a crear antes de guardar los registros nuevos. Por defecto: desactivado. |
| Number of Results | Cuántos resultados devuelve como máximo la búsqueda de Retriever y la que se pasa en Database Info. Por defecto: 10. |
| Search Score Threshold | Con Retriever. Si no es 0, descarta los resultados menos parecidos que este valor (de 0 a 1). Por defecto: 0. |
Resultado
- Data: con
Add, los registros que se han guardado; conSQL, las filas que devuelve la sentencia, cada una con sus columnas. - Retriever: con
Retriever, el buscador sobre la tabla, para los componentes que piden uno. - Database Info: con
DatabaseInfo, la referencia a la base de datos y a la tabla. Conéctala, por ejemplo, a un SQL Agent.
Ejemplo
Asesoría Prado guarda en PostgreSQL las consultas que llegan por su formulario de contacto:
- Añade PostgresSQL con la credencial Postgres SQL de la asesoría y deja Operation en
Add. - Escribe
consultasen Table Name. - Conecta a Ingest Data los datos de la consulta (nombre, email y mensaje), por ejemplo desde JSON to Data.
Cada ejecución añade una fila a la tabla consultas. La primera vez, si la tabla no existe, se crea con las columnas nombre, email y mensaje.
Buenas prácticas
- Activa Drop Table solo si quieres sustituir todo el contenido de la tabla: borra los datos anteriores sin pedir confirmación.
- Con
SQLel componente puede cambiar o borrar datos y tablas. Si solo vas a consultar, usa una credencial con un usuario de solo lectura; si va a guardar datos, dale permisos únicamente sobre las tablas que necesita. - Prueba las sentencias que cambian datos en una copia de la base antes de usarlas en la real.
Componentes relacionados
- Postgres SQL: la versión más completa de este componente.
- PGVector: busca por significado en PostgreSQL.
- SQL Agent: responde preguntas sobre tu base de datos.
- MySQL: lo mismo para MySQL.