自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(255)
  • 资源 (1)
  • 收藏
  • 关注

原创 FlinkSQL源码解析1--提交任务过程

org.apache.flink.table.api.internal.TableEnvironmentImpl#executeSql @Override public TableResult executeSql(String statement) { List<Operation> operations = getParser().parse(statement); if (operations.size() != 1) { throw n

2024-10-30 00:11:34 1025 1

原创 Kafka中是怎么体现消息顺序性的?

Kafka中是怎么体现消息顺序性的?Kafka只能保证分区内消息顺序有序,无法保证全局有序生产者:通过分区的leader副本负责数据顺序写入,来保证消息顺序性消费者:同一个分区内的消息只能被一个group里的一个消费者消费,保证分区内消费有序为什么做不到全局有序:因为消息会发送到不一样的分区,分区之间发送的顺序是无法保证的如何做到并发且全局有序?解题思路并发可以在发送端并发也可以在消费端并发,并发可以通过多线程发送或消费全局有序需要做到只有一个分区或者数据按顺序发

2020-07-20 10:37:35 2950

原创 大量删除hdfs历史文件导致全部DataNode心跳汇报超时为死亡状态问题解决

目录背景:问题产生过程:问题现象:解决过程:相关日志:其他方案:总结:背景:由于测试环境的磁盘满了,导致多个NodeManager出现不健康状态,查看了下,基本都是data空间满导致,不是删除日志文件等就能很快解决的,只能删除一些历史没有用的数据。于是从大文件列表中,找出2018年的spark作业的历史中间文件并彻底删除(跳过回收站)/usr/loc...

2019-08-20 20:47:37 4477 5

翻译 Hive 快速上手--官网中文翻译

目录安装和配置从一个稳定的发行版安装Hive编译Hive源码编译主干的Hive编译分支branch-1在Hadoop 0.20上在0.13之前编译Hive在Hadoop 0.23上在0.13之前编译Hive(Ant)运行Hive运行Hive CLI运行HiveServer2 和 Beeline运行HCatalog运行WebHCat (Temp...

2019-04-30 17:52:22 1678

原创 从Hive的日志文件超大引出磁盘满问题并追踪出NameNode 安全模式的问题与处理

目录发现NameNode安全模式问题初步判断是磁盘满导致安全模式NameNode安全模式解释补充解释尝试重启DataNode重启NameNode总结发现NameNode安全模式问题一次偶然的机会,准备看下Hive的版本,发现无法执行hive脚本,发现Hive命令无法正常进入hive命令行,报错信息如下:ls: cannot access /usr...

2019-04-29 17:32:43 1836

转载 【ClickHouse】0:clickhouse学习3之时间日期函数

官方文档: 时间日期函数 | ClickHouse Docsnow() // 2020-04-01 17:25:40 取当前时间toYear() // 2020 取日期中的年份toMonth() // 4 取日期中的月份today() // 2020-04-01 今天的日期yeste

2024-11-30 22:06:18 233

转载 SpringBoot 使用 FTP 操作文件

使用 SpringBoot 配置 FTP 服务器,上传、删除、下载文件。

2024-11-11 15:37:26 130

转载 k8s问题记录 - 机器重启后无法连接(The connection to the server :6443 was refused - did you specify the right host

我此次产生6443报错问题的原因是:检查pod时候,发现所有pod都已宕掉,都是notReady状态,尝试了重启etcd、重启containerd、重启kubelet,都未能解决。猛然间想起来查看SELinux的状态,发现SELinux没有关闭,是permissive状态,所以导致重启机器,重启etcd、重启containerd、重启kubelet均无法重新拉起k8s集群。6443 是api-server监听的端口,master节点6443请求不通。

2024-11-06 23:19:18 591

转载 Filnk实时数仓(Prometheus监控)

Prometheus社区还提供了大量第三方实现的监控数据采集支持:JMX,CloudWatch,EC2,MySQL,PostgresSQL,Haskell,Bash,SNMP,Consul,Haproxy,Mesos,Bind,CouchDB,Django,Memcached,RabbitMQ,Redis,RethinkDB,Rsyslog等等。在Prometheus的架构设计中,Prometheus Server并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。

2024-11-03 11:36:10 111

原创 删除Windows11的环境变量

今天出现Flink的配置文件路径的环境变量在电脑-》属性-》高级系统设置--》环境变量中添加完以下环境变量后,环境变量查看还是有。

2024-09-29 12:36:39 215

原创 Java类加载器双亲委托模型概述

双亲委派模型的工作过程是:如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器去完成,每一个层次的类加载器都是如此,因此所有的加载请求最终都应该传送到最顶层的启动类加载器中,只有当父加载器反馈自己无法完成这个加载请求(它的搜索范围中没有找到所需的类)时,子加载器才会尝试自己去完成加载。3)否则,将Import列表中的类,委派给Export这个类的Bundle的类加载器加载。4)否则,查找当前Bundle的ClassPath,使用自己的类加载器加载。

