Skip to content

数据集成

FlowMQ 提供数据集成能力,支持将 Stream 中的数据实时分发到外部系统(数据库、数据湖、云服务等),也支持将外部系统的数据实时导入到 Stream 中。每一个数据集成任务称为一个 Data Pipeline

什么是 Data Pipeline

Data Pipeline 是 FlowMQ 中数据集成的基本单元。每个 Pipeline 定义了一条数据流转链路,包含:

  • 数据源(Source):数据的来源,可以是 FlowMQ Stream 或外部系统
  • 数据目标(Sink):数据的去向,可以是外部系统或 FlowMQ Stream
  • 数据转换(Transform):可选的中间处理步骤,用于对数据进行过滤、格式转换或字段映射

用户可以创建多个 Pipeline,各 Pipeline 独立运行、互不影响。

数据流向

Stream → 外部系统

将 Stream 中的数据实时同步到外部存储或服务,常见目标包括:

  • 数据库:PostgreSQL、MySQL、MongoDB、ClickHouse、InfluxDB 等
  • 数据湖 / 数据仓库:Snowflake、Databricks、BigQuery、S3 (Parquet/ORC) 等
  • 搜索与分析:Elasticsearch、OpenSearch 等
  • 应用与服务:Webhook、HTTP API、Slack、邮件通知等

外部系统 → Stream

将外部数据源的变更实时捕获并写入 Stream,常见来源包括:

  • 数据库 CDC:捕获 PostgreSQL、MySQL 等数据库的行级变更
  • API 轮询:定期拉取外部 REST API 的数据
  • 文件监听:监控对象存储或文件系统中的新文件

典型用例

  • IoT 数据入湖:设备遥测数据经 Stream 实时写入数据湖,供离线分析与 BI 报表使用
  • 实时数据同步:将业务事件从 Stream 同步到 Elasticsearch,支撑全文检索与实时仪表盘
  • 数据库变更分发:通过 CDC 捕获数据库变更写入 Stream,下游多个系统按需消费
  • 跨系统数据管道:将外部系统的数据导入 Stream,经转换后再分发到其他目标系统

注意事项

  • Pipeline 独立性:各 Pipeline 独立运行,单个 Pipeline 的故障或暂停不影响其他 Pipeline
  • 数据顺序:Pipeline 保持 Stream 分区内的消息顺序,跨分区不保证全局有序
  • 幂等写入:目标系统支持幂等时建议开启,避免重试导致数据重复

FlowMQ