Apakah aman menggunakan SSD MLC konsumen di server?

44

Kami (dan maksud saya, Jeff) sedang mencari kemungkinan menggunakan disk SSD MLC Konsumen di pusat data cadangan kami.

Kami ingin mencoba menekan biaya dan menghemat ruang - jadi Intel X25-E cukup besar, masing-masing sekitar $ 700 dan kapasitas 64GB.

Apa yang kami pikirkan lakukan adalah membeli beberapa SSD kelas bawah yang menawarkan kapasitas lebih banyak pada titik harga lebih rendah. Bos saya tidak berpikir menghabiskan sekitar 5rb untuk disk di server yang kehabisan pusat data cadangan layak investasi.

Drive ini akan digunakan dalam larik RAID 6 drive pada Lenovo RD120. Pengontrol RAID adalah Adaptec 8k (lambang Lenovo).

Betapa berbahayanya pendekatan ini dan apa yang bisa dilakukan untuk mengurangi bahaya ini?

Zypher
sumber
4
Apa alasan untuk menggunakan SSD dan bukan pemintal? Kebijaksanaan rakyat tentang kinerja SSD adalah "bayar atau tidak repot", tetapi tentu saja ada aspek lain yang mungkin menjadi keuntungan.
peterchen
Saya ingin tahu tentang masalah yang Anda coba selesaikan di sini. Jika ini hanyalah salah satu biaya mengapa SSD dipertimbangkan sebagai pengganti drive konvensional?
John Gardeniers
@ Peterchen, Anda dapat menggunakan beberapa SSD atau lima puluh 15K spindle.
Mircea Chirea
@iconiK - maksud Anda "untuk server, Anda harus menghabiskan banyak uang"? Jika demikian - ya, itu sebabnya saya juga bertanya-tanya.
peterchen

Jawaban:

61

Beberapa pemikiran;

  • SSD memiliki memori 'overcommit'. Ini adalah memori yang digunakan sebagai pengganti sel 'rusak' dengan menulis. SSD low-end hanya memiliki 7% ruang overcommit; kisaran menengah sekitar 28%; dan disk perusahaan sebanyak 400%. Pertimbangkan faktor ini.
  • Berapa banyak Anda akan menulis kepada mereka per hari? Bahkan SSD kelas menengah seperti yang berbasis pada chip 1200 milik Sandforce jarang menghargai lebih dari sekitar 35GB penulisan per hari sebelum serius memotong ke memori overcommitted.
  • Biasanya, hari 1 SSD baru penuh dengan tulisan, apakah itu OS atau data. Jika Anda memiliki lebih dari> 35GB penulisan pada hari pertama, pertimbangkan untuk menyalinnya dalam batch untuk memberikan SSD beberapa 'waktu rapi' antara batch.
  • Tanpa dukungan TRIM, kinerja penulisan acak dapat turun hingga 75% dalam beberapa minggu jika ada banyak penulisan selama periode itu - jika Anda bisa, gunakan OS yang mendukung TRIM
  • Proses pengumpulan sampah internal yang dilakukan SSD modern dilakukan secara khusus selama periode tenang, dan berhenti saat aktivitas. Ini bukan masalah untuk PC desktop di mana disk bisa diam untuk 60% dari siklus tugas 8 jam yang biasa, tetapi Anda menjalankan layanan 24 jam ... kapan proses ini mendapatkan kesempatan untuk berjalan?
  • Ini biasanya terkubur dalam spesifikasi tetapi seperti disk murah 'biasa', SSD murah juga hanya diharapkan memiliki siklus kerja sekitar 30%. Anda akan menggunakannya hampir 100% - ini akan memengaruhi tingkat MTBF Anda.
  • Walaupun SSD tidak mengalami masalah mekanis yang sama dengan disk biasa, SSD juga memiliki kesalahan tunggal dan banyak-bit - jadi pertimbangkan untuk mem-RAID-nya meskipun instingnya tidak. Jelas itu akan berdampak pada semua kecepatan tulis acak indah yang baru saja Anda beli tetapi pertimbangkan juga.
  • Ini masih SATA bukan SAS, jadi manajemen antrian Anda tidak akan sebaik di lingkungan server, tetapi sekali lagi peningkatan kinerja ekstra akan sangat dramatis.

Semoga beruntung - jangan 'goreng' mereka dengan menulis :)

