Saltearse al contenido

SupabaseSQL

SupabaseSQL es un componente de Nappai que te permite interactuar con tu base de datos Supabase directamente desde el dashboard. Con él puedes ejecutar cualquier consulta SQL, insertar datos en tablas o generar un buscador de vectores que se puede usar en flujos de IA.

¿Cómo funciona?

SupabaseSQL se conecta a tu base de datos Supabase mediante la credencial “Supabase API” que ya debes haber configurado en Nappai. Cuando seleccionas una operación, el componente construye la petición adecuada:

  • Add: Inserta los datos que le pases en la tabla indicada. Si activas “Drop Table” la tabla se elimina antes de insertar.
  • SQL: Ejecuta la consulta SQL que escribas. Si la consulta es un SELECT devuelve las filas como JSON; si es otra instrucción devuelve un objeto de estado con el resultado y el número de filas afectadas.
  • Retriever: Crea un objeto “Retriever” que permite hacer búsquedas de similitud vectorial sobre la tabla, usando el embedding que le proporciones.

El componente gestiona los errores y devuelve mensajes claros para que puedas depurar fácilmente.

Operaciones

Este componente ofrece varias operaciones que puedes seleccionar según lo que necesites hacer. Solo puedes usar una operación a la vez:

  • Add: Inserta datos en una tabla de Supabase. Puedes elegir si quieres eliminar la tabla antes de insertar.
  • SQL: Ejecuta cualquier consulta SQL. Los resultados de SELECT se devuelven como JSON; otras consultas devuelven un objeto de estado.
  • Retriever: Construye un buscador de vectores que permite hacer búsquedas por similitud usando embeddings.

Para usar el componente, primero selecciona la operación que necesitas en el campo “Operation” (Operación).

Entradas

Antes de usar el componente, asegúrate de haber configurado la credencial Supabase API en la sección de credenciales de Nappai y de seleccionarla en el campo “Credential” del componente.

Campos de Entrada

  • Embedding: Embedding para generar un vector a partir de texto o para usar en búsqueda por similitud.

    • Visible en: Add, SQL, Retriever
  • Ingest Data: Inserta datos en la tabla de la base de datos.

    • Visible en: Add
  • Operation: Selecciona la operación que quieres ejecutar.

    • Visible en: Add, SQL, Retriever
  • Number of Results: Número de resultados que quieres devolver en una búsqueda.

    • Visible en: Add, SQL, Retriever
  • Search Query: Consulta SQL que quieres ejecutar.

    • Visible en: SQL
  • Search Score Threshold: Si el valor es distinto a 0.0, se filtran los resultados con una distancia menor al umbral.

    • Visible en: Add, SQL, Retriever
  • Table Name: Nombre de la tabla en la base de datos.

    • Visible en: Add
  • Drop Table: Elimina la tabla si ya existe antes de insertar datos.

    • Visible en: Add

Salidas

  • Data: Devuelve los datos obtenidos de una consulta SELECT o el objeto de estado de otras operaciones. Tipo: Data.
  • Retriever: Devuelve un objeto que permite hacer búsquedas de similitud vectorial. Tipo: Retriever.
  • Database Info: Devuelve información básica de la base de datos. Tipo: Data.

Ejemplo de Uso

Operación Add

  1. Selecciona Add en el campo “Operation”.
  2. En Table Name escribe clientes.
  3. Marca Drop Table si quieres recrear la tabla cada vez.
  4. En Ingest Data pega un JSON con los registros que quieres insertar, por ejemplo:
    [
    {"nombre":"Ana","edad":30},
    {"nombre":"Luis","edad":25}
    ]
  5. Conecta la salida Data a un componente de visualización para ver el resultado.

Operación SQL

  1. Selecciona SQL en el campo “Operation”.
  2. En Search Query escribe:
    SELECT * FROM clientes WHERE edad > 28;
  3. Conecta la salida Data a un gráfico de tabla para mostrar los clientes mayores de 28 años.

Componentes Relacionados

  • SupabaseBaseComponent: Base sobre la que se construye SupabaseSQL, contiene la lógica de conexión y manejo de credenciales.
  • Retriever: Componente que permite usar el objeto de búsqueda vectorial generado por SupabaseSQL en flujos de IA.

Consejos y Mejores Prácticas

  • Usa “Drop Table” solo cuando necesites recrear la tabla; de lo contrario, evita perder datos existentes.
  • Limita el número de resultados con “Number of Results” para evitar sobrecargar el dashboard.
  • Comprueba la sintaxis SQL antes de ejecutar; los errores se muestran en la salida de estado.
  • Aprovecha el “Search Score Threshold” para filtrar resultados no relevantes en búsquedas por similitud.

Consideraciones de Seguridad

  • La credencial Supabase API contiene la URL y la clave de servicio; manténla segura y no la compartas públicamente.
  • Evita exponer datos sensibles en las consultas SQL; usa parámetros o filtros adecuados.
  • Revisa los permisos de la tabla en Supabase para limitar quién puede leer o escribir datos.