java
文章平均质量分 72
爱学习的菜鸟罢了
When your talent can not support your ambition, then you should calm down to learn
展开
-
Flink 常见问题排查与任务调优实践
Flink 问题排查 - 作业部署失败 现象:作业无法正常提交与启动 可能成因 确认方法 解决措施 程序包依赖与集群依赖存在版本冲突 日志:NoSuchMethodError/ IncompatibleClassChangeError/ ClassCastException 1.程序包中Flink/Hadoop相关依赖设为provided2.使用...原创 2021-12-11 08:36:51 · 3501 阅读 · 1 评论 -
Flink1.12 flink-conf.yaml配置
1.配置及注释1.1定位flink-conf.yaml是flink的配置文件,优先级在代码和提交参数之后是通用配置1.2注意点flink-conf.yaml中配置key/value时候在“:”后面需要有一个空格,否则配置不会生效。1.3参数解析#==============================================================================# 集群通用配置#==============================原创 2021-11-24 09:25:45 · 6512 阅读 · 0 评论 -
FLINK源码
Flink 1.12.2 源码浅析 : 目录汇总 [持续更新中....]_张伯毅的专栏-CSDN博客转载 2021-11-11 09:21:36 · 267 阅读 · 0 评论 -
Flink维表Join
衡量指标总体来讲,关联维表有三个基础的方式:实时数据库查找关联(Per-Record Reference Data Lookup)、预加载维表关联(Pre-Loading of Reference Data)和维表变更日志关联(Reference Data Change Stream),而根据实现上的优化可以衍生出多种关联方式,且这些优化还可以灵活组合产生不同效果(不过为了简单性这里不讨论同时应用多种优化的实现方式)。对于不同的关联方式,我们可以从以下 7 个关键指标来衡量(每个指标的得分将以 1-..转载 2021-11-05 17:19:14 · 3882 阅读 · 0 评论 -
Flink Streaming Yarn flink-conf.yaml 配置参数
配置参数1.12.5#==============================================================================# Common#==============================================================================# The external address of the host on which the JobManager runs and翻译 2021-11-05 14:53:23 · 2140 阅读 · 0 评论 -
Flink 1.12 状态与容错
概述Checkpoint 使 Flink 的状态具有良好的容错性,通过 checkpoint 机制,Flink 可以对作业的状态和计算位置进行恢复。参考Checkpointing查看如何在 Flink 程序中开启和配置 checkpoint。保留 CheckpointCheckpoint 在默认的情况下仅用于恢复失败的作业,并不保留,当程序取消时 checkpoint 就会被删除。当然,你可以通过配置来保留 checkpoint,这些被保留的 checkpoint 在作业失败或取消时不会..翻译 2021-11-05 11:00:30 · 1401 阅读 · 1 评论 -
腾讯面试,万字攻略详解, offer到碗里来
本文一万字,以非腾讯在职人的身份,来聊腾讯面试的流程、攻略和建议,但愿能助有缘人。标题涉及的范围很广,对多数面试腾讯的人而言,都有参考价值,看完本文之后,必有所得。退一步来讲,即便是准备面试其他公司,也有很多问题是相通的,亦可借鉴,有所广益。从毕业到现在,被别人面试过,也面试过别人,大大小小的面试,一两百次,也算久经沙场。本文分为三个部分,如下:Part1:面试流程Part2:面试攻略Part3:实用建议话不多说,我们一起来感受吧!Part1: 面试流程一. 整体流程转载 2021-11-05 09:51:25 · 1753 阅读 · 0 评论 -
Flink 1.12 Task 故障恢复
当 Task 发生故障时,Flink 需要重启出错的 Task 以及其他受到影响的 Task ,以使得作业恢复到正常执行状态。Flink 通过重启策略和故障恢复策略来控制 Task 重启:重启策略决定是否可以重启以及重启的间隔;故障恢复策略决定哪些 Task 需要重启。Restart Strategies重新启动策略 Fixed Delay Restart Strategy固定延迟重新启动策略 Failure Rate Restart Strategy故障率重新启动策略 No Re...原创 2021-11-04 14:13:35 · 410 阅读 · 0 评论 -
Flink1.12 Streaming TableConfig
在每个 TableEnvironment 中,TableConfig提供用于当前会话的配置项。对于常见或者重要的配置项,TableConfig提供带有详细注释的getters和setters方法。对于更加高级的配置,用户可以直接访问底层的 key-value 配置项。以下章节列举了所有可用于调整 Flink Table 和 SQL API 程序的配置项。注意因为配置项会在执行操作的不同时间点被读取,所以推荐在实例化 TableEnvironment 后尽早地设置配置项。// 实...翻译 2021-11-04 11:01:07 · 1138 阅读 · 0 评论 -
Flink+ClickHouse点击流实时数仓实践经验
Flink和ClickHouse分别是实时计算和(近实时)OLAP领域的翘楚,也是近些年非常火爆的开源框架,很多大厂都在将两者结合使用来构建各种用途的实时平台,效果很好。点击流及其维度建模所谓点击流(click stream),就是指用户访问网站、App等Web前端时在后端留下的轨迹数据,也是流量分析(traffic analysis)和用户行为分析(user behavior analysis)的基础。点击流数据一般以访问日志和埋点日志的形式存储,其特点是量大、维度丰富。以我们一个中等体量的普通电转载 2021-11-04 09:27:31 · 1335 阅读 · 0 评论 -
Flink优化
1、资源配置调优 Flink性能调优的第一步,就是为任务分配合适的资源,在一定范围内,增加资源的分配与性能的提升是成正比的,实现了最优的资源配置后,在此基础上再考虑进行后面论述的性能调优策略。 提交方式主要是yarn-per-job,资源的分配在使用脚本提交Flink任务时进行指定。标准的Flink任务提交脚本(Generic CLI 模式)从1.11开始,增加了通用客户端模式,参数使用-D<property=value>指定。bin/flink...转载 2021-11-04 09:07:08 · 992 阅读 · 0 评论 -
Flink窗口应用代码结构
在流处理应用中,数据是连续不断的,有时我们需要做一些聚合类的处理,例如:在过去的1分钟内有多少用户点击了我们的网页。在这种情况下,我们必须定义一个窗口(window),用来收集最近1分钟内的数据,并对这个窗口内的数据进行计算。Windows 是处理无限流的核心。Windows 将流拆分为有限大小的“桶”,我们可以对其进行计算。Keyed Window // Keyed Window stream .keyBy(...) <...原创 2021-10-30 16:12:46 · 361 阅读 · 0 评论 -
Flink上下游分区算子
原创 2021-10-30 16:01:42 · 272 阅读 · 0 评论 -
FlinkMysqlSource&FlinkMysqlSink
/*** 自定义Mysql Source*/public class CustomerMysqlSourceDemo {public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();// 获得自定义Source对象...原创 2021-10-30 15:55:52 · 461 阅读 · 0 评论 -
Flink1.13 pom.xml配置
<properties> <flink.version>1.13.1</flink.version> <java.version>1.8</java.version> <scala.binary.version>2.11</scala.binary.version> <hadoop.version>2.7.5</hadoop.version> <hbas.原创 2021-10-30 15:49:54 · 2166 阅读 · 0 评论 -
Flink三种提交方式
第一种方式:YARN session 操作步骤 说明 1 yarn-session.sh(开辟资源)+flink run(提交任务) 这种模式下会启动yarn session,并且会启动Flink的两个必要服务:JobManager和Task-managers,然后你可以向集群提交作业。同一个Session中可以提交多个Flink作业。需要注意的是,这种模式下Hadoop的版本至少是2.原创 2021-10-30 15:45:56 · 7943 阅读 · 1 评论 -
FlinkOnYarn架构图
Yarn的客户端需要获取hadoop的配置信息,连接Yarn的ResourceManager。所以要有设置有YARN_CONF_DIR或者HADOOP_CONF_DIR或者HADOOP_CONF_PATH,只要设置了其中一个环境变量,就会被读取。如果读取上述的变量失败了,那么将会选择hadoop_home的环境变量,都区成功将会尝试加载$HADOOP_HOME/etc/hadoop的配置文件。当启动一个Flink Yarn会话时,客户端首先会检查本次请求的资源是否足够。资源足够将会上传包含HDFS...原创 2021-10-30 15:37:08 · 300 阅读 · 0 评论 -
Flink PerJob模式和Application模式的区别
PerJob模式考虑到集群的资源隔离情况,一般生产上的任务都会选择per job模式,也就是每个任务启动一个flink集群,各个集群之间独立运行,互不影响,且每个集群可以设置独立的配置。特点:每次递交作业都需要申请一次资源优点:作业运行完成,资源会立刻被释放,不会一直占用系统资源缺点:每次递交作业都需要申请资源,会影响执行效率,因为申请资源需要消耗时间应用场景:适合作业比较少的场景、大作业的场景Application 模式flink-1.11 引入了一种新的部署模式,..原创 2021-10-30 00:41:33 · 5286 阅读 · 3 评论 -
FlinkHA配置
操作步骤 说明 1 在flink-conf.yaml中添加zookeeper配置 #开启HA,使用文件系统作为快照存储 state.backend:filesystem #默认为none,用于指定checkpoint的data files和meta data存储的目录 state.checkpoints.dir:hdfs://node01:8020/flink-checkpoin...原创 2021-10-30 00:25:27 · 756 阅读 · 0 评论 -
Flink批流一体的理解
在大数据处理领域,批处理任务与流处理任务一般被认为是两种不同的任务,一个大数据框架一般会被设计为只能处理其中一种任务:MapReduce只支持批处理任务;Storm只支持流处理任务;Spark Streaming采用micro-batch架构,本质上还是基于Spark批处理对流式数据进行处理Flink通过灵活的执行引擎,能够同时支持批处理任务与流处理任务在执行引擎这一层,流处理系统与批处理系统最大不同在于节点间的数据传输方式:对于一个流处理系统,其节点间数据传输的标准模型是.原创 2021-10-30 00:21:34 · 2200 阅读 · 0 评论 -
Flink1.13优势一览
1.13包括一系列重要改动使用户可以更好的理解流作业的性能。当流作业的性能不及预期的时候,这些改动可以使用户可以更好的分析原因。这些改动包括用于识别瓶颈节点的负载和反压可视化、分析算子热点代码的 CPU 火焰图和分析 State Backend 状态的 State 访问性能指标。Flink1.13.1其中一些比较重要的修改包括:被动扩缩容 分析应用的性能 瓶颈检测与反压监控 Web UI 中的 CPU 火焰图 State 访问延迟指标 通过Savepoint来切换Sate Back原创 2021-10-30 00:09:15 · 734 阅读 · 0 评论 -
Flink流表转换DEMO
package pressure_measurement;import org.apache.flink.api.common.state.ListState;import org.apache.flink.api.common.state.ListStateDescriptor;import org.apache.flink.api.common.state.ValueState;import org.apache.flink.api.common.state.ValueStateDescri.原创 2021-10-28 07:09:47 · 612 阅读 · 0 评论 -
Flink 运维与调优
1 资源配置调优1.1 内存设置1.2 并行度设置1.2.1 最优并行度计算1.2.2 Source 端并行度的配置1.2.3 Transform端并行度的配置1.2.4 Sink 端并行度的配置1.3 RocksDB大状态调优1.4 Checkpoint设置1.5 使用 Flink ParameterTool 读取配置1.5.1 读取运行参数1.5.2 读取系统属性1.5.3 读取配置文件1.5.4 注册全局参数1.6 压...原创 2021-10-27 13:49:59 · 1254 阅读 · 0 评论 -
1.12 Flink HBase SQL 连接器
之前直接搬了1.14的连接器嫁接了一下,呆胶布HBase 连接器支持读取和写入 HBase 集群。本文档介绍如何使用 HBase 连接器基于 HBase 进行 SQL 查询。HBase 连接器在 upsert 模式下运行,可以使用 DDL 中定义的主键与外部系统交换更新操作消息。但是主键只能基于 HBase 的 rowkey 字段定义。如果没有声明主键,HBase 连接器默认取 rowkey 作为主键。1.1依赖为了使用HBase连接器,使用构建自动化工具(如Maven或SBT)的项目.原创 2021-10-21 22:05:10 · 1359 阅读 · 0 评论 -
Hbase预分区与优化
1. Hbase设计七大原则1.1)每个region的大小应该控制在10G到50G之间;1.2)一个表最好保持在 50到100个 region的规模;1.3)每个cell最大不应该超过10MB如果超过,应该有些考虑业务拆分,如果实在无法拆分,那就只能使用mob;1.4)我们设置一个列族1.5)列族名必须尽量短因为我们知道在存储的时候,每个keyvalue都会包含列族名;1.6)如果一个表存在一个以上的列族,那么必须要注意,不同列族之间行数相差不要太大。例如列族A有10万行原创 2021-10-21 21:59:56 · 2878 阅读 · 0 评论 -
FlinkTable HbaseConnector范例
这个源码也有这个是1.14的,但是1.12要用,还没改connectorname spi不要冲突了/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copy.原创 2021-10-21 21:55:45 · 1325 阅读 · 0 评论 -
FlinkTable ClickhouseConnector范例
package connector.clickhouse.table.catalog;import connector.clickhouse.table.ClickHouseDynamicTableFactory;import connector.clickhouse.table.config.ClickHouseConfig;import connector.clickhouse.table.util.ClickHouseTypeUtil;import connector.clickhou.原创 2021-10-21 21:44:45 · 712 阅读 · 1 评论 -
FlinkTable SocketConnector范例
其实这个源码里有package connector.socket.table;import org.apache.flink.api.common.serialization.DeserializationSchema;import org.apache.flink.api.common.typeinfo.TypeInformation;import org.apache.flink.table.connector.RuntimeConverter.Context;import org.ap原创 2021-10-21 21:37:30 · 411 阅读 · 0 评论 -
Elasticsearch详细架构图
ES,基本功了原创 2021-05-15 10:27:31 · 2252 阅读 · 1 评论 -
Zookeeper详细架构图
Zookeeper详细架构图,针对网上很多不详细原创 2021-05-15 10:19:45 · 1196 阅读 · 0 评论 -
Redis详细架构图
Redis详细架构图,针对网上很多不够详细原创 2021-05-15 10:17:25 · 1629 阅读 · 0 评论 -
java设计模式
模式 宏观是宇宙 微观便是人架构模式专注于创造世界设计模式专注于解决问题的思路故而架构为道,模式为术从抽象层面架构更宏观,它决定的是子系统之间的关系.分层与通讯方式.公共设计原则/风格.功能需求与非功能需求的优先级与取舍原则等.比如 MVC就是一种架构模式.从生产方面架构模式 关注硬件,操作系统,网络环境,包括从立项到维护之间的所有过程(需求,设计,编码,部署,维护,功能迭代等).架构的责任是保证软 件的可用性,可扩展性,可伸缩性,安全等等一系列的指标设计模式 关注...原创 2021-03-09 15:23:58 · 314 阅读 · 0 评论