Saltar al contenido
Sparquet

El mejor framework open source de ingeniería de datos

Cada pipeline de tu equipo,
escrito de la misma forma.

Sparquet estandariza la ingeniería de datos: ingesta, transformación, calidad y entrega viven en un contrato JSON declarativo, no en mil scripts a medida. Y como el pipeline es solo JSON, un LLM lo escribe tan bien como tú: pídeselo al asistente dentro de Sparquet Studio, o a ChatGPT, Claude y Copilot en cualquier otro lugar, revisa el diff y córrelo en cualquier Spark.

conectores
27conectores
transformaciones
20transformaciones
artefacto
1artefacto

Apache 2.0 · Sin cuenta · Corre en tu infraestructura

pedidos_curados.json
{
  "name": "orders_curated",
  "input": {
    "format": "delta",
    "path": "sales.orders"
  },
  "transformations": [
    { "type": "filter", "condition": "status = 'CONFIRMED'" },
    { "type": "with_column",
      "column": "revenue",
      "expression": "quantity * unit_price" }
  ],
  "validations": {
    "on_failure": "fail",
    "rules": [{ "type": "not_null", "columns": ["id"] }]
  },
  "output": {
    "format": "delta",
    "path": "analytics.orders",
    "mode": "merge",
    "options": { "merge_keys": ["id"] }
  }
}

Un pipeline es JSON, así que cualquier modelo escribe uno, y el linter lo prueba antes de que Spark arranque.

El mismo contrato, como Job en el lienzo del Studio

  1. Deltasales.orders
  2. Filterstatus = 'CONFIRMED'
  3. With columnrevenue = qty × price
  4. Validations1 rule · fail
  5. Deltaanalytics.orders
5 nodos · válido · compila a pedidos_curados.json

Por qué existe

Diez ingenieros, diez formas de leer un CSV.

A los equipos de datos rara vez les faltan herramientas, les falta una forma común. Cada trabajo inventa su estructura, su nomenclatura y su idea de qué significa "validado", hasta que nadie puede revisar con seguridad un pipeline que no escribió. Sparquet lo reemplaza por un contrato que todos cumplen.

  • 01

    Un solo contrato

    Fuente, transformaciones, reglas de calidad y destinos son campos del mismo documento. Quien entra al equipo lee cualquier pipeline el primer día.

  • 02

    Revisable por diseño

    Un cambio aparece como un diff que se puede razonar, no como arqueología entre celdas de cuaderno y estado del clúster.

  • 03

    Reutilizado, no copiado

    Los parámetros convierten un contrato en cada región, fecha y cliente. Cambian los valores; la lógica vive en un solo sitio.

Cómo lo construyes

Tres formas de escribirlo. Un artefacto.

El estándar es el archivo. Cómo se escribe lo decides tú, y los tres caminos son intercambiables, en ambos sentidos.

  1. 01

    Escríbelo

    Escribe el JSON directamente. El esquema es lo bastante pequeño para tenerlo en la cabeza y lo bastante estricto para revisarlo en un pull request.

    pedidos_curados.json

    { "type": "filter",

    "condition": "status = ..." }

  2. 02

    Genéralo

    Descríbelo en lenguaje natural, al asistente dentro del Studio o a cualquier modelo que ya pagas. El lenguaje entero cabe en un prompt, así que lo que vuelve es JSON válido, no código que tengas que ejecutar para confiar.

    Cualquier LLM

    keep confirmed orders,

    upsert revenue per customer

  3. 03

    Dibújalo

    Abre Sparquet Studio y móntalo en el lienzo. Los nodos son las entradas del archivo, las conexiones su orden, y el archivo es lo que realmente corre.

    Sparquet Studio

    Delta → Filter → Validations

    → Delta (merge)

Importa al lienzo un archivo escrito a mano, o exporta a git uno que dibujaste. No se pierde nada en el camino.

Qué cubre el estándar

Un lenguaje de pipelines completo.

Veinte transformaciones, veintisiete conectores y un motor de calidad de datos, todos documentados, tipados en el editor y comprendidos por el asistente.

