当前位置: 首页 > news >正文

导航网站怎么做的长春哪里做网站好

导航网站怎么做的,长春哪里做网站好,wordpress图片lazyload,机械加工网名[flume组件(原理上分析零点问题的由来)](#flume_15)[技术细节1](#1_27)[技术细节2](#2_77)[优化](#_200)[小结](#_219)概要 Flume解决零点漂移数据 例如: 7号当天23:59:59的数据分类在7号,而不是因为数据传输的延迟分类在8号. 整体架构流程 javaflume flume组…
+ [flume组件(原理上分析零点问题的由来)](#flume_15)
+ [技术细节1](#1_27)
+ [技术细节2](#2_77)
+ [优化](#_200)
+ [小结](#_219)

概要

Flume解决零点漂移数据

例如:

7号当天23:59:59的数据分类在7号,而不是因为数据传输的延迟分类在8号.

整体架构流程

java+flume

flume组件(原理上分析零点问题的由来)

1.Flume由source+channel+sink组成.
2.Flume数据传输的基本单元,以Event的形式将数据从源头送至目的地。Event由Header和Body两部分组成.
图示:
在这里插入图片描述
解决:取Body的时间更换Header的timestamp
(在source端加拦截器interceptor)
图示:
在这里插入图片描述

技术细节1

Flume配置文件:

#定义组件
a1.sources=r1
a1.channels=c1
a1.sinks=k1#配置source1
a1.sources.r1.type = org.apache.flume.source.kafka.KafkaSource
a1.sources.r1.batchSize = 5000
a1.sources.r1.batchDurationMillis = 2000
a1.sources.r1.kafka.bootstrap.servers = hadoop102:9092,hadoop103:9092,hadoop104:9092
a1.sources.r1.kafka.topics=topic_log
a1.sources.r1.interceptors = i1
a1.sources.r1.interceptors.i1.type = com.cwl.database.flume.interceptor.TimestampInterceptor$Builder#配置channel
a1.channels.c1.type = file
a1.channels.c1.checkpointDir = /opt/module/flume/checkpoint/behavior1
a1.channels.c1.dataDirs = /opt/module/flume/data/behavior1
a1.channels.c1.maxFileSize = 2146435071
a1.channels.c1.capacity = 1000000
a1.channels.c1.keep-alive = 6#配置sink
a1.sinks.k1.type = hdfs
a1.sinks.k1.hdfs.path = /origin_data/database/log/topic_log/%Y-%m-%d
a1.sinks.k1.hdfs.filePrefix = log
a1.sinks.k1.hdfs.round = falsea1.sinks.k1.hdfs.rollInterval = 10
a1.sinks.k1.hdfs.rollSize = 134217728
a1.sinks.k1.hdfs.rollCount = 0#控制输出文件类型
a1.sinks.k1.hdfs.fileType = CompressedStream
a1.sinks.k1.hdfs.codeC = gzip#组装 
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

注意配置中:(拦截器全类名)
a1.sources.r1.interceptors.i1.type = com.cwl.database.flume.interceptor.TimestampInterceptor$Builder

技术细节2

java编写拦截器代码:
依赖:

<dependencies><dependency><groupId>org.apache.flume</groupId><artifactId>flume-ng-core</artifactId><version>1.10.1</version><scope>provided</scope></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.62</version></dependency>
</dependencies><build><plugins><plugin><artifactId>maven-compiler-plugin</artifactId><version>2.3.2</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs></configuration><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>single</goal></goals></execution></executions></plugin></plugins>
</build

代码:

package com.cwl.database.flume.interceptor;import com.alibaba.fastjson.JSONObject;
import org.apache.flume.Context;
import org.apache.flume.Event;
import org.apache.flume.interceptor.Interceptor;
import java.nio.charset.StandardCharsets;
import java.util.Iterator;import java.util.List;
import java.util.Map;public class TimestampInterceptor implements Interceptor {@Overridepublic void initialize() {}@Overridepublic Event intercept(Event event) {//1、获取header和body的数据Map<String, String> headers = event.getHeaders();String log = new String(event.getBody(), StandardCharsets.UTF_8);try {//2、将body的数据类型转成jsonObject类型(方便获取数据)JSONObject jsonObject = JSONObject.parseObject(log);//3、header中timestamp时间字段替换成日志生成的时间戳(解决数据漂移问题)String ts = jsonObject.getString("ts");headers.put("timestamp", ts);return event;} catch (Exception e) {e.printStackTrace();return null;}
}@Override
public List<Event> intercept(List<Event> list) {Iterator<Event> iterator = list.iterator();while (iterator.hasNext()) {Event event = iterator.next();if (intercept(event) == null) {iterator.remove();}}return list;
}**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。****深知大多数大数据工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!****因此收集整理了一份《2024年大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/1a69d537b5f24366741448b72dee2b36.png)
![img](https://img-blog.csdnimg.cn/img_convert/a6271643a2ec1b4f0cf431ee2fd80f33.png)
![img](https://img-blog.csdnimg.cn/img_convert/92c913e7e913b5c1fc74c6f4c674e0cd.png)
![img](https://img-blog.csdnimg.cn/img_convert/8a9b37db8c512ae43bddcfd817533058.png)
![img](https://img-blog.csdnimg.cn/img_convert/91aee20d7131ce9accf656bfdc735366.png)**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上大数据开发知识点,真正体系化!****由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新****如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)**
![img](https://img-blog.csdnimg.cn/img_convert/7d4698000f96744dd25ccfbbcf4a1fb0.png)**一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新****如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)**
[外链图片转存中...(img-YYa29ee3-1712962837543)]**一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
http://www.yayakq.cn/news/50187/

相关文章:

  • 建设银行重庆分行网站采购合同
  • 郑州网站制作wordpress表单设计
  • 网站建设经验seo关键词排名优化系统
  • 创可贴网页设计网站南京网站设计制作排名
  • 设计师网站外网vs2005做的网站转换为2012
  • 有哪些外国网站做精油的合肥室内设计培训学校哪家好
  • 三亚中国检科院生物安全中心门户网站建设名片设计
  • 云优化网站建设专业网络优化
  • 百度做网站电话多少汉化主题 wordpress
  • 免费的网站有哪些平台专业的网站开发
  • 爱做片视频网站做炫光素材的网站
  • 网站域名查询地址腾讯邮箱企业邮箱官网
  • 深圳做微信网站设计城阳建网站
  • 响应式网站psd尺寸天水网站开发
  • 三亚网站建设方案新乡网络公司首选
  • 深圳网站建设黄浦网络 技术差app制作
  • 水务 网站建设去设计公司还是去企业
  • 贵阳seo网站管理织梦网站后台logo删除
  • 网络营销的策略黄埔网站建设优化seo
  • 品牌网站建设解决方案推荐几个设计网站
  • 海南省建设网站的公司电话网站 app开发 财务做帐
  • 做word文档什么网站好公司部门介绍
  • 网站暂时关闭怎么做小程序与app的区别
  • 微信官方网站建设wordpress 文章简介
  • 那个做我女朋友的网站东莞建设网雅园新村第20期名单公
  • 给你一个网站你怎么做的网站优化新闻
  • 成都电子商务网站建设网站制作设计报价
  • 如何建设公司网络营销网站空间设计和室内设计的区别
  • 做门户网站主要技术哪一块淘宝联盟 网站怎么做
  • 网站模板库北京全网推广