Chopper3
sumber
2
Apakah maksud Anda 400% untuk ruang ekstra, atau 40%? Saya akan mengedit jawaban Anda tetapi tidak dapat menemukan kutipan, jadi saya kira itu bisa 400%. (
Ngomong
9
Itu juga tidak selalu jelas jika TRIM didukung pada konfigurasi RAID. Ingat, SSD disarikan dari OS dengan RAID. Pastikan untuk memeriksa dengan vendor RAID.
Matt Sherman
5
Maksud saya 400 Chris, khususnya yang digunakan di FC SAN, sangat mahal, sangat.
Chopper3
5
Salah satu trik untuk mendapatkan lebih banyak ruang cadangan dari drive adalah dengan melakukan penghapusan aman, kemudian mempartisi dengan sebagian besar yang tidak digunakan. Ruang kosong ini akan menambah kinerja dan masa pakai SSD.
Zan Lynx
1
Hanya ingin memberi +1 dengan @ZanLynx .. Saya biasanya hanya mempartisi sekitar 80% drive ketika saya menggunakan SSD + Raid.
Tracker1
12

Saya menemukan tautan ini, yang memiliki analisis yang menarik dan menyeluruh tentang MLC vs SLC SSD di server

Dalam pandangan saya menggunakan array MLC flash SSD untuk aplikasi perusahaan tanpa setidaknya menggunakan efek mitigasi aus (diklaim) dari teknologi seperti MFT Easyco seperti melompat keluar dari pesawat tanpa parasut.

Perhatikan bahwa beberapa vendor MLC SSD mengklaim bahwa drive mereka "cukup kuat" untuk bertahan dari penulisan:

SandForce bertujuan untuk menjadi perusahaan pertama dengan pengontrol yang mendukung chip sel multi-level untuk hard disk solid-state yang digunakan di server. Dengan menggunakan chip MLC, SF-1500 membuka jalan untuk menurunkan biaya dan membuat server drive dengan kepadatan lebih tinggi. Sampai saat ini flash drive untuk server telah menggunakan chip flash sel tingkat tunggal. Itu karena daya tahan dan keandalan untuk chip MLC umumnya belum memenuhi persyaratan server.

Ada analisis lebih lanjut dari klaim ini di AnandTech .

Selain itu, sekarang Intel telah mencatat bahwa SLC mungkin berlebihan di server 90% dari waktu :

"Kami percaya SLC [sel tingkat tunggal] diperlukan, tetapi yang kami temukan melalui studi dengan Microsoft dan bahkan Seagate adalah aplikasi intensif-komputasi tinggi ini benar-benar tidak menulis sebanyak yang mereka kira," kata Winslow. "Sembilan puluh persen aplikasi pusat data dapat memanfaatkan drive MLC [sel bertingkat] ini."

.. selama sekitar setahun terakhir, vendor telah menyadari bahwa dengan menggunakan perangkat lunak khusus pada pengontrol drive, mereka dapat meningkatkan keandalan dan daya tahan SSD MLC kelas konsumen mereka ke titik di mana perusahaan telah merangkul mereka untuk server pusat data dan array penyimpanan berkinerja tinggi. Vendor SSD telah mulai menggunakan istilah flash NAND eMLC (enterprise MLC) untuk menggambarkan SSD tersebut.

"Dari perspektif volume, kami melihat ada lingkungan komputasi dengan kinerja tinggi yang benar-benar intensif dan menulis tinggi yang mungkin masih membutuhkan SLC, tetapi itu berada di 10% teratas bahkan dari persyaratan pusat data perusahaan," kata Winslow.

Intel memberi makan 10% teratas dari pasar pusat data perusahaan melalui perusahaan patungannya dengan Hitachi Global Storage Technologies. Hitachi memproduksi jajaran SSD400S dari Serial Attached SCSI SSDs, yang memiliki 6Gbit / detik. throughput - dua kali lipat dari SSD SATA berbasis MLC-nya.

Intel, bahkan untuk drive SSD yang berorientasi server, telah bermigrasi dari SLC ke MLC dengan ruang "overprovisioning" yang sangat tinggi dengan seri Intel SSD 710 baru . Drive ini mengalokasikan hingga 20% dari keseluruhan penyimpanan untuk redundansi secara internal:

Kinerja bukan prioritas utama untuk SSD 710. Sebagai gantinya, Intel bertujuan untuk memberikan daya tahan SLC dengan harga yang wajar dengan menggunakan eMLC HET NAND yang lebih murah. SSD 710 juga mendukung overprovisioning yang dapat dikonfigurasi pengguna (20%), yang meningkatkan daya tahan drive secara signifikan. Garansi SSD 710 adalah 3 tahun atau hingga indikator keausan mencapai tingkat tertentu, mana yang lebih dulu. Ini adalah pertama kalinya kami melihat garansi SSD terbatas dengan cara ini.

Jeff Atwood
sumber
7

Selalu mendasarkan hal-hal semacam ini pada fakta daripada anggapan. Dalam hal ini, mengumpulkan fakta itu mudah: catat profil baca-tulis IOPS jangka panjang dari sistem produksi Anda, dan kemudian cari tahu apa yang dapat Anda jalani dalam skenario pemulihan bencana. Anda harus menggunakan sesuatu seperti persentil ke-99 sebagai ukuran Anda. Jangan tidak menggunakan rata-rata ketika mengukur IOPS cpacity - puncak adalah semua yang peduli! Maka Anda perlu membeli kapasitas dan IOPS yang diperlukan sesuai kebutuhan untuk situs DR Anda. SSD mungkin merupakan cara terbaik untuk melakukan itu, atau mungkin tidak.

Jadi, misalnya, jika aplikasi produksi Anda membutuhkan 7500 IOPS pada persentil ke-99, Anda mungkin memutuskan Anda dapat hidup dengan 5000 IOPS dalam bencana. Tapi itu setidaknya 25 15K disk diperlukan di sana di situs DR Anda, jadi SSD mungkin menjadi pilihan yang lebih baik jika kebutuhan kapasitas Anda kecil (terdengar seperti itu). Tetapi jika Anda hanya mengukur bahwa Anda menghasilkan 400 IOPS dalam produksi, cukup beli 6 drive SATA, hemat koin, dan gunakan ruang ekstra untuk menyimpan lebih banyak snapshot cadangan di situs DR. Anda juga dapat memisahkan membaca dan menulis dalam pengumpulan data Anda untuk mengetahui berapa lama SSD non-perusahaan akan bertahan untuk beban kerja Anda berdasarkan spesifikasinya.

Juga ingat bahwa sistem DR mungkin memiliki memori lebih kecil dari produksi, yang berarti lebih banyak IOPS diperlukan (lebih banyak menukar dan lebih sedikit cache sistem file).

rmalayter
sumber
5

Bahkan jika MLS SSD hanya berlangsung selama satu tahun, dalam waktu bertahun-tahun penggantian akan jauh lebih murah. Jadi bisakah Anda mengatasi keharusan untuk mengganti SSD MLS ketika mereka keluar?

Ian Ringrose
sumber
titik yang baik, terutama karena mereka akan berada dalam array RAID .. selama "terlalu banyak" dari mereka tidak gagal sekaligus, ini sebenarnya masuk akal.
Jeff Atwood
@ Jeff, jika Anda dapat menukar beberapa masuk dan keluar dengan PC atas meja Anda, sehingga tidak semua mendapatkan beberapa pola penggunaan, ini akan membuatnya kurang menjilat mereka semua akan gagal pada saat yang sama.
Ian Ringrose
@ Jeff, saya pikir untuk perluasan besar, Gagal == "mulai melakukan hak yang sangat lambat" daripada kemudian "dan tidak membaca data"
Ian Ringrose
jangan Anda suka koreksi otomatis :-)
Jeroen Wiert Pluimers
3

