VDO虚拟数据优化
VDO
Virtual Data Optimize 虚拟数据优化 是一种通过压缩或删除存储设备上的数据来优化存储空间的技术。 VDO 是红帽公司收购了 Permabit 公司后获取的新技术,并与2019 2020 年前后,多次 在 RHEL 7.5/7.6/7.7 上进行测试,最终随 RHEL 8 系统正式公布。VDO技术的关键就是对硬盘内原有的数据进行删重操作,它有点类似于我们平时使用的网盘服务,在第一次正常上传文件时速度特别慢,在第二次上传 相同的文件 时 仅作为一个数据指针 几乎可以达到 秒传 的 效果,无须再多占用一份空间 也不用再漫长等待。除了删重操作,VDO 技术还可以对日志和数据库进行自动压缩,进一步减少存储浪费的情况 。 VDO 针对各种类型文件的压缩效果如表

VDO技术支持本地存储和远程存储,可以作为本地文件系统、iSCSI或Ceph存储下的附加存储层使用。红帽公司在VDO介绍页面中提到,在部署虚拟机或容器时,建议采用逻辑存储与物理存储为10∶1的比例进行配置,即1TB物理存储对应10TB逻辑存储;而部署对象存储时 (例如使用Ceph)则采用逻辑存储与物理存储为3∶1的比例进行配置,即使用1TB物理存储对应3TB逻辑存储。
简而言之,VDO技术能省空间!
有两种特殊情况需要提前讲一下。其一,公司服务器上已有的dm-crypt之类的技术是可以与VDO技术兼容的,但记得要先对卷进行加密再使用VDO。因为加密会使重复的数据变得有所不同,因此删重操作无法实现。要始终记得把加密层放到VDO之下,

其二,VDO技术不可叠加使用,1TB的物理存储提升成10TB的逻辑存储没问题,但是再用10TB翻成100TB就不行了。左脚踩右脚,真的没法飞起来。
一、我们把虚拟机关闭,添加一块容量为20GB的新SATA硬盘进来,开机后就能看到这块名称为/dev/sdb的新硬盘了
二、创建一个全新的VDO卷
新添加进来的物理设备就是使用vdo 命令来管理的,其中 name 参数代表新的设备卷的名称 device 参数代表由哪块磁盘进行制作; vdoLogicalSize 参数代表制作后的 设备 大小 。 依据红帽公司推荐的原则, 20GB 硬盘将翻成 200GB 的 逻辑存储。备注:如果记不住创建vdo的命令,可以通过man vdo | grep Logical 查询命令
vdo create --name=storge --device=/dev/sda --vdoLogicalSize=100G

通过fdisk -l 可以看到我们创建的这个ODV卷成功了,

三、在创建成功后,使用status参数查看新建卷的概述信息,也可以使用(vdo status name=storage)查看具体的信息
vdostats --human-readable (查看摘要信息)

四、对新建卷进行格式化操作并挂载使用
新建的VDO卷设备会被乖乖地存放在/dev/mapper目录下,并以设备名称命名,对它操作就行。另外,挂载前可以用udevadm settle命令对设备进行一次刷新操作,避免刚才的配置没有生效:
mkfs.xfs /dev/mapper/storage 进行格式化 udevadm settle 对设备刷新 mkdir /media/storage 创建于storage挂载目录 mount /dev/mapper/storage /media/storage/ 挂载,如果要永久挂载必须修改/etc/fstab配置文件。

永久挂载设置,通过blkid查看UUID,然后再编辑/etc/fstab配置文件,一定加上_netdev,否则重启电脑会重启不了。
UUID="0ac76f40-debd-4416-bab6-ba4f0f2bcf90" /media/storage xfs defaults,_netdev 0 0

五、测试他的压缩性和去重性,
复制多一个文件到storage目录下,

目前有四个文件,可以看到还5.5G,说明去重性非常的好。

六、删除ODV卷
umount /media/storage 取消挂 vdo remove --name=storage 移除vdo卷

