- 博客(753)
- 资源 (10)
- 收藏
- 关注
原创 【Flink基础】-- 源码中的注解
1.Flink自定义注解级别在升级 Flink版本至 1.15.3时,偶然遇到了一个异常,然后就准备详细了解下源码中的注解。设计注解的初衷:为了更好地进行代码和版本管理,Flink使用了Java的注解特性自定义了注解,对代码进行增强说明。注解的使用场景:提供信息给编译器:编译器可以利用注解来探测错误和警告信息编译阶段时的处理:软件工具可以利用注解信息来生成代码,HTML文档或其他相应处理运行时的处理:某些注解可以在程序运行时接受代码的提取。
2023-01-10 10:53:44
267
原创 【Flume】-- flume metrics 指标说明
目录1.flume_exporter 的下载地址2.指标说明2.1 source监控项2.2 channel监控项2.3 sink监控项GitHub - woozhijun/flume_exporter: Prometheus exporter for flume2重点关注:EventReceivedCount重点关注:EventPutSuccessCount重点关注:EventDrainSuccessCount
2022-12-07 14:05:03
23
原创 【Flink基础】-- Flink Application Mode
但是,该模式下,如果集群中的一个作业行为不正常或导致 TaskManager 宕机,则在该 TaskManager 上运行的所有作业都将受到故障的影响。Application 模式为每个提交的作业创建一个集群,但作业的main()方法将在JobManager上执行,以节省提取job graph所需的CPU周期,也节省客户端下载依赖及将job graph及其依赖关系传送到群集所需的带宽。总之,在 Session 模式下,集群生命周期独立于集群上运行的任何作业,并且集群上运行的所有作业共享集群资源。
2022-10-18 14:45:41
582
转载 【HBase进阶】-- HBase万亿级存储性能优化总结(0.94版本)
8.hbase.hregion.memstore.block.multiplier:默认值2,如果一个memstore的内存大小已经超过hbase.hregion.memstore.flush.size * hbase.hregion.memstore.block.multiplier,则会阻塞该memstore的写操作,为避免阻塞,建议设置为5,如果太大,则会有OOM的风险。2.hbase.master.distributed.log.splitting:默认值为true,建议设为false。
2022-09-19 14:04:43
180
原创 【kafka基础】-- 读写流程及举例
1. 连接到 zk 集群,从 zookeeper 中拿到对应的 topic 的 partition 信息和 partition 的 leader 的相关信息2. 连接到对应的 leader 对应的 broker3. producer 将消息发送到 partition 的leader上4. leader 将消息写入本地 log, follower 从 leader pull 同步消息5. 写入本地 log 后,依次向 leader 返回/发送 ack6. leader 收到所有 replicatio
2022-06-14 15:55:36
791
翻译 【Kafka升级】-- 官方指导及注意事项
感谢英文原文链接: Apache Kafka如果要从2.1.x之前的版本升级,请参阅以下注释,以了解用于存储使用者偏移量的架构的更改。将inter.broker.protocol.version更改为最新版本后,将无法降级到2.1之前的版本。对于滚动升级:2.2.1中的显着变化2.2.0中的显着变化从0.8.x,0.9.x,0.10.0.x,0.10.1.x,0.10.2.x,0.11.0.x,1.0.x,1.1.x或2.0.0升级到2.1.0请注意,2.1.x包含对用于存储使用者偏移量的内部架构的更改。升
2022-06-14 14:29:46
349
原创 [架构设计] -- SQL 还是 NoSQL
1.选取SQL的原因结构化数据 严格的模式 关系型数据 需要复杂的联结操作 事务 清晰的扩展模式 既有资源更丰富:开发者、社区、代码库、工具等 通过索引进行查询非常快2.选取NoSQL的原因半结构化数据 动态或灵活的模式 非关系型数据 不需要复杂的联结操作 存储 TB (甚至 PB)级别的数据 高数据密集的工作负载 IOPS 高吞吐量3.适合 NoSQL 的示例数据埋点数据和日志数据 排行榜或者得分数据 临时数据,如购物车 频繁访问的(“热”)表 元...
2022-04-28 18:37:45
267
原创 [Hive基础]-- Hive table 的压缩方式和存储格式
一、了解 Hadoop 的压缩方式1.Hadoop 的压缩方式的基本信息压缩格式 扩展名 多文件 支持切片 压缩比排行 解压速度排行 工具 hadoop自带 gzip .gz 否 否 2 3 gzip 是 bzip2 .bz2 是 是 1 4 bzip2 是 lzo .lzo 否 是 3 2 lzop 否 snappy
2022-04-06 20:34:29
1878
原创 【Flink基础】-- Flink CDC介绍
一、Flink CDC 是什么? 2020年 Flink cdc 首次在 Flink forward 大会上官宣,由Jark Wu & Qingsheng Ren 两位大佬介绍,原始 blog 点击链接。 Flink CDC connector 可以捕获在一个或多个表中发生的所有变更。该模式通常有一个前记录和一个后记录。Flink CDC connector 可以直接在Flink中以非约束模式(流)使用,而不需要使用类似 kafka 之类的中间件中转数据。...
2022-03-25 16:07:01
17257
1
原创 【大数据】-- Spark 创建 tmp 目录的原因
一、背景 数据流向:Spark 读取 ODPS 数据,然后写入阿里云 OSS。 现象:在使用阿里云 dataworks 调度 Spark 任务时,发现Spark task 全部结束5分钟以后,整体的 job 没有显示 SUCCESSED。于是去查看程序对应的OSS 输出目录,发现 _temporary 目录下的文件正在复制到目标目录,二不是 move 操作,导致花费时间过多。PS:输出到 OSS 的文件数量要合适,太多会导致过多的花费!二、问题 为什...
2022-03-25 10:53:11
1645
原创 【Java基础】-- InputStream to String 的 8 种方法
关于 Java InputStream convert to String 的处理,总结了11种主要方法(见下),请见下面的结果:1、使用 IOUtils.toString (Apache Utils)import org.apache.commons.io.IOUtils;import java.nio.charset.StandardCharsets;String result = IOUtils.toString(inputStream, StandardCharsets.UTF_8)
2022-02-17 14:53:49
814
原创 【Flink】-- flink forward2021 pdf 下载
Flink forward 2021 大会已结束,相关演讲的 pdf 下仔链接,请点击:Flink Forward 峰会 - Flink Forward Asia 2021
2022-01-19 11:44:31
1627
原创 【Flink】-- Flink Forward 2021 大会议题
Flink Forward 2021 即将在北京召开的,共举办2天,大会议程已经提前公布。 有主会场和分会场(行业实践、核心技术、平台建设、实时数仓、实时数据湖、流批一体、开源解决方案、生产实践、机器学习),涉及的内容很多,具体项目请见图片介绍。活动详细介绍请见:https://flink-forward.org.cn/...
2021-12-24 14:34:32
1394
转载 【图数据库】-- Gremlin 常用语法总结
Gremlin是 Apache TinkerPop 框架下的图遍历语言。Gremlin是一种函数式数据流语言,可以使得用户使用简洁的方式表述复杂的属性图(property graph)的遍历或查询。每个Gremlin遍历由一系列步骤(可能存在嵌套)组成,每一步都在数据流(data stream)上执行一个原子操作。Gremlin 语言包括三个基本的操作:map-step:对数据流中的对象进行转换; filter-step:对数据流中的对象就行过滤; sideEffect-step:对数据流进行计
2021-12-03 11:11:57
508
原创 【图数据库】-- Neo4j & JanusGraph
图数据库学习记录1 Neo4j & JanusGraph 21.1. Neo4j 21.1.1 介绍 21.1.2 应用场景 21.1.3 优势 31.1.4 缺点 31.2. JanusGraph 31.2.1 介绍 31.2.2 应用场景 41.2.3 优势 41.2.4 缺点 52 Install 52.1 Neo4j 52.1.1环境 52.1.2 文档 5...
2021-11-30 16:33:26
2511
原创 【k8s基础】-- 常用命令
1、状态查询# 查看集群信息kubectl cluster-info# 查看状态systemctl status kube-apiserversystemctl status kubeletsystemctl status kube-proxysystemctl status kube-schedulersystemctl status kube-controller-managersystemctl status docker# 查询api服务kubectl get apis
2021-10-27 11:41:14
112
原创 【Spark版本更新】--Spark-3.2.0 发布说明
Apache Spark 官方在 2021 年 10 月 13 日发布了 3.2.0 版本,Jira release 页面点击:链接。以下是 Release Notes,供参考:Sub-task[SPARK-26164] - [SQL] 允许 FileFormatWriter 写入多个分区/存储桶而无需排序 [SPARK-26341] - 在 Stages 选项卡中公开阶段级别的执行程序内存指标 [SPARK-26346] - 将镶木地板升级到 1.11.1 [SPARK-26...
2021-10-21 15:56:18
1710
原创 【Flink基础】-- Flink 1.13.2版本发布
Apache Flink 社区在 2021.08.05日发布了 Apache Flink 1.13 系列的第二个修复错误的版本。 此版本包括 127 个修复和小改进。以下的列表包括修正错误和改进。有关所有更改的完整列表,请参考:Error - ASF JIRA。下面来看看部分更新内容: [FLINK-21445] 修复了应用程序模式在构建 PackagedProgram 时不设置配置的问题 [FLINK-22443] 修复了无法在批处理模式下执行极长的 sql的问题 ...
2021-10-18 20:02:15
322
原创 【ElasticSearch基础】-- 日常查询&运维操作
1 日常查询1.1 查询所有索引curl 'http://172.16.2.19:9200/_cat/indices?v'1.2 查看索引信息curl -sXGET "http://172.16.2.19:9200/_cat/indices/user_02?h=i,p,r"列名称:索引名称 主分片 副本个数curl -sXGET "http://172.16.2.19:9200/_cat/indices/test_02"yellow open test_02 V3--Fg
2021-08-20 16:32:04
306
原创 【大数据面试】-- 2021面试题目汇总
前言 结合最近面试经历,整理了一些题目,希望对小伙伴们有帮助。内容1、Java2、Scala3、Spark4、Hive5、Hadoop6、Kafka7、Flink8、算法9、数据结构...
2021-08-20 16:05:51
419
原创 【Kafka基础】-- topic 常用管理命令汇总
1、环境Kafka 版本:2.2.1-cdh6.3.0 Java 版本: oracle jdk 1.82、常用命令2.1、查看Kafka 版本$ kafka-topics --version2.2、创建 topics$ kafka-topics --create --bootstrap-server ky-node1:9092 --replication-factor 1 --partitions 12.3、描述 topics$ kafka-topics --d..
2021-08-11 11:48:48
427
原创 【Spark基础】-- 视图(view)
目录1、视图(view)介绍1.1 定义1.2 作用2、视图的分类3、视图操作4、注意事项5、参考1、视图(view)介绍1.1 定义从一个或多个表导出的虚拟的表,其内容由查询定义。 具有普通表的结构,但不实现数据存储;多表视图一般用于查询,不会改变基本表的数据。1.2 作用操作被简化,把经常使用的数据定义为视图,使用方便。 安全性高,用户对视图不可以随意的更改和删除,可以保证数据的安全性。 逻辑上的独立性,屏蔽了真实表的结构带来的影响,视图可使应用程序和
2021-08-11 10:33:49
1640
原创 【Maven】--如何解决包冲突
1、常见包冲突异常2、包冲突产生的原因3、如何解决包冲突3.1首先要找到冲突的包3.2 解决包冲突1、常见包冲突异常Caused by:java.lang.NoSuchMethodErrorCaused by: java.lang.ClassNotFoundException2、包冲突产生的原因主要考虑 Maven 依赖传递原则,在编译时,编译器会选择低版本的依赖打入 jar 中。(1)最短路径优先原则Maven 面对 D1 和 D2 时,会默认选择最短路径..
2021-07-01 20:14:28
1441
2
原创 【架构选型】-- HBase 、MongoDB、Redis和ES的应用场景选择
HBase、MongoDB、ElasitcSearch和Redis都是 NoSql 数据库,各有千秋,应用场景也不同。1 HBase-2008年初始版本1.1 特点容量大 传统关系型数据库,单表不会超过五百万,超过要做分表分库,不会超过30列。 Hbase单表可以有百亿行、百万列,数据矩阵横向和纵向两个维度所支持的数据量级都非常具有弹性。面向列 面向列的存储和权限控制,并支持独立检索,可以动态增加列,即,可单独对列进行各方面的操作 列式存储,其数据在表...
2021-06-24 12:04:20
1802
翻译 【Flink进阶】-- 监控 checkpoint 指标
概览监控OverviewHistorySummaryConfigurationCheckpoint 详细信息概览Flink 的 Web 界面提供了选项卡/标签来监视作业的 checkpoint 信息。在作业终止后,这些统计信息仍然可用。有四个不同的选项卡可显示有关 checkpoint 的信息:Overview,History,Summary和Configuration。以下各节将依次介绍这些内容。监控Overview概览选项卡列出了以下统计信息。请...
2021-06-22 12:55:03
1426
原创 【数据库】--关键字汇总
经常使用的数据库和对应的关键字汇总1、Hive最新版本:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-Keywords,Non-reservedKeywordsandReservedKeywords2、Flink SQL最新版本:https://ci.apache.org/projects/flink/flink-docs-stable/dev/table/sq.
2021-04-25 18:50:21
518
原创 [Redis基础]-- Linux Redis单节点安装
使用 yum 安装步骤使用编译安装,版本为6.0.81、确认设备是否有 rpm 包$ sudo rpm -qa |grep redis2、下载 redis rpm$ wget http://www6.atomicorp.com/channels/atomic/centos/7/x86_64/RPMS/redis-3.0.7-4.el7.art.x86_64.rpm3、安装$ sudo yum localinstall redis-3.0.7-4.el7.art.x...
2021-04-18 19:50:21
119
原创 【Spark 基础】-- 如何避免 Yarn ApplicationMaster 重启
1、背景某天发现一个 Spark streaming 程序有一批数据丢失,但是 Spark 程序本身没有 kill 。经过排查发现是由于 Yarn applicationMaster 重启导致缺少了一个批次的数据。2、避免 yarn application master 重试的做法设置以下参数:spark.hadoop.yarn.resourcemanager.am.max-attempts=1spark.yarn.maxAppAttempts=1...
2021-01-29 16:15:20
365
原创 【Kafka 基础】-- acks 机制
Kafka producer 的三种 ack 机制Kafka producer 有三种 ack 机制,可以在初始化 producer时在 config 中进行配置举例Properties props = new Properties();props.put("bootstrap.servers", "localhost:9092");props.put("acks", "all");默认值:acks=1以下是相关说明图示:acks=0producer写入 l...
2020-12-29 16:28:38
1397
原创 【Spark 基础】-- 重试级别及说明
1 级别一: ApplicationMaster 重试作用:避免 job 失败一次后,就马上 stop。参数:spark.yarn.maxAppAttempts:默认为yarn.resourcemanager.am.max-attempts的值,如果要设置,需小于它的值 yarn.resourcemanager.am.max-attempts:默认为 2在Spark on Yarn 时,读取 maxAppAttempts 参数和判断该参数的spark源码,代码位于Application...
2020-10-26 14:32:22
3192
原创 【HBase基础】-- HBase 在 HDFS 上的目录说明
1 说明HBase 在 HDFS 上的目录共有 3 部分:根目录、表目录和 Region 目录。2 目录说明2.1 根目录xml 配置:<name> hbase.rootdir</name>默认 “/hbase”(1)/hbase/WALs被 HLog实例管理的WAL文件。## /hbase/WALs/data-hbase.com,60020,1542159360923对于每个HregionServer,日志目录中都包含一个对应的子目录## h.
2020-09-26 16:23:00
670
原创 【HBase 进阶】-- Region 过多的影响 & 合理分区数量
1 背景 最近,在使用 HBase 预分区时,创建的 region 太多 ,集群不堪重负,由此带来了 HBase 的意外宕机。2 一些概念推荐查看此文章:https://www.cnblogs.com/swordfall/p/8737328.html3 Region 数量和大小3.1 Region 数量我的理解:较少的 region 数量能使群集运行的更加平稳,官方建议:每个 regionserver 拥有小于 100 个 region 时集群最稳定。...
2020-07-12 11:17:00
2014
原创 【Java 基础】-- 为什么需要实现 Serializable 接口
1、什么是序列化 序列化:将对象写入到IO流中 反序列化:从IO流中恢复对象 补充: Serializable 是一个空接口,它的目的仅是标识一个类的对象可以被序列化。 Java 提供的一种高效机制:将对象的状态信息转换为可以存储或传输的形式的过程,在序列化期间,对象将其当前状态写入到临时存储区或持久性存储区,之后,便可以通过从存储区中读取或反序列化对象的状态信息,来重新创建该对象。2、什么情况下需要序列化 当你想把的内存中的对象持久化时...
2020-07-05 11:05:23
984
原创 【Java基础】-- list、set 和map 的查询速度
1 背景知识list、set和map的基本介绍如下图:2、猜想在数据量级比较小的情况下(十万以内),查询速度快慢对比: map 、set 、list的速度相差不大。 在数据量比较大的情况下(百万以内),查询速度: map > set > list。3、验证某个集合中是否包含某个元素。3.1 数据量: 9.9万public class TestFindSpeed { public static void main(String[...
2020-06-14 10:22:57
5203
6
原创 【Linux 进阶】-- 定时任务工具(crontab & gocron & tmux)
一、简单介绍crontab:linux 自带、无监控、单节点、无告警 gocron:go 语言开发、有可视化监控界面、多节点、可邮件告警 tmux:yum 安装、无监控、单节点、无告警二、安装本文推荐使用 gocron,故以安装 gocron 为例。2.1 环境centos 7.2 + gocron 1.5.3 + mysql 5.62.2 安装方式【二进制安装】(推荐)、【源码安装】(不推荐)和 【docker安装】(不推荐)2.3 采取二进制安装的步骤2.3.1 .
2020-05-31 10:34:05
717
原创 【Python 基础】-- 使用注释
1、注释分类单行注释:以 # 开头,间隔一个空格后开始写说明示例# 这是一个 python 打印字符串的示例print("hello world")多行注释:python 2.7 以前使用 3 个英文单引号,python 2.7 以后建议使用 3 个英文双引号示例"""这是一个多行注释的示例1、使用双引号"""'''这是一个多行注释的示例1、使用单引号'''2、中文支持如何在 python 代码中支持 中文字符呢?只需要在code 抬头选择以下2
2020-05-26 13:52:12
213
原创 【Spark SQL】-- 集成 ElasticSearch 的相关配置
1.版本Spark: 2.4.0 ES:5.6.122.配置说明https://www.elastic.co/guide/en/elasticsearch/hadoop/5.6/configuration.htmlhttps://www.elastic.co/guide/en/elasticsearch/hadoop/5.6/spark.html3.配置详情/* * Licensed to Elasticsearch under one or more contributor.
2020-05-10 17:57:46
1118
Canal开源产品介绍
2018-08-23
Scala Cookbook
2016-08-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人