Jika kita mengesampingkan masalah kuantitas penulisan (atau membuktikan bahwa SSD tingkat konsumen dapat mengatasinya), saya pikir SSD adalah hal yang baik untuk ditambahkan ke lingkungan tingkat perusahaan. Anda mungkin akan menggunakan SSD dalam array RAID. RAID5 atau RAID6. Dan masalah dengan ini adalah bahwa setelah kegagalan drive tunggal, array menjadi semakin rentan terhadap kegagalan. Dan waktu untuk membangunnya kembali sangat tergantung pada volume array. Beberapa larik TB dapat membutuhkan waktu berhari-hari untuk dibangun kembali, sambil terus diakses. Dalam hal SSD, RAID-array akan a) pasti lebih kecil b) waktu pembuatan kembali berkurang secara drastis.

Vlad
sumber
3

Sebuah Whitepaper tentang perbedaan antara SLC dan MLC dari SuperTalent menempatkan daya tahan MLC dan 10 dari daya tahan SSD SLC tetapi kemungkinan SSD MLS akan hidup lebih lama dari perangkat keras yang Anda masukkan. Saya tidak yakin seberapa dapat diandalkan statistik / fakta tersebut dari SuperTalent.

Dengan asumsi Anda mendapatkan tingkat dukungan yang sama dari pemasok SSD MLC maka titik harga yang lebih rendah membuatnya layak dicoba.

