Sobes.tech
Middle — Senior

Czym jest Apache Beam / Dataflow?

sobes.tech AI

Odpowiedź od AI

Apache Beam jest zunifikowanym modelem programowania do przetwarzania dużych danych, który umożliwia pisanie potoków przetwarzania danych działających zarówno w trybie batch, jak i stream. Abstrahuje szczegóły konkretnych silników przetwarzania danych.

Google Cloud Dataflow to zarządzana usługa implementująca model Apache Beam, która automatycznie skaluję i optymalizuje wykonywanie potoków przetwarzania danych w chmurze.

Tak więc, Apache Beam to framework do opisywania zadań przetwarzania danych, a Dataflow to usługa do ich wykonywania. Pozwala to programistom pisać jeden kod, który można uruchamiać na różnych platformach bez zmian.

Przykład użycia Apache Beam w Python:

import apache_beam as beam

with beam.Pipeline() as pipeline:
    (pipeline
     | 'Read' >> beam.io.ReadFromText('input.txt')
     | 'Filter' >> beam.Filter(lambda x: 'error' in x)
     | 'Write' >> beam.io.WriteToText('output.txt'))