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

grafana dashboard 单位 IEC SI a i

grafana dashboard 画图的时候在
Standard options —> Unit —> Data —> 会有各种选项其中列举以 xxxaxxx 、xxxixxx开头和(IEC) (SI) 注释的,本文进行解释
其中带 a 的基于十进制的单位,使用1000作为基数。1 MB = 1000 KB = 1000 * 1000 Bytes‌。
带 i 的基于二进制的单位,使用1024作为基数。1 MiB = 1024 KiB = 1024 * 1024 Bytes‌。

为了进一步强化理解,我再帮你稍作整理,并补充一些实际应用建议,特别是在 Ceph、Grafana、Prometheus 等系统中容易遇到的混用陷阱:


✅ 一、单位分类与基数差异

单位名称缩写制式基数等于多少字节(bytes)
KibibyteKiBIEC2¹⁰ = 10241,024 B
KilobyteKBSI10³ = 10001,000 B
MebibyteMiBIEC2²⁰1,048,576 B
MegabyteMBSI10⁶1,000,000 B
GibibyteGiBIEC2³⁰1,073,741,824 B
GigabyteGBSI10⁹1,000,000,000 B
TebibyteTiBIEC2⁴⁰1,099,511,627,776 B
TerabyteTBSI10¹²1,000,000,000,000 B

✅ 二、实际场景中的使用建议

场景建议使用单位原因说明
硬盘容量标称TB / GB厂商使用 SI 标准
系统文件显示(Linux/macOS)GiB / MiB操作系统按 1024 显示
内存容量、页表大小等GiB / MiB硬件架构按 1024 设计
网络带宽、接口速率MB / GB / MbpsSI 标准用于传输速率
Grafana/Prometheus 显示建议自己明确单位,统一使用 GiB 或 GBPrometheus 不自动区分单位

✅ 三、常见误区与实践说明

❌ 混用 KB 和 KiB 导致容量理解错误

  • 比如硬盘标称 1 TB(10¹² 字节)= 实际只有 931 GiB
  • 因为 1,000,000,000,000 ÷ 1,073,741,824 ≈ 931.32

✅ Prometheus 与 Grafana 中的单位转换示例

将字节转为:

  • MiB(Mebibyte)

    metric_name / 1024 / 1024
    
  • MB(Megabyte)

    metric_name / 1000 / 1000
    
  • GiB(Gibibyte)

    metric_name / 1024 / 1024 / 1024
    
  • GB(Gigabyte)

    metric_name / 1000 / 1000 / 1000
    

Grafana 设置:

  • 可以在 Panel 设置中选择单位为 bytes -> gibibytesmegabytes (decimal) 来直观展示
  • 注意单位名称后缀是否是 i,如 MiB 表示 IEC 二进制,MB 表示 SI 十进制

✅ 四、建议统一规范

在 Ceph、Kubernetes、Grafana 系统监控中:

  • 建议全程使用 IEC(KiB/MiB/GiB),因为大多数底层系统(如 ceph dftop)默认按 1024 为基数。

  • 标明单位来源,避免让用户误解,例如面板上写:

    “Total Read (GiB, IEC)”


IEC和SI的定义和背景

‌IEC(国际电工委员会)‌:IEC采用二进制进率,即每一级单位之间的进率为2的倍数。这种进率制度使得存储单位的计算更加直观,尤其是在处理二进制数据时更为方便‌。
‌SI(国际单位制)‌:SI采用十进制进率,即每一级单位之间的进率为10。这种进率制度更符合国际标准的计量习惯,但在处理二进制数据时不如IEC直观‌。
IEC和SI在计算机存储单位上的具体差异
‌字节与比特的对应关系‌:在IEC标准中,1字节(Byte)等于8比特(bit);而在SI标准中,这一对应关系也是相同的‌。
‌高计量单位的进率‌:
‌IEC标准‌:每一级单位之间的进率为2。例如,1KB(千字节)等于1024B(字节),1MB(兆字节)等于1024KB,以此类推‌。
‌SI标准‌:每一级单位之间的进率为10。例如,1KB等于1000B,1MB等于1000KB‌。
实际应用中的影响
‌数据存储和处理‌:在处理二进制数据时,IEC标准更为直观和方便,因为二进制数据的存储和处理本身就是基于2的幂次方进行的。而SI标准虽然在国际上更为通用,但在处理二进制数据时需要进行额外的转换计算。
‌国际标准和实际应用‌:由于计算机内部数据存储和处理都是基于二进制的,因此IEC标准在实际应用中更为常见。而SI标准则更多地用于需要精确计量的科学研究和工程领域‌。

http://www.lryc.cn/news/2383706.html

相关文章:

  • WPF···
  • Git的工作流程
  • 微服务架构中的多进程通信--内存池、共享内存、socket
  • 电脑中所有word文件图标变白怎么恢复
  • RK3568 OH5.1 源码编译及问题
  • Qt5、C++11 获取wifi列表与wifi连接
  • 【KWDB 2025 创作者计划】_从部署开始了解KWDB
  • 高等数学-微分
  • 有没有开源的企业网盘,是否适合企业使用?
  • 基于系统整合的WordPress个性化配置方法深度解析:从需求分析到实现过程
  • 离线服务器Python环境配置指南
  • (第94天)OGG 微服务搭建 Oracle 19C CDB 架构同步
  • 参与开发的注意事项
  • 使用pm2 部署react+nextjs项目到服务器
  • 从0到1打造AI Copilot:用SpringBoot + ChatGPT API实现智能开发助手
  • LeetCode Hot100 (双指针)
  • JVM常量池(class文件常量池,运行时常量池,字符串常量池)
  • 开源免费无广告专注PDF编辑、修复和管理工具 办公学术 救星工具
  • 鸿蒙Flutter实战:24-混合开发详解-4-初始化Flutter
  • 我爱学算法之—— 二分查找(中)
  • Golang 并发小结
  • RTC技术
  • 基于Matlab建立不同信道模型
  • uni-app 排坑
  • 军事目标系列之迷彩作战人员检测数据集VOC+YOLO格式2755张1类别
  • Qt C++实现马的遍历问题
  • node12.22.12在nvm中安装
  • 技术篇-2.3.Golang应用场景及开发工具安装
  • 高效缓存设计的哲学
  • 【生态信息】开源软件全方位解析