1、什么是条带化
  • 磁盘冲突:当多个进程同时访问一个磁盘时,可能会出现磁盘冲突。磁盘系统对访问次数(每秒的IOPS)和数据传输速率(读写速率,TPS)有限制。当达到这些限制时,后面需要访问磁盘的进程就需要挂起等待,这就是磁盘冲突。避免磁盘冲突是优化I/O性能的一个重要目标。
 
  • 条带化技术:将I/O负载均衡到多个物理磁盘上的技术。条带化技术将一块连续的数据分成很多小部分,并将他们分别存储到不同的磁盘上,使多个进程同时访问数据的不同部分而不会造成磁盘冲突,最大化I/O性能。
 
  • lvm的条带化:把lv上连续的数据分成大小相同的块,然后依次存储在多个磁盘PV上,类似raid0的数据存放形式,实现数据的并发读写;管理员依据自己的数据需求,定义数据分块大小,分布PV磁盘个数信息,从而实现读写性能最佳化。(粗略讲,条带化strip就是raid0。)
 

2、系统版本:
# cat /etc/centos-release
CentOS Linux release 7.2.1511 (Core) 12
 
3、磁盘
[root@host-192-168-100-19 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda             252:0    010G  0 disk
├─vda1          252:1    0500M  0 part /boot
└─vda2          252:2    09.5G  0 part
  ├─centos-root 253:0    08.5G  0 lvm  /
  └─centos-swap 253:1    01G  0 lvm  [SWAP]
vdb             252:16   05G  0 disk
vdc             252:32   05G  0 disk 123456789
 
4、创建物理卷
#pvcreate /dev/nvme0n1p2 /dev/nvme1n1p2 /dev/nvme2n1p2 /dev/nvme3n1p2
  Physical volume "/dev/nvme0n1p2" successfully created.
  Physical volume "/dev/nvme1n1p2" successfully created.
  Physical volume "/dev/nvme2n1p2" successfully created.
  Physical volume "/dev/nvme3n1p2" successfully created.
 
5、创建卷组vg1
#vgcreate vg1 /dev/nvme0n1p2 /dev/nvme1n1p2 /dev/nvme2n1p2 /dev/nvme3n1p2
  Volume group "vg1" successfully created
 
6、创建条带卷

#lvcreate -L 30G -i5 -I 64 -n strip30G /dev/vg1
  Logical volume "strip30G" created.
 
 -i 指定跨PV的个数为5
 -I 指定条带单元的大小,对应于I/O中数据单元块的大小;数值必须为2的幂,单位KB
 -n 制定卷的名称
 -L 卷的大小
 
7、查看逻辑卷的状态
#lvdisplay /dev/vg1/strip30G
  --- Logical volume ---
  LV Path                /dev/vg1/strip30G
  LV Name                strip30G
  VG Name                vg1
  LV UUIDWfzCka-x1Lk-wQmj-kJcY-0Ts9-x34r-pUl1LN
  LV Write Access        read/write
  LV Creation host, time qdata8, 2018-12-20 11:14:33 +0800
  LV Status              available
  # open                 0
  LV Size                30.00 GiB
  Current LE             7680
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:7
 
 #lvs -a -o vg_name,name,devices,size

 
8、测试对比:
条带化后的逻辑卷
# dd bs=64k count=4k if=/dev/zero of=test conv=fsync
4096+0 records in
4096+0 records out
268435456 bytes (268 MB) copied, 3.58631 s, 74.8 MB/s1234
 
镜像化后的逻辑卷
# dd bs=64k count=4k if=/dev/zero of=test conv=fsync
4096+0 records in
4096+0 records out
268435456 bytes (268 MB) copied, 6.99957 s, 38.4 MB/s
---------------------
 

1.3 LVM条带化的更多相关文章

  1. 1.3.1 LVM条带化error

    报错:​ #pvcreate /dev/dfb2 /dev/dfa2 /dev/dfc2 /dev/dfd2 already exists in filesystem   Can't open /de ...

  2. [Linux] LVM的条带化

    一.什么是条带化 当多个进程同时访问一个磁盘时,可能会出现磁盘冲突.磁盘系统对访问次数(每秒的IO操作,IOPS)和数据传输速率(读写速率,TPS)有限制. 当达到这些限制时,后面需要访问磁盘的进程就 ...

  3. 什么是条带化(striping) ?(转载)

    条带(strip)是把连续的数据分割成相同大小的数据块,把每段数据分别写入到阵列中的不同磁盘上的方法.简单的说,条带是一种将多个磁盘驱动器合并为一个卷的方法. 许多情况下,这是通过硬件控制器来完成的. ...

  4. 如何在 Azure 虚拟机里配置条带化

    什么是条带化(striping) 条带 (strip) 是把连续的数据分割成相同大小的数据块,把每段数据分别写入到阵列中的不同磁盘上的方法.简单的说,条带是一种将多个磁盘驱动器合并为一个卷的方法. 许 ...

  5. 【oracle11g,18】存储结构:暂时表,手工条带化,表/索引迁移表空间,删除表,外部表

    一. 暂时表 暂时表放在暂时表空间,不生成redo,仅仅有undo. 在暂时表中能够创建索引.视图及触发器,还能够使用"Export and Import(导出和导入)"或&quo ...

  6. 郭超:阿里云Cassandra背后的故事

    大家好,我是阿里云数据库产品事业部的玄陵,真名郭超. ​ 本次的分享大概分三个部分:Cassandra云数据库简介.Cassandra云数据库特性以及Q&A. ​ 我们先了解一下Cassand ...

  7. 在线添加磁盘,扩展LVM卷案例

    一.添加硬盘,在线扫描出来 首先到虚拟机那里添加一块硬盘,注意必须是SCSI类型的硬盘. 扫描硬盘,不用重启操作系统的. echo "- - -" > /sys/class/ ...

  8. lvm语法

    RAID:     Redundant Arrays of Inexpensive Disks                         Independent       Berkeley: ...

  9. 自学Linux Shell8.2-linux逻辑卷LVM管理

    点击返回 自学Linux命令行与Shell脚本之路 8.2-linux逻辑卷LVM管理 Linux逻辑卷管理器软件包用来通过将另外一个硬盘上的分区加入已有文件系统,动态地添加存储空间. 1. 逻辑卷L ...

随机推荐

  1. placeholder 效果的实现,input提示字,获取焦点时消失

    <!doctype html><html><head><meta charset="utf-8"><title>plac ...

  2. [译] 在 UNIX 中,一切皆文件

    原文地址:In UNIX Everything is a File 原文作者:ph7spot.com 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m… 译者:pmw ...

  3. 协程 和 async await

    协程, 是 为了 避免 闭包传递变量 的 性能损耗 而产生  . 如果不是 为了 避免 闭包传递变量 的 性能损耗 ,    线程池 和 Task 已经够了,  不需要 再设计 出 协程 来  . 闭 ...

  4. 用Python 打开程序的两中方法

    1.ShellExecute函数 import win32api win32api.ShellExecute(0, 'open', 'notepad.exe', '', '', 0) # 后台执行 w ...

  5. PinPoint使用教程

    选择该应用的展示边界 InBound:3 OutBound:3 基本概念 APM (Application Performance Management/应用性能管理)工具 为大规模分布式系统. 开发 ...

  6. [React] Use CSS Transitions to Avoid a Flash of Loading State

    Based on research at Facebook, we know that if a user sees a flash of loading state, they perceive t ...

  7. Kmeans文档聚类算法实现之python

    实现文档聚类的总体思想: 将每个文档的关键词提取,形成一个关键词集合N: 将每个文档向量化,可以参看计算余弦相似度那一章: 给定K个聚类中心,使用Kmeans算法处理向量: 分析每个聚类中心的相关文档 ...

  8. LSTM的神经元个数

    小书匠深度学习 目录: 1.LSTM简单介绍 2.简单假设样例 3.神经元分析 3.1忘记门层 3.2细胞状态 3.3输出层 3.4总结 4.测试 1.LSTM简单介绍 LSTM在时间上展开 红框从左 ...

  9. transient的

    1,transient的用途及使用方法1,用途 我们知道,当一个对象实现了Serilizable接口,这个对象就可以被序列化,我们不关心其内在的原理,只需要了解这个类实现了Serilizable接口, ...

  10. Java中的long类型和Long类型比较大小

    Java中我们经常要做一些判断,而对于判断的话,用的最多的便是“>”.“==”.“<”的比较,这里我们进行一个Long类型数据和long类型数据的比较大小的讲解. Java中Long和lo ...