GBase 8a之快速扫描存在空洞表的方法 详解
主要解决问题1传统GBase8a数据库扫描空洞表需要扫描元数据表效率较低。2filefrag只读取操作系统元数据效率较高。使用方式1将脚本部署在一个复合节点的/home/gbase/sweep下2修改参数usergbase passwd****** threads_num2 #并发数 suffixn1 #一般只查一个分片即可 avg_sum2 #一般每个分片文件2个以上碎片即认为有空洞3直接运行脚本 sh sweep.sh验证效果程序会自动在/home/gbase/sweep/log下创建若干找到的表的名称(命名方式) 库名.表名参考文件#!/bin/bash #author: Bryan zhao #date: 2025-07-29 usergbase passwd****** threads_num2 #并发数 suffixn1 #一般只查一个分片即可 avg_sum2 #一般每个分片文件2个以上碎片即认为有空洞 tb.list if [ ! -d pwd/log ]; then mkdir -p pwd/log else rm -rf pwd/log mkdir -p pwd/log fi cli${GCLUSTER_HOME}/bin/gbase -u${user} -p${passwd} -N $cli -eSELECT dbname,tbname FROM gbase.table_distribution where dbname not in (information_schema,performance_schema,gbase,gctmpdb,gclusterdb) tb.list child() { local dbname$1 tbname$2 suffix$3 avg_sum$4 local mulu${GBASE_BASE}/userdata/gbase/${dbname}/sys_tablespace/${tbname}_${suffix} [ ! -d $mulu ] { echo Error: Directory $mulu not found; return 1; } local avg_extents$(find $mulu -type f -exec filefrag -v {} \; 2/dev/null | grep extent | awk {sum$2} END {print (NR0)? sum/NR : 0}) if (( $(echo $avg_extents $avg_sum | bc -l) )); then touch pwd/log/${dbname}.${tbname} fi } tmp_fifofile/tmp/$$_date %N.fifo mkfifo $tmp_fifofile exec 6$tmp_fifofile rm -rf $tmp_filofile for i in seq 1 ${threads_num} do echo done6 while read -r db table; do read -u6 { child ${db} ${table} ${suffix} ${avg_sum} echo 6 } done tb.list wait exec 6-

相关新闻

强烈安利! 专科生专属降AIGC平台 千笔·降AIGC助手 VS 知文AI

强烈安利! 专科生专属降AIGC平台 千笔·降AIGC助手 VS 知文AI

在AI技术迅速发展的今天,越来越多的学生开始借助AI工具辅助论文写作,以提升效率和内容质量。然而,随之而来的“AI率超标”问题却让许多学生陷入困境。随着查重系统对AI生成内容的识别能力不断增强,论文中若存在过多AI痕迹&#xf…

2026/7/2 23:00:11 阅读更多 →
2026 年浏阳市比较好的金属软管制造商怎么选?阿里巴巴专业推荐

2026 年浏阳市比较好的金属软管制造商怎么选?阿里巴巴专业推荐

2026 年,在浏阳市选择一家靠谱的金属软管制造商至关重要。本文将为您介绍选择金属软管制造商的方法,帮助您避开常见的采购陷阱,让您选到合适的产品。金属软管采购痛点分析在工业管道连接与设备配套领域,金属软管虽看似小配件&…

2026/5/17 10:22:26 阅读更多 →
47.102.113.21

47.102.113.21

记录美好生活第二部分,改变对像 设置样式css() 设置行内样式 设置标签的style属性css({ "width": width, "height": height,"top":0,"left":0 }); 可以采用json格式addClass("myclass")(不影响其他样式) cl…

2026/5/17 10:22:26 阅读更多 →

最新新闻

pgsql自增序列

pgsql自增序列

1.从1开始自增。插入数据无需插入id,id即可自增,步长默认是1,也可设置步长。 2.如有业务需求,需要手动指定id,则插入数据后,必须设置下次自增id的开始值,如果不设置,则旧的自增id游标…

