程序员要了解的一个数据流处理器-Benthos

研发玩点艰辛事 2024-03-05 14:18:12

Benthos是什么?

是什么

基于Golang实现的高性能和弹性的数据流处理器

具备什么能力

1)能够以各种代理模式连接各种源和接收器,并对有效载荷执行:水合(hydration)、浓缩(enrichment)、转换(transforms)和过滤(filtering)

2)带有强大的映射语言

应用场景

1)Benthos 的功能与集成框架、日志聚合器和 ETL 工作流引擎重叠,因此可用于补充这些传统的数据工程工具或作为更简单的替代方案

2)Dkron中使用Benthos来实现定制yaml格式的shell执行器配置

核心组件

inputs(输入)buffers(缓冲)pipeline (流水线处理)outputs (输出)processors (处理器)conditions (条件)caches (缓存)

支持的源和接收器

Benthos的核心组件

参考:https://www.benthos.dev/docs/about/

可转换的数据格式

JSON,XML,CSV等

部署

1)跨平台: 是一个开源的数据流管理工具,可以在 Linux、macOS 和 Windows 系统上运行

2)云原生. 可以作为静态二进制文件、docker 映像或无服务器函数放入您的管道,使其成为云原生

使用特性

1)完全声明性. 在单个配置文件中定义了流管道,允许您指定连接器和处理阶段列表

2)交货保证: 确保数据不丢失,Benthos 中的交货保证级别(如至少一次、最多一次和严格一次)

3)去重: 使用dedupe的field作为去重字段来去重

4)支持自定义转换器: 允许用户使用 Go 代码编写转换器

优势

可以轻松集成到现有的系统中,并且可以使用配置文件进行定制。这使得它非常适合用于数据流处理和转换的场景

开源协议

MIT license

官网

www.benthos.dev

0 阅读:0

研发玩点艰辛事

简介:感谢大家的关注