阵列Cache写机制:Write-through与Write-back区别

  Write Through和Write Back Write Through和Write Back是阵列卡Cache的两种使用方式,也称为透写和回写。当选用write through方式时,系统的写磁盘操作并不利用阵列卡的Cache,而是直接与磁盘进行数据的交互。而write Back方式则利用阵列Cache作为系统与磁盘间的二传手,系统先将数据交给Cache,然后再由Cache将数据传给磁盘。

  在配置阵列的时候,如果不是和弄清楚的话默认就可以了,系统会根据磁盘类型进行默认设置。

  Write caching 或 write-through

write-through意思是写操作根本不使用缓存。数据总是直接写入磁盘。关闭写缓存,可释放缓存用于读操作。(缓存被读写操作共用)

  Write caching可以提高写操作的性能。数据不是直接被写入磁盘;而是写入缓存。从应用程序的角度看,比等待完成磁盘写入操作要快的多。因此,可以提高写性能。由控制器将缓存内未写入磁盘的数据写入磁盘。表面上看,Write cache方式比write-through方式的读、写性能都要好,但是也要看磁盘访问方式和磁盘负荷了。

  write-back(write cache)方式通常在磁盘负荷较轻时速度更快。负荷重时,每当数据被写入缓存后,就要马上再写入磁盘以释放缓存来保存将要写入的新数据,这时如果数据直接写入磁盘,控制器会以更快的速度运行。因此,负荷重时,将数据先写入缓存反而会降低吞吐量。

  Starting and stopping cache flushing levels

  这两个设置影响控制器如何处理未写入磁盘的缓存内数据,并且只在write-back cache方式下生效。缓存内数据写入磁盘称为flushing.你可以配置Starting and stopping cache flushing levels值,这个值表示占用整个缓存大小的百分比。当缓存内未写入磁盘的数据达到starting flushing value时,控制器开始flushing(由缓存写入磁盘)。当缓存内未写入磁盘数据量低于stop flush value时,flushing过程停止。控制器总是先flush旧的缓存数据。缓存内未写入数据停留超过20秒钟后被自动flushing.

  典型的start flushing level是80%。通常情况下,stop flushing level也设置为80%。也就是说,控制器不允许超过80%的缓存用于write-back cache,但还是尽可能保持这一比例。如果你使用此设置,可以在缓存内存更多的未写入数据。这有利于提高写操作的性能,但是要牺牲数据保护。如果要得到数据保护,你可以使用较低的start and stop values。通过对这两个参数的设置,你可以调整缓存的读、写性能。经测试表明,使用接近的start and stop flushing levels时性能较好。如果stop level value远远低于start value,在flushing时会导致磁盘拥塞。

  Cache block size

  这个值指缓存分配单元大小,可以是4K或16K。选择合适的值,可以明显的改善缓存使用性能。

  如果应用程序更多时候访问小于8K的数据,而将cache block size设置为16K,每次访问仅使用一部分cache block。在16K的cache block里总是存储8K或更小的数据,意味着只有50%的缓存容量被有效使用,使性能下降。对于随机I/O和小数据块的传送,4K比较合适。另一方面,如果是连续I/O 并使用大的segment size,最好选择16K。大的cache block size意味着cache block数量少并可缩短缓存消耗延时。另外,对于同样大小的数据,cache block size大一些,需要的缓存数据传送量更小。

(0)

相关推荐

  • 硬盘Cache写机制 Write-through与Write-back的区别

    Write-through- Write is done synchronously both to the cache and to the backing store. Write-back (o ...

  • CAD2014实例教程:[21]阵列使用

    CAD2014阵列命令的使用 01 在CAD2014中有3种阵列方式,即矩形阵列.环形阵列.路径阵列.其中路径阵列是新增加的阵列方式.阵列是一种特殊的复制模式.下面分别介绍: 02 矩形阵列 这儿以一 ...

  • U盘读出速度比写入快的原因分析

    U盘读出速度比写入快的原因分析: 下面是NAND的规格书 • Page Read Operation - Page Size : (4K + 128)Byte - Random Read : 60µs ...

  • 网易视频云:HBase GC的前生今世 身世篇

    操作方法 01 网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅.低时延.高并发的视频直播.录制.存储.转码及点播等音视频的PaaS服务.在线教育.远 ...

  • java中引用的概念(JAVA的引用调用)

    Java中为什么没有指针?我们都知道Java与c/c 有个显著的区别就是c/c 有指针的使用,而Java中没有用到指针.之所以Java没有指针的使用(没有显示的使用指针,内部实现机制肯定是有指针的), ...

  • 数据流程图是什么(数据流程图画法)

    数据流程图是通过要素和符号来描绘数据的来源.流动和存储情况,是一种以此来比较清晰.直观的反映出系统信息全貌的一种工具.是当下使用率比较高的一种图表,能够清楚地反映出复杂流程脱离于繁多文字能够一眼就帮助 ...

  • 2017国内外十大蓝牙耳机品牌!国产蓝牙耳机推荐

    爱有所专,对于蓝牙耳机使用爱好者有必要了解下国内外的一些蓝牙耳机牌子,网上有写十大品牌,但没区别国内外,这里介绍国内外十大品牌,帮助您了解蓝牙耳机哪个牌子好,你所买的又都是哪的品牌,为您选择蓝牙耳机提 ...

  • Java 中常用缓存Cache机制的实现

    Java 中常用缓存Cache机制的实现 操作方法 01 所谓缓存,就是将程序或系统经常要调用的对象存在内存中,一遍其使用时可以快速调用,不必再去创建新的重复的实例.这样做可以减少系统开销,提高系统效 ...

  • Linux 内存机制详解宝典

    一. 我们先来查看一个内存使用的例子: [oracle@db1 ~]$ free -m total used free shared buffers cached Mem: 72433 67075 5 ...