所有events,增加头,类似json格式里的"headers":{" key":" value"} 时间戳(头部插入时间戳)、主机(头部插入主机名和IP)、静态(头部插入指定KV)、正则过滤(留下符合条件的)、自定义 拦截器作用 1)ETL拦截器:轻度清洗,过滤出Json格式不完整的数据 2)时间拦截器:提取日志时间作为分区的依据,避免零点漂移问题 自定义拦截器步骤 1)实现Interceptor 2)重写方法 (1)initialize初始化方法 (2)public Event intercept(Event event) 处理单个Event (3)public List intercept(List events) 处理多个Event,在这个方法中调用Event intercept(Event event) (4)close方法 3)静态内部类,实现Interceptor.Builder 4)打包,上传至flume/lib目录下 5)在配置文件中关联:全类名 + $builder 拦截器可以不用吗? 可以不用,在hive的dwd层或sparkStream中处理即可,也可以用,但会影响性能,不推荐用在实时性高的场景
hive外部表是使用external关键字并指定一个hdfs目录创建的表。hive内部表在创建时会在对应hive目录下创建相应的文件夹,外部表则以指定文件夹为...详情>>
2022-09-02 17:21:00Checkpoint是为runtime准备的,Savepoint 是为用户准备的。Checkpoint 机制的目标在于保证Flink作业意外崩溃重启不影响exactly once 准确性,通...详情>>
2022-09-02 16:59:22State:指一个具体的Task/Operator的状态。State可以被记录,在失败的情况下数据还可以恢复,Flink中有两种基本类型的State: Keyed State, Op...详情>>
2022-09-02 16:59:19Flink 内部是基于producer-consumer模型来进行消息传递的,Flink的反压设计也是基于这个模型。Flink 使用了高效有界的分布式阻塞队列,就像 Jav...详情>>
2022-09-02 16:59:16虽说水位线(Watermark)表明早于它的事件不应该再出现,但是接收到水位线以前的的消息是不可避免的,这就是所谓的迟到事件。实际上迟到事件是乱...详情>>
2022-09-02 16:59:00