2026/7/3 5:27:25 阅读更多 →
AI大模型选型实战指南:成本、稳定性和数据安全三维决策

AI大模型选型实战指南:成本、稳定性和数据安全三维决策

1. 这不是“排行榜”,而是我用掉37个API密钥、跑通21个生产环境后筛出来的实战清单你点开这篇文章,大概率不是想看又一篇泛泛而谈的“2024十大AI模型推荐”。你可能刚被老板甩来一句“用AI写周报/改PPT/生成产品文案”,也可能在深夜调试RAG系…

2026/7/3 5:23:25 阅读更多 →
处理医疗废水要安装在线监测设备吗?

处理医疗废水要安装在线监测设备吗?

我国一些场所早已要求一些排放重点水污染物处理区安装水质在线监测设备,其中处于环境敏感的地区以及是市或地级以上环境保护行政部门列为重点污染源的排放单位,这些都是必须要安装水质监测设备的。那么处理医疗废水要安装在线监测设备吗?答案…

2026/7/3 5:19:24 阅读更多 →
机器学习数据类型诊断:标称型、序数型、区间型、比率型与时间型实战指南

机器学习数据类型诊断:标称型、序数型、区间型、比率型与时间型实战指南

1. 项目概述:为什么搞懂数据类型是机器学习落地的第一道门槛“Types of data in Machine Learning Explained”——这个标题看似平实,甚至有点教科书味,但在我带过37个工业级ML项目、亲手清洗过超过120TB原始数据的实战经验里,它恰…

2026/7/3 5:19:24 阅读更多 →
使用 VMware虚拟机安装 Ubuntu Linux 完整教程

使用 VMware虚拟机安装 Ubuntu Linux 完整教程

一、什么是 Linux 操作系统Linux 是一款开源免费、多用户、多任务的类 Unix 操作系统内核,1991 年由芬兰大学生 Linus Torvalds 开发发布。核心特点完全开源:代码公开,任何人可查看、修改、二次分发,无版权收费;稳定性…

2026/7/3 5:17:24 阅读更多 →
精准分级管控:飞远光电破解化工园区员工与访客双重身份管理难题

精准分级管控:飞远光电破解化工园区员工与访客双重身份管理难题

化工园区属于高危作业场景,人员身份精细化管控是厂区安全防护的第一道核心关口。厂区内部员工、外来访客及施工承包商的作业权限、安全认知、风险等级存在本质差异:内部员工熟知厂区操作规程、作业规范及应急逃生路线,安全风险可控&#xff1…

2026/7/3 5:15:23 阅读更多 →

日新闻

Nginx防御TLS重协商攻击实战:从原理到配置与监控

Nginx防御TLS重协商攻击实战:从原理到配置与监控

1. 项目概述:为什么TLS重协商攻击至今仍需警惕十多年前的CVE-2011-1473,一个关于TLS/SSL协议重协商机制的漏洞,现在提起来还有必要吗?很多运维和开发朋友可能会觉得,这都老掉牙了,现代服务器和客户端不都默…

2026/7/3 0:03:59 阅读更多 →
华为防火墙双通道远程管理实战:Web与SSH配置详解

华为防火墙双通道远程管理实战:Web与SSH配置详解

1. 项目概述:为什么需要双通道远程管理防火墙?在任何一个稍具规模的企业网络里,防火墙都是那个默默守护在边界的关键角色。作为网络工程师,我们不可能每次都跑到机房,插上console线去配置它。远程管理能力,…

2026/7/3 0:03:59 阅读更多 →
AD74413R与PIC18F65K40的高精度工业数据采集方案

AD74413R与PIC18F65K40的高精度工业数据采集方案

1. 项目概述:AD74413R与PIC18F65K40的协同工作在工业自动化和精密测量领域,同时实现高精度模数转换(ADC)和数模转换(DAC)功能是许多复杂系统的核心需求。AD74413R作为一款四通道可配置模拟输入/输出器件,与PIC18F65K40微控制器的组合&#xf…

2026/7/3 0:05:59 阅读更多 →

周新闻

月新闻