- 博客(24)
- 收藏
- 关注
原创 HDFS存储策略优化详解
HDFS默认3副本策略虽然可靠性高,但会带来200%的冗余空间浪费,Hadoop 3.x引入纠删码(Erasure Coding)替代传统副本策略,可节省约50%存储空间。策略可大幅提升性能:数据先写入RAM_DISK(内存盘),内存空间不足后再异步落盘到HDD,某实时推荐系统应用后,写入吞吐量提升2.1倍。保障数据读取性能、成本比ALL_SSD低50%混合存储:1块数据放SSD+其他放HDD。仅一个副本放SSD,其余放HDD。冷数据(历史归档、几乎不访问)热数据(频繁访问、核心业务)温数据(低频次访问)
2026-06-11 16:30:15
223
原创 hdfs核心参数调优详解(纯干货)
连接问题优先排查入口配置:遇到或错误,首先检查配置是否正确,企业级场景建议明确添加参数指定HDFS文件系统实现类。写入性能优化:多线程写入场景将设置为线程数的1.5-2倍(典型值16),可降低连接竞争导致的写入延迟。回收站配置:建议开启HDFS回收站,将设置为1440(即1天自动清理),避免误删除数据无法恢复。
2026-06-10 09:12:26
348
原创 HDFS I/O瓶颈定位及优化
定位HDFS I/O瓶颈的核心在于区分是“硬瓶颈”(磁盘/网络物理极限)还是“软瓶颈”(配置/架构不合理)。先用iostat和TestDFSIO确定是磁盘慢还是整体吞吐低。若磁盘忙,优化RAID、更换SSD或均衡数据分布。若磁盘不忙但吞吐低,优化TCP参数、增加Handler线程数或开启短路读。若NameNode响应慢,治理小文件或扩容NameNode内存。
2026-06-09 16:54:37
225
原创 Flink SQL 中的数据倾斜解决方案
监控定位:通过 Web UI 确认是否存在倾斜,识别是哪个算子(Source, Join, Agg)出问题。参数调优:优先开启mini-batch和,这是成本最低且效果显著的手段。SQL 改写:若是,确保开启 distinct split。若是普通GROUP BY倾斜,尝试手动加盐两阶段聚合。若是JOIN倾斜,判断是否可用 Broadcast Join,否则采用分流或加盐策略。资源调整:检查并行度设置,确保数据源分区与算子并行度匹配,必要时增加并行度。源头治理。
2026-06-09 16:17:42
371
原创 flink 1.17反压识别和调优
定位:通过 Web UI 找到第一个状态为 HIGH 的算子。分析:查看该算子的 CPU/GC 监控:是否资源耗尽?查看 数据倾斜:各 Subtask 处理记录数是否均匀?查看 火焰图:代码哪部分耗时最长?解决:若是倾斜 -> 加盐或调整 Key。若是代码慢 -> 优化 UDF 或改用 Async I/O。若是资源缺 -> 增加并行度或内存。若是 Sink 慢 -> 优化写入逻辑或增加 Sink 并行度。验证。
2026-06-08 10:57:35
198
原创 flink1.17 RocksDB调优【纯干货】
硬件基础: 确保使用本地 NVMe SSD。基本配置: 启用增量 Checkpoint () 和托管内存 (写优化: 根据吞吐调整(128MB+) 和count(3-4)。读优化: 调整(32KB) 和开启动态层级 (监控验证: 通过 Web UI 的 RocksDB 指标验证调优效果,避免盲目调整。
2026-06-08 10:28:48
379
原创 flink taskmanager 内存模型及内存调优案例
优先配置 Process Size:在 K8s/YARN 环境下,直接设置,让 Flink 自动计算内部各部分内存,避免手动配置冲突。预留安全余量:容器环境的内存限制应比略大(或依靠 Flink 自身的 Overhead 机制),防止因瞬时峰值被系统 Kill。监控驱动调优:利用 Flink Web UI 的 Metrics 标签页,重点关注以及。开启 GC 日志 (),分析 GC 停顿时间。批流差异对待:流作业。
2026-06-04 16:03:18
437
原创 linux安装yum install -y ipset ipvsadm ipset-libs失败解决方案
NXDOMAIN 错误表明 DNS 服务器明确告知该域名不存在。这是因为 CentOS 7 已于 2024 年 6 月 30 日停止维护(EOL),其官方镜像列表域名 mirrorlist.centos.org 已被正式移除或重定向失效。你无法通过修复 DNS 来解决这个问题,因为域名本身已不再服务于 CentOS 7。唯一的解决方案是将 YUM 源更换为归档源(Vault)或国内镜像站的 CentOS 7 备份源。请按照以下步骤操作,彻底解决该问题:1. 备份原有配置(必须执行)
2026-05-20 10:23:11
52
原创 flink 任务rocksDB性能优化
关注指标:rocksdb.block-cache-hit-rate(缓存命中率,越高越好)、rocksdb.num-running-compactions(正在进行的压缩任务数)、rocksdb.mem-table-flush-pending(等待刷盘的 MemTable 数)。RocksDB 的调优核心在于平衡读放大、写放大和空间放大,并根据硬件资源(特别是 SSD 性能和内存大小)调整内存分配。说明:启用动态层级大小调整,有助于减少空间放大和写放大,特别是在状态大小变化较大的场景中。
2026-05-13 16:55:42
409
原创 linux 性能分析命令实战--CPU 密集型进程模式实战【纯干货】
P ALL 表示监控所有CPU,后面数字2表示间隔2秒后输出一组数据Linux 3.10.0-693.el7.x86_64 (master) 2026年05月09日 _x86_64_ (1 CPU)15时49分33秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle。
2026-05-09 15:59:24
359
原创 linux 性能分析工具pidstat使用详解及案例【纯干货】
pidstat 是一个常用的进程性能分析工具,用来实时查看进程的 CPU、内存、I/O 以及上下文切换等性能指标;pidstat 的用法:pidstat [ 选项 ] [ <时间间隔> ] [ <次数> ]常用的参数:-u:默认的参数,显示各个进程的cpu使用统计-r:显示各个进程的内存使用统计-d:显示各个进程的IO使用情况-p:指定进程号-w:显示每个进程的上下文切换情况-t:显示选择任务的线程的统计信息外的额外信息TASK表示报告独立的task;
2026-05-09 15:30:44
316
原创 利用ConcurrentHashMap实现缓存
/将值放入临时缓存中,若临时缓存溢出,则将临时缓存中全部取出放入固定缓存中,同时清空临时缓存,并将新加入的值放入临时缓存中。//根据某Key获取相对应的值,先从临时缓存中查找,若不存在则去固定缓存中查找,若存在则将查到的值放入到临时缓存中。//边界缓存or临时缓存。//清空缓存中某个key和value先清空缓存中的值然后清除固定缓存中的值。
2026-04-30 14:13:08
226
原创 HDFS 高可用(HA)环境搭建(纯干货)
- 指定hdfs的命名服务,需要和core-site.xml中的保持一致 -->-- 指定NameNode的元数据在JournalNode上的存放位置 -->-- 配置 root 用户可以访问 hdfs -->-- nn1的http通信地址 -->-- nn2的http通信地址 -->-- 配置失败自动切换实现方式 -->-- nn1的RPC通信地址 -->-- nn2的RPC通信地址 -->-- 配置故障切换脑裂解决方案-->--关闭 HDFS 的权限检查 -->
2026-04-30 13:52:17
301
原创 java版用 Flink SQL 搭建一个从Kafka实时统计应用程序【纯干货】
摘要:本文展示了使用Flink SQL处理Kafka订单数据的完整流程。首先创建了一个包含时间戳、用户ID和金额的订单表,配置了5秒水位线延迟,并指定Kafka连接参数。随后通过SQL客户端执行1分钟滚动窗口聚合查询,统计每分钟销售总额。查询结果显示2026-04-08 15:50至15:53期间三个时间窗口的销售金额分别为45.0、290.0和245.0。整个过程演示了Flink SQL实时处理流数据的能力,包括表定义、数据源连接和时间窗口聚合操作。
2026-04-08 15:55:11
379
原创 java 版flink模拟生成订单数据写入kafka小程序【纯干货】
/ 生成一个随机整数,范围从0(包含)到100(不包含)// 订单下单时间戳(当前时间)// 计算时间差(以毫秒为单位)* flink 模拟生成订单数据,发生至kafka中,并验证。// 创建自定义Source生成订单数据。// 获取第二个时间点。// 将时间差转换为秒。// 每秒生成一个订单。// 自定义Source生成订单数据。
2026-04-08 15:20:52
203
原创 java版Flink关联查询小程序【纯干货】
DataStreamSource<Tuple3<String, String, String>> ds1= env.fromElements(Tuple3.of("1001","张三","男"),Tuple3.of("1002","李四","女"),Tuple3.of("1003","王五","女"));在 Flink 中实现关联查询(Join Operation),尤其是在处理实时数据流时,是非常重要的功能。// 创建一个模拟的数据流。// 创建一个模拟的数据流。// 设置流执行环境。
2026-04-07 10:33:53
336
原创 hadoop配置文件详解-hdfs-site.xml篇【纯干货】
当dfs.datanode.fsdataset.volume.choosing.policy属性设置为org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy时使用。例如dfs.namenode.handler.count属性值为100,并且dfs.namenode.lifeline.handler.ratio属性的值设置为0.10,则有10个线程用于处理lifeline rpc服务。
2026-04-07 10:04:23
331
原创 Linux系统中负载过高问题的排查及解决方案【纯干货】
Load Average(负载平均值)是一个用于衡量系统负载的指标,它表示一段时间内处于活跃状态的进程数目。一般来说,系统的负载值应该维持在一个合理的范围内,以确保系统能够正常运行并提供良好的响应时间。理想情况下,负载值应该小于系统的CPU核心数,但具体的适宜值取决于系统的用途和配置。什么是负载Load Average(负载平均值)是一个用于衡量系统负载的指标,它表示一段时间内处于活跃状态的进程数目。Load Average通常用三个值来表示,分别对应于过去1分钟、5分钟和15分钟的平均值。
2026-04-03 15:05:06
386
原创 Hadoop-HA集群搭建
注:这5台服务器已经配置好了JDK1.8、Zookeeper、mysql-5.6等必备工具及基本环境,这些基础配置以及Hive在这里不作介绍!正常情况下集群会把另一台namenode的standby状态自动切换为active状态 至此Hadoop-HA高可用集群配置完毕!⑤ 测试远程登录(任意服务器之间进行登录操作验证,如果能直接登录到对方服务器就表示配置OK!② 将每一台服务器生成的密钥整合到同一台服务器(每一台服务器上执行)③ 将整合成功的密钥分发到其它几台服务器。① 在各服务器上生成密钥。
2026-04-03 09:50:56
334
原创 java版 flink aggregate函数应用小程序【纯干货】
"4000,d", // 迟到数据,第4秒的数据在第5秒之后到达。"5000,e", // 第5秒 (跳过第4秒)"14000,n", // 第14秒。"15000,o", // 第15秒。"16000,p", // 第16秒。"17000,q", // 第17秒。"18000,r", // 第18秒。"19000,s", // 第19秒。"11000,k", // 第11秒。"13000,m", // 第13秒。
2026-04-02 14:50:11
205
【云计算与容器编排】基于Kubernetes的集群部署技术:CentOS环境下高可用容器化应用管理平台构建
2026-04-03
【小学数学教育】三年级下册应用题分类解析:涵盖除法乘法面积年月日小数综合问题训练
2026-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