2024-09-01 14:12:43 798

转载 YARN, MR History Server和Spark History Server三者的区别:

这时因为,不同的计算模型,其计算task的模式是完全不同的, MR是分map和reduce的, Spark是分stage的, 完全不同,当然需要自己的history server。而YARN中的history server,其实是针对MR的,并非是针对YARN通用平台的服务。上面说到, 虽然spark和MR的模型不同,都有自己的historyserver, 但是有一个是相通的,就是都是在YARN上运行, 每个container有统一的日志存放地址;

2023-03-20 14:33:06 526

转载 Doris SQL 原理解析

本文主要介绍了Doris SQL解析的原理。重点讲述了生成单机逻辑计划,生成分布式逻辑计划,生成分布式物理计划的过程。对应于代码实现是Analyze,SinglePlan,DistributedPlan,Schedule四个部分。Analyze负责对AST进行前期的一些处理,SinglePlan根据AST进行优化生成单机查询计划,DistributedPlan将单机的查询计划拆成分布式的查询计划,Schedule阶段负责决定查询计划下发到哪些机器上执行。由于SQL类型有很多,本文侧重介绍查询SQL的解

2023-03-02 23:42:48 1015 1

原创 Hutool实现按周、月、季度、半年、一年、今年以来统计

Hutool实现按周、月、季度、半年、一年、今年以来统计

2022-09-19 19:25:33 4152

转载 Spark executor中task的数量与最大并发数

根据类DAGScheduler中的submitMissingTasks方法可以知道,在stage中会为每个需要计算的partition生成一个task,换句话说也就是每个task处理一个partition。

2022-08-02 10:06:33 1564

转载 Hadoop文件存储格式(Avro、Parquet、ORC及其他)

相比TEXTFILE和SEQUENCEFILE,RCFILE由于列式存储方式,数据加载时性能消耗较大,但是具有较好的压缩比和查询响应。数据仓库的特点是一次写入、多次读取,因此,整体来看,

2022-07-30 20:01:42 4073

转载 ​TPC-H数据导入MySQL教程​

TPC-H是TPC提供的一个benchmark,用来模拟一个现实中的商业应用,可以生成一堆虚构的数据,且自带一些查询,可以导入到各种数据库中来模拟现实需求,检查性能。具体是怎样的数据见:http://www.tpc.org/tpch/spec/tpch2.16.0.pdf...

2022-07-28 20:32:46 1427 2

转载 TPC-C 、TPC-H和TPC-DS区别

TPC-C:TPC Benchmark C于1992年7月获得批准,是一个在线事务处理(OLTP)基准。 与TPC-A等以前的OLTP基准测试相比,TPC-C更复杂,因为它具有多种事务类型,更复杂的数据库和整体执行结构。 TPC-C涉及五个不同类型和复杂性的并发事务的混合,这些事务可以在线执行或排队等待延迟执行。 该数据库由九种类型的表组成,具有广泛的记录和人口规模。 TPC-C以每分钟事务数(tpmC)衡量。 虽然基准描述了批发供应商的活动,但TPC-C并不限于任何特定业务领域的活动,而是代表必须管理

