Об этом проекте
Apache Beam предоставляет унифицированную модель для построения конвейеров обработки данных, которые могут работать как с ограниченными (пакетными), так и с неограниченными (потоковыми) данными. Она отделяет определение конвейера от среды выполнения, позволяя разработчикам один раз написать логику и запускать ее на различных распределенных бэкендах обработки.
Ключевые компоненты модели Beam включают:
- PCollection: представляет набор данных любого размера.
- PTransform: представляет собой вычисление, которое преобразует входные данные в выходные.
- Pipeline: управляет направленным ациклическим графом (DAG) преобразований и коллекций.
- PipelineRunner: определяет среду выполнения.
Beam предоставляет SDK для Java, Python и Go. Он поддерживает несколько раннеров для выполнения, включая:
- DirectRunner и PrismRunner (локальное выполнение)
- Google Cloud Dataflow
- Apache Flink
- Apache Spark
- Hazelcast Jet
- Twister2