Dell PowerEdge 2950 dengan dua NIC 1 Gbps pergi ke dua port 1 Gbps pada sebuah saklar yang kemudian pergi ke NetApp dengan empat NIC 1 Gbps yang hadir sebagai satu antarmuka virtual. 24 drive, 7200k SATA, NetApp RAID-DP. Saya telah memetakan setiap host NIC ke NetApp menggunakan MPIO di inisiator Microsoft iSCSI. Pengujian dengan SQLIO throughput penulisan saya tampaknya masuk akal sekitar 200 MB, tetapi pembacaan saya lebih dekat ke 100 MB.
Tidakkah seharusnya bacaan saya mendekati 200 MB sama seperti tulisan saya? Apakah ini masalah konfigurasi atau ada masalah penyimpanan mendasar yang saya tidak mengerti?
Pembaruan: Berikut adalah IOPS untuk beban kerja acak. Bacaan itu masuk akal, meskipun, saya tidak yakin apa yang harus dibuat dari 20.000 untuk menulis. Cache SAN adalah 3,2 GB. Tes SQLIO menentang file 25 GB.
sumber
Jawaban:
Disk menulis sebenarnya akan ke memori (NVRAM) pada filer, untuk dibilas ke disk nanti - pada filer idle, ini akan sangat cepat, dan iops dari 20.000 cukup dipercaya (Anda akan melihat kecepatan yang sama dari kebanyakan SSD) .
Bacaan, di sisi lain, harus berasal dari disk kecuali mereka sudah ada dalam cache read the filer (yang, tidak seperti menulis, ada di memori volatile).
Sulit untuk menyematkan vendor penyimpanan pada iops untuk memutar disk, tetapi untuk drive 7200RPM, 80-120 iops cukup dapat dipercaya. Menimbang bahwa Anda mungkin kehilangan beberapa disk karena RAID-DP dan / atau suku cadang NetApp, 2.200 iops mendekati apa yang dapat Anda harapkan dari 22 disk yang masing-masing melakukan sekitar 100 iops.
Ini mungkin tidak menjelaskan kecepatan baca Anda (disk Anda mungkin tidak melakukan 2200 iops penuh saat Anda melakukan pembacaan berurutan), tetapi setidaknya dapat membantu menjelaskan kinerja penulisan Anda.
sumber
Untuk anak cucu, setelah banyak coba-coba, kami menemukan cara untuk mendapatkan hasil yang diharapkan.
Seperti disebutkan di atas, NetApp memiliki satu antarmuka virtual yang didukung oleh empat NIC fisik. Tuan rumah memiliki dua NIC dan saya telah mengkonfigurasi MPIO melalui MS iSCSI Initiator sehingga ada jalur dari setiap NIC ke satu antarmuka virtual. Hasilnya adalah throughput di atas - menulis masuk akal mendekati 200 MB atau kecepatan dua NIC, tetapi membaca setengah atau kecepatan satu NIC.
Setelah diperiksa lebih dekat, orang SAN kami memperhatikan bahwa lalu lintas hanya mengalir melalui salah satu NIC fisik untuk dibaca. Saya tidak yakin apakah ada kesalahan konfigurasi di pihak kami, tetapi ada dua hal yang kami coba dan kami mendapatkan throughput kami. Salah satunya adalah mengubah dari satu antarmuka virtual yang didukung oleh empat NIC ke dua antarmuka virtual, masing-masing didukung oleh dua NIC. Kemudian memetakan satu host NIC ke satu antarmuka virtual. Hal lain yang kami coba adalah menggunakan "aliasing" di sisi SAN untuk menghadirkan beberapa antarmuka virtual. (Saya bukan orang SAN, jadi semoga saya mengatakan itu dengan benar.)
Kesimpulan saya adalah bahwa kami hanya memerlukan SAN untuk menghadirkan lebih dari satu antarmuka sehingga Pemrakarsa benar-benar melihat banyak jalur. Inilah throughput kami sekarang:
sumber