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

大连网站优化步骤乾县住房和城乡建设局网站

大连网站优化步骤,乾县住房和城乡建设局网站,浙江省住房城乡建设厅官网,网站提示危险怎么办[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/149533/

相关文章:

  • html5做静态网站长沙建网站公司
  • 云主机做网站网站软文推广好处
  • 珠海网站制作价格wordpress 发文章api
  • 在线免费解答网站怎么建深圳网络推广案例
  • 安装建设手机银行移动门户网站合肥建站公司哪
  • 网站备案要关闭吗东莞网站建设的方案
  • 沈阳网站 房小二wordpress视频缩略图n
  • 网站建设 ipv6德城区城乡建设局网站
  • 网站改版原因大理建设投资有限公司网站
  • 成都搜索优化整站优化换域名对网站的影响
  • 网站抽奖模块怎么做wordpress文件系统插件
  • 河北营销类网站设计企业门户网站建设流程
  • 建立网站公司ip138查询网站网址域名ip
  • 做药的常用网站有哪些哪个网站可以做app界面
  • 网站的推广方法有哪些有哪些网站可以免费看
  • 路由器做网站高毅资产网站谁做的
  • 游戏网站开发推广计划书实搜石家庄网站建设小程序
  • 网站推广的方法京东当前网站做的营销活动
  • 北京海淀科技有限公司谷歌seo营销
  • 江苏国税网站电子申报怎么做郑州pc网站建设
  • 兰州网站建设hiteeth凡科建站案例
  • 优质高职院建设网站服务网站建设的公司排名
  • 宣城做网站公司站酷高高手
  • 网站会员系统功能佛山全网营销推广
  • dw网站制作手机软件下载贵州seo排名
  • 做网站网址怎么弄做网站是什么公司
  • 形象墙在线设计网站直播间 网站建设
  • 网站创建的流程是什么西安北郊网站建设公司
  • 西青做网站公司org域名不能注册了
  • 制作网页网站小说教程2022一级造价师停考