chunkyb2002
sumber
1
5 tahun masa hidup untuk penggunaan desktop biasa telah disebutkan. Jika itu adalah perkiraan yang akurat maka mereka tidak akan hidup lebih lama dari server di lingkungan pusat data!
JamesRyan
@JamesRyan: Meskipun tidak ditampilkan dalam sebagian besar perhitungan, masa pakai sangat tergantung pada fraksi ruang kosong.
Ben Voigt
1
Di organisasi tempat saya bekerja, kami selalu memperbarui perangkat keras server selama 3 tahun. Saya mendapat kesan bahwa praktik terbaik yang diterima secara umum tetapi lakukan koreksi jika saya salah.
chunkyb2002
3

Anda hanya harus menghitung jumlah tulisan harian yang Anda miliki dengan set-up Anda saat ini dan membandingkannya dengan apa yang dijamin pabrik drive SSD mereka. Intel tampaknya paling terdepan dalam hal ini - misalnya, lihat lembar data drive SSD utama mereka: http://www.intel.com/design/flash/nand/mainstream/technicaldocuments.htm

Bagian 3.5 (3.5.4, khususnya) dari dokumen spesifikasi mengatakan bahwa Anda dijamin memiliki drive Anda setidaknya 5 tahun dengan 20GB penulisan per hari. Saya berasumsi itu sedang dihitung saat menggunakan seluruh kapasitas drive dan tidak menyediakan ruang kosong untuk menulis sendiri.

Yang juga menarik adalah lembar data tentang penggunaan SSD mainstream di lingkungan perusahaan.

cearny
sumber
Sayangnya itu sama sekali tidak sesederhana karena keausan menguatkan penulisan (ingat itu dirancang untuk menyebar menulis tidak menguranginya) dengan cara yang eksklusif dan dapat sangat bervariasi dalam efektivitasnya berdasarkan pola penggunaan.
JamesRyan
Hm, poin yang sangat bagus. Selain itu, kehilangan perintah TRIM jika menggunakan drive dalam pengaturan RAID juga harus meningkatkan amplifikasi tulis. Saya kira itu semua bermuara pada ide masing-masing produsen dari pola penggunaan yang khas.
cearny
2

Saya menggunakan beberapa drive SLC 32 GB beberapa tahun yang lalu sebagai penyangga untuk beberapa aplikasi yang dirancang dengan buruk yang kami gunakan.

Aplikasi ini menulis 90% kecil (<4k) dan berjalan secara konsisten (24/7) pada 14k w / s sekali pada drive SSD. Mereka dikonfigurasi RAID 1, semuanya cerah, latensi rendah!

Namun kira-kira satu bulan dan drive pertama berkemas, secara harfiah dalam waktu 3 jam, drive kedua telah mati juga. Bagaimanapun RAID 1 bukan rencana yang bagus :)

Saya akan setuju dengan poster-poster lain tentang semacam RAID 6 jika tidak ada lagi yang menyebarkannya ke lebih banyak drive.

Sekarang ingatlah ini beberapa tahun yang lalu dan hal-hal ini jauh lebih dapat diandalkan sekarang dan Anda mungkin tidak memiliki profil I / O yang sama.

Aplikasi ini telah direkayasa ulang, namun sebagai celah penghenti yang mungkin atau mungkin tidak membantu Anda, kami membuat disk ram besar, membuat beberapa skrip untuk membangun kembali / membuat cadangan disk ram dan mengambil hit satu jam atau lebih kehilangan data /Waktu Pemulihan.

Sekali lagi, siklus hidup data Anda mungkin berbeda.

sysboy
sumber