数据流触发器概述

数据流触发器是事件框架的指令,用于响应管道中发生的事件以启动任务。例如,在管道将文件写入HDFS之后,可以使用数据流触发器来启动MapReduce作业。或者,您可以在JDBC Query Consumer源处理所有可用数据之后使用数据流触发器来停止管道。

事件框架包含以下组件:

事件生成
事件框架生成与管道相关的事件和与阶段相关的事件。该框架仅在管道启动和停止时才生成管道事件。当发生与阶段相关的特定动作时,框架会生成阶段事件。生成事件的动作因阶段而异,并且与阶段如何处理数据有关。
例如,Hive Metastore目标端会更新Hive Metastore,因此每次更改Metastore都会生成事件。相反,Hadoop FS目标端将文件写入HDFS,因此每次关闭文件时都会生成事件。
事件产生事件记录。与管道相关的事件记录将立即传递给指定的事件使用者。与阶段相关的事件记录在事件流中通过管道传递。
任务执行
要触发任务,您需要一个执行器。执行器阶段在Data Collector或外部系统中执行任务。每次执行者收到一个事件,它都会执行指定的任务。
例如,Hive Query执行器在每次接收到事件时都会运行用户定义的Hive或Impala查询,而MapReduce执行器在收到事件时会触发MapReduce作业。在Data Collector中,Pipeline Finisher执行器在收到事件后停止管道,从而将管道转换为Finished状态。
在Data Collector Edge管道中不可用。 Data Collector Edge管道不支持执行器。
事件存储
要存储事件信息,请将事件传递到目标端。目标端将事件记录与其他任何数据一样写入目标系统。
例如,您可以存储事件记录,以保留对管道源端读取的文件的审核跟踪。