2022-07-20 23:15:01 3720

转载 Antlr4简易快速入门

Antlr4简易快速入门1. 简介Antlr (ANother Tool for Language Recognition) 是一个强大的跨语言语法解析器,可以用来读取、处理、执行或翻译结构化文本或二进制文件。它被广泛用来构建语言,工具和框架。Antlr可以从语法上来生成一个可以构建和遍历解析树的解析器。2. 谁在使用Hive Spark Oracle Presto Elasticsearch3. 常见的语法分析器Antlr Javacc SqlParser (位于Alib

2022-04-08 09:31:19 2660

翻译 MySQL8.0 GTID 格式和存储

GTID 格式和存储全局事务标识符 (GTID) 是在源服务器(源)上创建并与提交的每个事务相关联的唯一标识符。这个标识符不仅对于它起源的服务器是唯一的,而且在给定的复制拓扑中的所有服务器中都是唯一的。GTID 分配区分在源上提交的客户端事务和在副本上复制的复制事务。当客户端事务在源上提交时,它会被分配一个新的 GTID,前提是该事务已写入二进制日志。保证客户端事务具有单调递增的 GTID,生成的数字之间没有间隙。如果客户端事务没有写入二进制日志(例如,因为事务被过滤掉,或者事务是只...

2022-02-09 11:09:02 588

转载 hbase行键过滤器RowFilter

RowFilter是用来对rowkey进行过滤的,比较符如下: Operator Description LESS 小于 LESS_OR_EQUAL 小于等于 EQUAL 等于 NOT_EQUAL 不等于 GREATER_OR_EQUAL 大于等于 .

2021-12-16 18:02:17 1059

转载 Spark executor中task的数量与最大并发数

关于executor和task的概念可以参考官方文档本文使用的源码是spark 2.0.0版本Task的数量根据类DAGScheduler中的submitMissingTasks方法可以知道,在stage中会为每个需要计算的partition生成一个task,换句话说也就是每个task处理一个partition。//From submitMissingTasks...... val tasks: Seq[Task[_]] = try { stage match {

2021-10-16 16:31:18 1338

转载 CDH端口汇总

service name parameter port number HBase REST Server Port hbase.rest.port 20550 HBase REST Server Web UI Port hbase.rest.info.port 8085 HBase Thrift Server Port hbase.regionserver.thrift.port 9090 HBase Thrift Server Web UI

2021-10-03 11:38:35 670

转载 hadoop(原生及CDH发行版)关键目录、配置文件及服务对应文件名详解

四个最主要的配置文件(原生版本位于$HADOOP_HOME\etc\hadoop目录):mapred-site.xmlcore-site.xmlhdfs-site.xmlyarn-site.xml在CDH发行版中,各目录下的配置及文件及其含义如下:1. 相关目录 /var/log/cloudera-scm-installer : 安装日志目录。/var/log/* : 相关日志文件(相关服务的及CM的)。/usr/share/cmf/ : 程序安装目录。/usr/lib64/cmf..

2021-10-02 22:02:03 1096

转载 日志切割之Logrotate

日志切割之Logrotateposted @2018-05-18 09:54惨绿少年 阅读(54458) 评论(4)编辑收藏举报分类:其他,运维基本功,日常undefined1、关于日志切割  日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会增长极快,服务器会很快消耗磁盘空间,这成了个问题。除此之外,处理一个单个的庞大日志文件也常常是件十分棘手的事。  logrotate是个...

2021-09-30 16:20:22 388

转载 flink solt和并行度

编译flink-shaded-hadoop-2-uber.jar包从Flink 1.10开始,flink-shaded-hadoop-2-uberFlink项目不再正式支持使用发行版。如果想建立flink-shaded对供应商特定的Hadoop版本,您必须首先描述配置特定供应商的Maven仓库在本地Maven安装在这里。完成此步骤后,将flink-shaded-hadoop-2-uber.jar放入Flink下的/lib目录中。编译环境Flink1.10 Hadoop2.7.7

2021-09-07 23:16:55 537

转载 LSM、B 树、B+树、B*对比

参考B树、B+树、LSM树以及其典型应用场景B树和B+树的插入、删除图文详解BTree vs LSM0. 前言动态查找树主要有:二叉查找树、平衡二叉树、红黑树、B树、B+树。前面三种是典型的二叉查找树,查找的时间复杂度是O(log2N)。涉及到磁盘的读写(比如每个节点都需要从磁盘获取),读写的速度就与树的深度有关系,那么降低树的深度也就可以提升查找效率。这时就提出了平衡多路查找树,也就是B树以及B+树。B树和B+树非常典型的场景就是用于关系型数据库的索引(MySQL)1. B类树1.

2021-09-02 17:55:43 451

原创 解决Yarn中任务信息存储过多导致任务失败的问题

问题现象Hadoop集群的任务提交不上去,一直失败集群资源未出现资源不足的情况查看日志RM出现zk相关报错active的ResourceManager的日志报往zk存储任务状态的时候失败,等待调度器丢弃相关事件2021-08-26 14:53:13 ERROR org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore:857 - State store operation failed java.io.IOExc

2021-08-30 11:50:21 4222

转载 Yarn RM写ZNode超数据量限制bug修复

Yarn RM写ZNode超数据量限制bug修复问题背景线上集群出现过几次 Yarn RM 写 ZK ZNode 的数据量超过 ZNode 限制,导致 RM 服务均进入 Standby 状态,用户无法正常提交任务,整个集群 hang 住,后续排查发现主要是异常任务写 ZNode 数据量太大,超过 ZNode 限制,导致集群其他提交作业的状态信息无法正常写入 ZNode,为避免类似问题再次出现,我们对 RM 写 ZNode 逻辑进行了优化,规避异常任务对整个集群造成的雪崩效应。一、问题复现最直

2021-08-30 11:47:00 751

转载 Fluentd日志采集使用教程

fluentd是何方神圣fluentd是一个实时的数据收集系统,不仅可以收集日志,还可以收集定期执行的命令输出和HTTP请求内容。数据被收集后按照用户配置的解析规则,形成一系列event。每一个event包含如下内容:tag = xxxtime = xxxrecord = { "key1": "value1", "key2": "value2"}其中:tag:为数据流的标记。fluentd中可以具有多个数据源,解析器,过滤器和数据输出。他们之前使用tag来对应.

2021-06-04 14:33:17 7383

翻译 Fluentd 缓冲区设置

缓冲区配置Fluentd输出插件支持< buffer >部分来配置事件的缓冲。缓冲由Fluentd内核处理。缓冲区概述缓冲区位于<match>部分之下。它为那些支持缓冲输出特性的输出插件启用。<match tag.*> @type file # ... <buffer> # ... </buffer>​ # <buffer> section can only be configured o.

2021-06-04 14:18:30 4044

翻译 Fluentd:用Hadoop收集数据(HDFS)

用Hadoop收集数据(HDFS)本文解释了如何使用Fluentd的WebHDFS输出插件将半结构化日志聚合到Hadoop HDFS中。背景Fluent是一个高级的开源日志收集器,最初是由Treasure Data公司开发的。Fluent是专门为解决大数据日志收集问题而设计的。许多用户正在使用Fluentd和MongoDB,并发现它目前无法很好地扩展。 HDFS (Hadoop)是存储和处理大量数据的自然选择。除了Java库之外,它还支持一个名为WebHDFS的HTTP接口。 本文将向您展示如何

2021-06-03 15:27:53 427

转载 linux tar压缩排除指定文件夹

linux tar压缩排除指定文件夹一般直接用tar命令打包很简单,直接使用tar -zcvf test.tar.gz test即可。在很多时候,我们要对某一个目录打包,而这个目录下有几十个子目录和子文件,我们需要在打包的时候排除其中1、2个目录或文件。这时候我们在用tar命令打包的时候,增加参数--exclude就能达到目的。例如:我们以tomcat 为例,打包的时候我们要排除 tomcat/logs 目录,命令如下:tar -zcvf tomcat.tar.gz --ex...

2021-05-24 10:30:55 1934

原创 livy(0.5) on zeppelin(0.8)报No YARN application is found with tag问题解决

文章目录环境信息代码报错livy日志报No YARN application is found with tag排查尝试远程调试远程调试步骤远程调试结果尝试修改超时参数转换思路:发现不在同一个机房的网络总结环境信息livy(0.5) on zeppelin(0.8)代码%livysc.range(1,10).sum()报错livy日志报No YARN application is found with tag21/05/13 15:34:41 INFO RSCClient: Failin

2021-05-17 09:57:43 1267

原创 Idea 远程调试Livy Server

Idea 远程调试Livy ServerLivyServer配置修改conf/livy-env.sh添加LIVY_SERVER_JAVA_OPTSLIVY_SERVER_JAVA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=57777"IDEA配置创建remote连接填写host和port,idea自动生成(-agentlib:jdwp=transport=dt_socket,server=y,sus

2021-05-14 18:13:23 364

原创 一次MR作业Task数过多导致的集群阻塞的问题排查

一次MR作业Task数过多导致的集群阻塞的问题排查问题背景集群出现一百多个任务排队,运行中的任务一百多个,bi的同事反馈大量任务延迟一万多秒以下截图不全排查问题通过RM页面、spacex的监控、active的RM机器的负载和日志观察,确认ResourceManager目前状态正常通过spacex的app监控发现集群在早上8.45的时候提交大量的任务阻塞的任务基本都跑在root.bi_queue.bi_base 这个队列中,这个队列资源基本满了大概排查方向确认增加了大量任务导致集群资

2021-05-11 15:28:35 987

转载 彻底搞清分库分表(垂直分库,垂直分表,水平分库,水平分表)

分库分表是什么下边以电商系统中的例子来说明,下图是电商系统卖家模块的表结构:通过以下SQL能够获取到商品相关的店铺信息、地理区域信息:SELECT p.*,r.[地理区域名称],s.[店铺名称],s.[信誉]FROM [商品信息] p LEFT JOIN [地理区域] r ON p.[产地] = r.[地理区域编码]LEFT JOIN [店铺信息] s ON p.id = s.[所属店铺]WHERE p.id = ?随着公司业务快速发展,数据库中的数据量猛增,访问性能也变慢了,优化

2021-02-02 22:11:17 401

原创 hive备份建表语句并批量建表

脚本内容如下: #!/bin/bash##获取数据库databases=$(hive -e "show databases; exit;")for database in $databases;do #获取hive建表语句 tables=$(hive -e "use $database; show tables;") for table in $tables; do echo "--=========== db: $database

2021-01-29 19:43:22 920

原创 windows统计各个目录的大小

下载git bash 通过 du -sh *|sort -ntr 统计各个目录的大小

2021-01-06 11:13:19 3641

原创 提交依赖第三方Source的Flink作业时报NoClassDefFoundError问题解决

报错信息java.lang.NoClassDefFoundError: org/apache/flink/streaming/connectors/wikiedits/WikipediaEditsSource at com.hadoops.jackson.flink.demo.WikipediaAnalysis.main(WikipediaAnalysis.java:34) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

2020-12-24 18:04:58 1754 2

统计hdfs占用空间较大的作业目录支持自定义目录和topN数的脚本

大数据运维的好工具,提供topN数量和目录,输出占用hdfs空间较大的作业列表,较快的排查与处理hdfs占用空间较大的作业导致集群满的问题

2021-02-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除