当前位置: 首页 > news >正文

1.4日笔记

  1. HBase 高级操作
    预分区(Pre-splitting)
    避免初始数据热点,用 HexStringSplit 或自定义算法:

hbase org.apache.hadoop.hbase.util.RegionSplitter test_table
HexStringSplit -c 10 -f cf1
生成 10 个 Region,起始键 00000000 → ffffffff 均匀分布。
BulkLoad 导入

hbase org.apache.hadoop.hbase.mapreduce.ImportTsv
-Dimporttsv.columns=HBASE_ROW_KEY,cf1:val
-Dimporttsv.bulk.output=/tmp/hfiles
test_table /user/data.tsv
随后 completebulkload 将 HFile 移交 RegionServer,速率比 Put 高 5–10×。
Filter 组合实战
需求:扫描最近 1 小时内、列 cf1:status=200 且行键前缀 uid_123 的数据。
Java 代码:

FilterList fl = new FilterList(MUST_PASS_ALL);
fl.addFilter(new PrefixFilter(Bytes.toBytes("uid_123")));
fl.addFilter(new SingleColumnValueFilter(cf, status, EQUAL, Bytes.toBytes("200")));
fl.addFilter(new TimestampsFilter(Collections.singletonList(
System.currentTimeMillis() - 3600_000)));
scan.setFilter(fl);
注意:TimestampsFilter 只影响返回版本,不减少磁盘扫描;需搭配行键设计把时间放高位才能剪枝。
2. VM 嵌套虚拟化
KVM in VMware
物理机 → VMware Workstation 17 → Ubuntu 22.04 → 再启 KVM 虚拟机。
关键勾选:
处理器设置 → 虚拟化引擎 → Virtualize Intel VT-x/EPT
固件类型 → UEFI(若需 KVM 的 Secure Boot 测试)
性能验证
在第二层 VM 内执行:

egrep -c '(vmx|svm)' /proc/cpuinfo # 输出 ≥1 即成功透传
sudo kvm-ok # 显示 "KVM acceleration can be used"
用 stress-ng 压测:
宿主机 8C16G,第一层 VM 给 4C8G,第二层 KVM 给 2C4G,CPU 损耗约 8%,内存额外开销 3%(EPT 页表)。
快照脚本化
定时备份嵌套环境,PowerShell 批量执行:
powershell
复制
$vms = Get-VM | Where-Object {$_.Name -like "kvm-*"}
foreach ($vm in $vms) {
$snap = "$($vm.Name)-$(Get-Date -Format HHmm)"
New-Snapshot -VM $vm -Name $snap -Quiescent:$true
# 保留最近 3 个快照
Get-Snapshot -VM $vm | Sort-Object -Property Created -Descending |
Select-Object -Skip 3 | Remove-Snapshot -Confirm:$false
}
计划任务每小时一次,磁盘占用 ≈ 增量 2–3 GB/次。
3. 踩坑记录
HBase BulkLoad 后数据缺失
现象:RowKey 含 \x00 导致 completebulkload 报 IllegalArgumentException。
根因:HFile 的 TFile 索引按字典序排序,\x00 被当终止符。
解决:清洗源文件,将 \x00 替换为 \x01 或删除。
VMware 嵌套 KVM 无法启动
报错 “Module DevicePowerOn power on failed.”
解决:关闭宿主机 Windows 的 内核隔离 → 内存完整性(重启生效),再开启 vhv.enable = "TRUE" 于 .vmx 文件。
protocols=OpenFlow13

http://www.jsqmd.com/news/195385/

相关文章:

  • Windows系统直接访问Linux MD RAID的完整解决方案
  • 钉钉自动打卡助手终极使用指南
  • OBS录制革命:Source Record插件让视频源分离录制变得如此简单
  • ncmdump转换器:免费解锁网易云音乐加密文件的实用工具
  • 抖音下载神器终极指南:5分钟学会保存任何喜欢的视频和直播
  • Windows多显示器显示问题终极解决方案:告别模糊与不协调
  • ncmdump终极指南:快速解锁网易云音乐加密文件的完整解决方案
  • 抖音内容下载终极指南:douyin-downloader完整使用教程
  • 零基础玩转抖音封面提取:你的专属素材库搭建指南
  • BlenderGIS实战指南:从地理数据到三维场景的智能转换
  • JoyCon-Driver完整指南:5步轻松实现Joy-Con手柄连接电脑
  • Windows多显示器DPI精准调节完整指南:彻底解决显示缩放难题
  • pyvideotrans终极指南:快速实现视频多语言翻译的完整方案
  • 金融数据工具终极使用指南:从入门到精通实战手册
  • 炉石传说自动化工具终极使用指南:提升游戏效率的10个技巧
  • 如何快速掌握OBS源录制:新手主播的终极教程
  • Blue Archive自动脚本完整使用指南:从安装到高效配置
  • GitHub加速插件:智能网络优化解决国内访问难题
  • 原神战斗数据分析工具:深度优化你的战斗表现
  • Windows系统轻松访问Linux RAID存储的完整指南
  • 终极音乐解锁神器:免费转换网易云加密文件的完整指南
  • 【计算机毕业设计案例】深度学习基于机器算法的美国研究生院入学录取率预测系统实现
  • 如何用LaserGRBL在30分钟内完成你的第一个激光雕刻作品?
  • 终极免费视频翻译神器:5分钟让视频跨越语言障碍!
  • 【计算机毕业设计案例】基于深度学习的垃圾分类识别系统
  • 一文通透——Kali Linux基础入门_kali linux 新手教程
  • 碧蓝幻想Relink伤害统计工具终极指南:从新手到精通的完整教程
  • 计算机深度学习毕设实战-采用机器学习 LSTM预测北京未来7天的空气质量指数AQI
  • 终极指南:简单打造网易云音乐美化播放界面
  • 碧蓝幻想Relink伤害统计工具全面操作指南:从新手到高手