Transformaciones

filter, select, cast, with_column, struct, group_by, join, union, sort, distinct y más, aplicadas en el orden en que las escribes.

Calidad de datos

Nulos, unicidad, rango, regex, conteo de filas, invariantes SQL y comprobación de esquema, con políticas fail / warn / skip e informe por regla.

Conectores

Tablas de lakehouse, archivos, bases relacionales, data warehouses, NoSQL, búsqueda y streams, el mismo modelo de nodos para todos.

Cuarentena

Envía las filas que incumplen una regla a su propio destino: lo limpio se publica y lo problemático queda para revisar.

Parámetros

Un archivo, muchas ejecuciones: marcadores {param} formateados para SQL y skip_if_false para activar o desactivar pasos enteros.

Pushdown en runtime

collect lleva un conjunto de claves a una {{variable}} y empuja el filtro literal IN (...) en la siguiente lectura, data skipping sin pegamento manual.

Múltiples destinos

Un DataFrame, varias formas: transformaciones y proyecciones por destino en una sola pasada sobre los datos.

Extensible

Registra tus propios readers, writers, transformaciones y validadores. El Studio conserva intactos los tipos que no conoce.

Ver la referencia completa →

Sparquet Studio

La interfaz visual de tus workflows.

El Studio es donde el contrato se vuelve algo que el equipo ve. Arrastra una fuente, conecta transformaciones, enlaza un destino, y pulsa ⌘J para leer el JSON exacto que se ejecutará. Sin formato propietario, sin generación oculta.

Workflow
, el contenedor, normalmente uno por dominio: Ventas, Facturación, CRM.
Job
, un JSON de pipeline, dibujado en el lienzo.
Pipeline
, un conjunto ordenado de Jobs, ejecutados en secuencia en una sesión.
  • Cada campo documentado en su sitio, con los comportamientos que suelen vivir solo en el código fuente
  • Análisis en vivo que atrapa los errores que Spark solo reporta tras una hora de cómputo
  • Ejecuta un Job o un Pipeline completo desde el lienzo y lee contadores, calidad y una vista previa
  • Todo guardado en tu navegador, sin cuenta, sin servidor, sin telemetría
Explorar el Studio
Sparquet Studio mostrando un Job en el lienzo con el inspector abierto

IA nativa por diseño

El formato es lo que hace confiable a la IA.

Pídele a un modelo un job de PySpark y recibes un script que nadie puede verificar sin correrlo sobre datos reales. Pídele un pipeline de Sparquet y recibes un JSON corto: cada campo existe en el catálogo, el linter lo revisa ahí mismo y el diff se lee línea por línea. El Studio trae un asistente que usa tu propia clave, y cualquier modelo fuera de él funciona igual, porque el lenguaje entero cabe en un prompt.

  • Genera un Job completo o modifica el que ya está en el lienzo
  • Funciona fuera del Studio también: pega la referencia en ChatGPT, Claude, Copilot o tu propio agente
  • Pídele que explique, optimice o corrija justo los problemas que encontró el linter
  • Cada propuesta se revisa antes de tocar tu trabajo, y deshacer es una tecla
Cómo funciona el asistente →
You

Lee pedidos de la tabla Delta ventas.pedidos, quédate con los confirmados, elimina duplicados por id, falla si id tiene nulos y haz upsert de los ingresos por cliente en analytics.ingresos_cliente

orders_curated.jsongenerating…

Job propuesto con 6 nodos · 1 destino · 2 reglas de calidad

Apply to canvasView JSON

anthropic · openai · google · openai-compatible

Conectores

Veintisiete fuentes y destinos.

Cambiar de dónde vienen los datos es cambiar un campo, no reescribir el trabajo. El mismo modelo de nodos cubre lakehouse, archivos, bases operativas, data warehouses, NoSQL y streams.

Lakehouse

6
  • Delta Lake
  • Iceberg
  • Hudi
  • Parquet
  • ORC
  • Avro

Archivos

5
  • CSV
  • JSON
  • XML
  • Texto
  • Binario

