利用AIX條帶化(STRIPE)最佳化資料庫IO

來源:互聯網
上載者:User

一、背景

生產環境IBM P560目前用於Oracle DataGuard 的standby機器。在oracle Apply 歸檔日誌時,查看伺服器IO情況,發現Hdisk0、1上的IO有時候能達到到100%。而Hdisk2、3上IO活動很少。

經分析,oracle的資料檔案存放目錄放在/oradata,該目錄建立在hdisk0、1上。故在資料庫發生讀寫資料檔案時,只有hdisk0,1有IO。另外2塊盤IO活動少。故考慮將資料庫檔案從rootvg遷移出來,將資料庫的歸檔檔案建立在rootvg裡,達到平均分布伺服器的IO的目的。

二、理論支援

一般以LVM管理的儲存,一個vg中可能會有很多pv,同樣的,一個lv可能跨越多塊pv,為了使硬碟儲存速度加快,就會用到條帶化的技術,即把連續的資料分成大小相同的資料區塊,然後依次儲存在各個pv上。類似於RAID0,使儲存速度加快。但並不會使資料像RAID0一樣危險容易丟失,因為在正式使用中,不會像此時做測試一樣沒有任何保障地將多塊硬碟做成一個vg,而是普遍串連的後台儲存,在劃分LUN之前,已經在物理硬碟上做好RAID5或RAID1,在RAID5或RAID1的基礎上再劃分出多塊LUN,即系統上的pv,即使pv所在硬碟損壞,但有底層的硬RAID冗餘,並不會遺失資料。

條帶單元大小:即條帶化的LV中,每一個條帶單元的大小,對應於I/O中資料區塊的大小。對於Oracle來講,db_block_size即設定的資料區塊大小。而db_file_multiblock_read_count就一次讀取時最多並行的資料區塊的個數,db_block_size和db_file_multiblock_read_count相乘即一次總的I/O大小。這個大小不能超過作業系統的最大I/O (max_io_size)值。在ORACLE應用中,lv條帶的大小一般設定為兩倍或兩倍以上的Oracle塊大小,因為假如設定成與Oracle資料區塊相同大小,無法保證Oracle資料區塊的邊界正好與條帶單元的邊界對應,如果不對應的話,就會出現大量的一個I/O由兩個條帶單元,來處理的情況。

條帶大小的原則:對於高並發並且IO請求小的情況下,一塊物理硬碟處理多個I/O請求,低並發但I/O請求較大時,可能需要多塊硬碟處理一個I/O請求。原則上的要求是一次I/O請求能被一次性處理完成。

大概的條帶化的概念就是這樣。

三、參數提取

  1. P560A:/#lspv 
  2. hdisk0          00c3ee9e3439bc67                    rootvg          active 
  3. hdisk1          00c3ee9e5033384d                    rootvg          active 
  4. hdisk2          00c3ee9eae48cc48                    rootvg          active 
  5. hdisk3          00c3ee9eae48df75                    rootvg          active 
  6.  
  7. P560A:/#lspv -l hdisk0 
  8. hdisk0: 
  9. LV NAME               LPs   PPs   DISTRIBUTION          MOUNT POINT 
  10. hd10opt               8     8     00..00..08..00..00    /opt 
  11. hd3                   40    40    00..00..40..00..00    /tmp 
  12. hd1                   4     4     00..00..04..00..00    /home 
  13. hd2                   16    16    00..00..16..00..00    /usr 
  14. hd9var                4     4     00..00..04..00..00    /var 
  15. hd8                   1     1     00..00..01..00..00    N/A 
  16. hd4                   4     4     00..00..04..00..00    / 
  17. hd5                   1     1     01..00..00..00..00    N/A 
  18. hd6                   32    32    00..00..32..00..00    N/A 
  19. tsmdb                 30    30    20..10..00..00..00    /tsmdb 
  20. oradatalv             278   278   49..11..00..109..109  /oradata 
  21. oraclelv              40    40    40..00..00..00..00    /home/oracle 
  22. weblogiclv            40    40    00..40..00..00..00    /weblogic 
  23. weblogic9lv           40    40    00..40..00..00..00    /weblogic9 
  24. lg_dumplv             8     8     00..08..00..00..00    N/A 
  25.  
  26. P560A:/#lspv -l hdisk1 
  27. hdisk1: 
  28. LV NAME               LPs   PPs   DISTRIBUTION          MOUNT POINT 
  29. hd10opt               8     8     00..00..08..00..00    /opt 
  30. hd3                   40    40    00..00..40..00..00    /tmp 
  31. hd1                   4     4     00..00..04..00..00    /home 
  32. hd2                   16    16    00..00..16..00..00    /usr 
  33. hd9var                4     4     00..00..04..00..00    /var 
  34. hd8                   1     1     00..00..01..00..00    N/A 
  35. hd4                   4     4     00..00..04..00..00    / 
  36. hd5                   1     1     01..00..00..00..00    N/A 
  37. hd6                   32    32    00..00..32..00..00    N/A 
  38. tsmdb                 30    30    20..10..00..00..00    /tsmdb 
  39. oradatalv             324   324   89..17..00..109..109  /oradata 
  40. fwdump                2     2     00..02..00..00..00    /var/adm/ras/platform 
  41. weblogiclv            40    40    00..40..00..00..00    /weblogic 
  42. weblogic9lv           40    40    00..40..00..00..00    /weblogic9 
  43.  
  44. P560A:/#lspv -l hdisk2 
  45. hdisk2: 
  46. LV NAME               LPs   PPs   DISTRIBUTION          MOUNT POINT 
  47. oradatalv             598   598   152..223..223..00..00 /oradata 
  48.  
  49. P560A:/#lspv -l hdisk3 
  50. hdisk3: 
  51. LV NAME               LPs   PPs   DISTRIBUTION          MOUNT POINT 
  52. archlog_lv            400   400   00..223..177..00..00  /archivelog 
  53.  
  54. P560A:/#lslv -l oradatalv 
  55. oradatalv:/oradata 
  56. PV                COPIES        IN BAND       DISTRIBUTION   
  57. hdisk0            278:000:000   3%            049:011:000:109:109  
  58. hdisk1            324:000:000   5%            089:017:000:109:109  
  59. hdisk2            598:000:000   37%           152:223:223:000:000  
  60.  
  61. P560A:/#lslv -l oraclelv 
  62. oraclelv:/home/oracle 
  63. PV                COPIES        IN BAND       DISTRIBUTION   
  64. hdisk0            040:000:000   0%            040:000:000:000:000  
  65.  
  66. P560A:/#lslv -l archlog_lv 
  67. archlog_lv:/archivelog 
  68. PV                COPIES        IN BAND       DISTRIBUTION   
  69. hdisk3            400:000:000   55%           000:223:177:000:000  
  • 1
  • 2
  • 下一頁

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.