VDO虚拟数据优化的更多相关文章
- jmeter执行case结果插入DB数据优化
访问初始实现路径:jmeter执行case结果插入DB生成报表和备份记录 借前面实现导入DB数据先说明之前数据的缺点: 第一,若需要依赖接口的数据,会把依赖接口的case统计进去造成数据统计错误.第二 ...
- Flask实战-留言板-使用Faker生成虚拟数据
使用Faker生成虚拟数据 创建虚拟数据是编写Web程序时的常见需求.在简单的场景下,我们可以手动创建一些虚拟数据,但更方便的选择是使用第三方库实现.流行的python虚拟数据生成工具有Mimesis ...
- JDBC批量插入数据优化,使用addBatch和executeBatch
JDBC批量插入数据优化,使用addBatch和executeBatch SQL的批量插入的问题,如果来个for循环,执行上万次,肯定会很慢,那么,如何去优化呢? 解决方案:用 preparedSta ...
- oracle12c中新能优化新特性之热度图和自动数据优化
1. Oracle12c热度图和自动数据优化 信息生命周期管理(ILM)是指在数据生命周期内管理它们的策略.依赖于数据的年龄和对应用的业务相关性,数据能被压缩,能被归档或移到低成本的存储上.简言之,I ...
- faker之python构造虚拟数据
python中可以使用faker来制造一些虚拟数据 首选安装faker pip install Faker 老版的叫法是faker-factory,但是已不适用 使用faker.Factory.cre ...
- 利用ForgeryPy生成虚拟数据
在程序研发过程中,我们往往需要大量的虚拟实验数据.Python中有多个包可以用于生成虚拟数据,其中功能较为完善的是ForgeryPy. 1 安装 采用pip进行安装: pip install Forg ...
- 基于虚拟数据的行人检测研究(Expecting the Unexpected: Training Detectors for Unusual Pedestrians with Adversarial Imposters)
Paper Link : https://arxiv.org/pdf/1703.06283 Github: https://github.com/huangshiyu13/RPNplus 摘要: 这篇 ...
- 项目 07 Model与数据优化
项目班 07 Model与数据优化 html默认可以用直接用的方法和变量 {{ static_url(p.image_url) }} #static_url表示直接获取静态文件url {{ handl ...
- DB-SQL-MySQL-杂项-调优:Mysql千万以上数据优化、SQL优化方法
ylbtech-DB-SQL-MySQL-杂项-调优:Mysql千万以上数据优化.SQL优化方法 1.返回顶部 1. 1,单库表别太多,一般保持在200以下为宜 2,尽量避免SQL中出现运算,例如se ...
随机推荐
- MySQL面试题--常见的四种隔离级别
什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做. 事务的结束有 ...
- Linux 的目录结构是怎样的?
这个问题,一般不会问.更多是实际使用时,需要知道.Linux 文件系统的结构层次鲜明,就像一棵倒立的树,最顶层是其根目录:Linux的目录结构常见目录说明: /bin:存放二进制可执行文件(ls,ca ...
- Spring Boot 的核心配置文件有哪几个?它们的区别是什么?
Spring Boot 的核心配置文件是 application 和 bootstrap 配置文件.application 配置文件这个容易理解,主要用于 Spring Boot 项目的自动化配置.b ...
- probably another instance of uWSGI is running on the same address (127.0.0.1:9090). bind(): Address ...
probably another instance of uWSGI is running on the same address (127.0.0.1:9090). bind(): Address ...
- 为什么 Thread 类的 sleep()和 yield ()方法是静态的?
Thread 类的 sleep()和 yield()方法将在当前正在执行的线程上运行.所以在其他处于等待状态的线程上调用这些方法是没有意义的.这就是为什么这些方法是静态的.它们可以在当前正在执行的线程 ...
- yum下载安装git服务
yum install git 安装成功后,配置 用户 邮箱信息 注: youxiu326 github账号名称 youxiu326@163.com github账号对应邮箱 git confi ...
- 攻防世界 ics-06
ics-06 进入题目有点吓人,不过我都点了一下发现只有报表中心可以进去 进入报表中心在url中发现?id=1,一开始以为是sql注入结果啥也没探测到,这题脑洞有点,没有任何提示直接爆破id即可获得f ...
- 顺利通过EMC实验(16)
- ZEGO音视频服务的高可用架构设计与运营
前言: ZEGO 即构科技作为一家实时音视频的提供商,系统稳定性直接影响用户的主观体验,如何保障服务高可用且用户体验最优是行业面临的挑战,本文结合实际业务场景进行思考,介绍 ZEGO 即构在高可用架构 ...
- jq easyui数据网络的分页过程
第一次写技术方面的文章,有点忐忑,总怕自己讲的不对误导别人.但是万事总有个开头,有不足错误之处,请各位读者老爷指出. 言归正传,最近刚进新公司,上头要求我先熟悉熟悉easyui这个组件库.在涉及到da ...