Bases de datos

5
  • PostgreSQL
  • MySQL
  • MariaDB
  • SQL Server
  • Oracle

Data warehouses

3
  • BigQuery
  • Snowflake
  • Redshift

NoSQL y búsqueda

6
  • MongoDB
  • DocumentDB
  • DynamoDB
  • Cassandra
  • Elasticsearch
  • OpenSearch

Streaming y vistas

2
  • Kafka
  • Vistas temporales

27 totalVer todos los conectores →

Dónde corre

Tu Spark, tus reglas.

Sparquet es una librería, no una plataforma. No hay plano de control, no hay runtime alojado y nada llama a casa.

Local

Un portátil con PySpark instalado, para desarrollo y pruebas.

Databricks

Reutiliza la sesión activa; los jobs y cuadernos siguen igual.

EMR y Dataproc

Envíalo como cualquier otra aplicación PySpark.

Synapse

Detectado automáticamente, como cualquier entorno soportado.

Preguntas

Lo que preguntan antes de adoptarlo.

Respuestas cortas, con la versión larga a un clic en la documentación.

¿Qué es Sparquet?

Sparquet es un framework open source de ingeniería de datos para Apache Spark. Un pipeline es un único archivo JSON declarativo que dice de dónde vienen los datos, cómo se transforman, qué reglas de calidad deben pasar y dónde se escriben. El framework lee ese archivo y lo ejecuta con PySpark, en tu propio clúster.

¿En qué se diferencia de escribir un job de PySpark a mano?

Un job escrito a mano codifica las mismas cinco decisiones con una forma distinta cada vez, así que revisar un pipeline que no escribiste se vuelve arqueología. Sparquet fija la forma: cualquier ingeniero lee cualquier pipeline, un cambio aparece como un diff legible, y lo que nunca varía, manejo de sesión, merges, reporte de calidad, múltiples destinos, ya está escrito y probado.

¿ChatGPT, Claude o Copilot pueden escribir un pipeline de Sparquet?

Sí, y el formato es lo que lo hace posible. El lenguaje entero, veinte transformaciones y veintisiete conectores, cabe en un prompt, así que el modelo devuelve un pipeline completo en JSON en lugar de un script en el que solo confías tras ejecutarlo. Sparquet Studio trae un asistente que usa tu propia clave de API, y cualquier modelo fuera de él funciona igual. Lo que vuelve pasa por el linter contra el catálogo real antes de que Spark arranque.

¿Dónde se ejecutan los pipelines de Sparquet?

Donde sea que corra Spark: Databricks, Amazon EMR, Google Dataproc, Azure Synapse, un clúster de Kubernetes o tu portátil. El framework detecta el entorno y reutiliza la sesión de Spark activa cuando existe, así que el mismo archivo se mueve entre ellos sin tocarlo.

¿Qué fuentes y destinos soporta?

Veintisiete conectores, lectura y escritura, bajo el mismo modelo de nodos: Delta Lake, Apache Iceberg, Apache Hudi, Parquet, CSV, JSON, ORC, Avro, XML, texto plano, PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, BigQuery, Snowflake, Redshift, MongoDB, DocumentDB, DynamoDB, Cassandra, Elasticsearch, OpenSearch, Kafka y temp views de Spark.

¿Tengo que usar Sparquet Studio?

No. El Studio es el editor visual de los mismos archivos JSON, y es opcional en ambos sentidos: importa al lienzo un pipeline escrito a mano, o exporta a git uno que dibujaste. El framework ejecuta el archivo con o sin él.

¿Sparquet es gratis, y a dónde van mis datos?

Sparquet es gratis y open source bajo la licencia Apache 2.0. Instálalo con pip install sparquet y corre en tu propia infraestructura. No hay cuenta, ni servicio alojado, ni telemetría, y los datos nunca salen de tu clúster.

Leer la documentación →

Estandariza tu primer pipeline en cinco minutos.

Instala el framework, abre el studio y ejecuta un trabajo real antes de que se enfríe el café.

pip install sparquet