Küçük SSD'mi daha büyük bir sabit disk için önbellek olarak nasıl kullanabilirim?


58

Bir (küçük) SSD diskini büyük bir sabit disk için önbellek olarak kullanmak istiyorum. Bunu yapan donanım tabanlı ürünler olduğunun farkındayım: HighPoint RocketHybrid HBA , Intel SmartResponse ve diğerleri. Bulabildiğim tek yazılım ürünü var: ExpressCache by Diskeeper :

ExpressCache, SSD'lerin ve HDD'lerin en iyi özelliklerini, herhangi bir çaba göstermeden veya kullanıcıdan ön koşul gerektirmeden akıllıca ve otomatik olarak birleştirir, böylece kullanıcılar her iki dünyanın da en iyisini elde eder; dinamik performans ve ölçeklenebilir kapasite. 4GB kadar küçük SSD'ler kullanılabildiğinden, üreticiler için inanılmaz derecede uygun bir çözüm sunar.

Kullanıcı modu ve Çekirdek Modu bileşenlerinden oluşan ExpressCache, genel sistem performansını iyileştirmek ve Windows PC başlatmayı, uygulama başlatmalarını ve veri erişim hızını büyük ölçüde hızlandırmak için SSD'yi bir HDD ile birlikte akıllı bir önbellek olarak kullanır.

Ancak, bu ürün sadece OEM !

Herhangi bir başarı olmadan alternatifler aradım ... Bunu anlayamıyorum: Harika bir fikir gibi görünüyor, ek bir donanıma gerek yok ve bir servet harcamadan disk performansını gerçekten artırabilir.

Bu yüzden, bunu yapan herhangi bir yazılımı, Windows veya Linux için bilen var mı diye soruyorum. Veya bunun kötü bir fikir olduğunu düşünüyorsanız, nedenini bilmek isterim.

Not: ReadyBoost bunun için gerçekten uygun değildir. Disk yazma işleminin gerçekten pahalı olduğu, çok miktarda RAM içeren sistemler üzerinde çok az etkisi olduğu ve SSD'niz 100GB + ise düzgün ölçeklemediği varsayımıyla oluşturulmuştur.


PrimoCache (Windows için) bunu yapabilir; RAM'i önbellek olarak kullanmakta uzmanlaşmış, ancak bir SSD bölümünü L2 önbellek olarak kullanabilir - Boyutunun sınırlı olduğuna inanmıyorum ve hatta önyükleme sürelerini hızlandırabildiğini söylüyor (sadece bir SSD kullandığınızı ve sadece VERİ DEPOSU).
BrainSlugs83

Yanıtlar:


52

Bir SSD'yi normal sabit sürücünüz için önbellek olarak kullanmanın birkaç yolu vardır. Bu yeni bir fikir değildir ve hali hazırda birkaç uygulaması vardır.

Windows'ta:

En iyi uygulama NVelo’dur: Dataplex - Önbelleğe alma ve isteğe bağlı yazma önbelleğe alma özelliğine sahiptir. Ne yazık ki, ExpressCache gibi, yalnızca OEM'lerde kullanılabilir. Bunu elde etmenin en ucuz yolu, PCIE adaptörünü küçük bir SSD ile paketleyen ve mevcut sabit disk sürücünüzü önbelleğe almak için dataplex yazılımını kullanan bir OCZ SSD satın almak.

Ancak, saf yazılım uygulamaları da var: FancyCache - Blok katmanında okuma ve yazma önbelleğe alma işlemini gerçekleştirmeyi beklemeniz beklendiği gibi çalışıyor. Öncelikle bir bellek önbelleği var, ancak son zamanlarda keyfi bir şekilde büyük olabilen ikinci katman SSD önbellek (ZFS L2ARC gibi bir bit) desteği aldı.

Yazma dayanıklılığı pahasına (örneğin bir UPS ile birlikte mükemmel derecede iyi) IOPS’yi azami seviyeye çıkarmak istiyorsanız, alternatif bir şeye benzer: SuperCache - Bu sadece RAM’i kullanır, SSD yok. Ancak diğerlerinden farklı olarak, mutlu bir şekilde emtia donanımında 100.000 IOPS'yi aşacaktır. Örneğin veritabanı dizinleri içeren blok cihazını önbelleğe almak için çok kullanışlıdır. Temelde herhangi bir boyutta birim için RAM Diski benzeri bir performans vermek (temel alınan cihazın yazma hacmine bağlı kalacağı varsayılarak).

Linux'ta işler biraz daha iyi:

Daha önce belirtilen bir posterde, Flashcache'e sahipsiniz - Oldukça iyi çalışıyor, ancak performansı iş yükünüze göre büyük ölçüde değişiyor. Erişim kolaylığı düşük olan birçok durumda beklediğiniz kadar iyi performans göstermez. Bunun neden olduğundan emin değilim, ancak çoğu iş yükü için bu harika bir seçenek.

En iyi seçenek (kod hala oldukça "üretime hazır" olmasa da ) bcache ( bazıları eski olsa da burada daha fazla bilgi var ) - Henüz denediğim herhangi bir SSD önbelleğinin en iyi performansına sahip belirtilen seçenekler, birden fazla blok cihazını tek bir önbellekte önbelleğe almayı destekler. Ayrıca (kişisel olarak denememiş olmama rağmen, henüz çalışmayabilir) birden fazla önbellek aygıtını destekler, böylece IOPS'nizi en üst düzeye çıkarmak için daha ucuz SSD'ler kullanabilirsiniz. Kod bir git havuzunda: git: //evilpiepirate.org/~kent/linux-bcache.git . Henüz kesin olarak karar verilmemiş olmasına rağmen, bir sonraki çekirdek sürümüne dahil etme konuşması var.

Şahsen ben en iyi performans sergileyen seçeneği bcache (iş yüküm çoğunlukla veritabanımla ilgili, ancak aynı zamanda ana dizüstü bilgisayarımı da tamamen önbelleğe aldığım halde buluyorum). Tecrübelerime göre, HDD’nin sıralı yazma performansı, önbellek hızlı bir şekilde dolarken ve HDD’nin önbelleğe alınmış sektörleri yazması gerektiğinden, genellikle daha hızlı olması nedeniyle sıkıntı tıkanıklığıdır. Bu elbette bir yazma ağır iş yükü için, daha dengeli bir okuma-yazma iş yükünde işlerin muhtemelen farklı olacağı yönünde.

Ayrıca sizi uyarmalıyım, tam hızda, SSD'nizin yazma sınırlarını oldukça çabuk yakacağınız konusunda. Şu anda üçüncü OCZ Vertex 3'ümde yaşıyorum. Çok hızlı olmasına rağmen SSD'ler çok dayanıklı değiller, bu yüzden birkaç ayda bir değiştirmelerini bekleyin.


2
Harika cevap için teşekkür ederim! "Tükenmişlik" oranına gelince, sanırım bu, bu ürünlerin çoğunun sadece OEM olmasının temel nedeni olduğunu düşünüyorum, örneğin OCZ Synapse (Dataplex ile birlikte gelen Cache SSD)% 50
aşırı tedarik edilmiştir

2
@Supercilious Neden sadece SLC veya eMLC SSD kullanmıyorsunuz? Bu, güvenilir olmayan MLC flaşının sık değiştirilmesinden daha verimli (ve kesinlikle daha güvenilir) olmalıdır.
Miles Erickson

6
@Supercilious Burası beni kaybettiğin yer. Biraz daha uzun ömür? SLC ve EMLC flaş uzun ömürlü olduğunu büyüklüğü hakkındaki emir büyük olmayan, biraz daha büyük.
Miles Erickson

1
@Firebug Bir süredir yığında etkisizim fakat gönderdiğim cevap duruyor. Yeni SSD'ler daha yüksek yazma dayanıklılığı sunarken, yine de oldukça hızlı bir şekilde başarısız oluyorlar. Makinelerimde (özellikle HP DL360 G9 + bazı Lenovo) Her bir mekanik SAS veya SATA sürücüsü için onlarca SSD'yi yakıyorum. 2017'de, bulduğum en iyiler olan Samsung SM863a SSD'lerimden ortalama 8 aylık bir ömre sahiptim. Bu tamamen iyi ve tamamen iş yüküm için maliyete değer, ancak akılda tutulması ve sürekli yazma aktivitesi bir yıl içinde herhangi bir SSD'yi öldürür.
Süper,

1
@Firebug Evet, tüm ağır yükler sunucularımda (çoğunlukla HP DL360 Gen9) yapılıyor ve iş yükü% 30 /% 70 okuma / yazma ve SSD'ler nadiren 300-350 MB / s hızında 7 gün 24 saat dövülüyor 500 MB / sn'nin üzerinde Tüm I / O, 64 KB blok boyutunda ve SSD'nin tamamında oklüzyonel toplu TRIM'leri ile rasgele. Masaüstü kullanımı altında, bu veri merkezi SSD'lerini öldürmek yıllar alacaktır, ancak tüketici SSD'leri halen oldukça düşük IMO olan 180-300 TB TBW değerine sahiptir.
Süper

10

Çok yoğun sunucular tarafından kullanılan Linux için çok ilginç bir yazılım var:

https://github.com/facebook/flashcache

Bir SATAII'de, RAID6 kurulumundaki 8 manyetik dönme sürücüsü ciddi performans artışı elde ediyorum. SATAIII flashcache SSD cihazıyla rastgele okuma (540 okuma, 420 yazma) SATAII veriyolumu neredeyse% 90-95'e kadar doyuruyor - 280 MB okuma (yoğun zamanlarda), 270 MB yazma (yalnızca benzetilmiş yükte ... üretimde hiç ulaşılmadı) . Şimdi yaklaşık yarım yıl sürer. Disk sürücüsü yazıyor ... 20-30MB / s - yedek G / Ç zamanı kullanın ...


5

SSD'niz ne kadar büyük?

Muhtemelen tüm işletim sisteminizi ve yazılımı SSD'ye yükleyerek elde edeceğiniz en iyi etki, sabit veri depolarınızı HDD'nizde depolar.

SSD'niz küçükse, üzerine bir sayfa dosyası koymak yararlı olabilir. Windows'un dosyalarınızın çoğunu önbelleğe koyacağından şüpheliyim, ancak en azından son zamanlarda kullanılmayan uygulamalara hızlı bir şekilde geçilmesine izin verirken RAM'de en son kullanılan uygulamaların belleğini ve dosyaları önbelleğe almanıza izin verecek. sırayla SSD'de olan pagefile içinde bulunur).


1
SSD’m 120 GB’dir. Bu çalışma grubu veya önbellek için yeterli olsa da, kesinlikle tüm sistem dosyalarımı + uygulamalarımı barındırmak yeterli değildir. İkincisi, SSD'de MSSDK örnek kodunu (nadiren okumak) ve günde 100 kez erişilen kendi kodumu diskte tutmak istemiyorum. Dahası, RAID için iki SSD'ye ihtiyacım olacaktı - verilerimi asla tek bir diske güvenmiyorum, manyetik ya da katı halde olsun ...
12:12

2
Sembolik bağları kullanabilir ve MSSDK / Windows yükleyici önbelleğini / etc'yi sabit sürücünüze taşıyabilirsiniz (sembolik bağları sistem sürücünüzde gerekli yollardan yeni konumlara işaret ederken); ve kendi kodunuzu SSD'ye (hızlı rastgele erişime ihtiyaç duyan kısmı) koyun. Ve bir yedekleme kullanmak muhtemelen RAID'e güvenmekten daha iyi bir çözüm olacaktır.
penartur

3
Bu çözüm için +1. Aslında bir SSD kullanmak çok daha iyi performans sağlayacaktır. Sistem bölümünüz için bir SSD kullanmak, bir başka önbellek seviyesinden önemli bir fayda sağlaması pek olası değildir.
Jesse,

1
Sistem dosyaları için ssd ve ana klasör için hdd kullanıyorum. Hdd'nin bir şişe boynu olduğunu farkettim, o zaman ondan sonra bir sürü dosya okumanız gerekiyor.
aisbaa

2

FancyFlash işi yaptı. Laboratuvarlarım için kendi Hyper-V R2 sunucum @home'um var ve bir OCZ Revo Hybrid PCIe sürücüsü aldım. Ne yazık ki, önbellek oluşturma sürücüsü yalnızca Windows 7 ile çalışır. Windows Server 2008 R2 için bir plan yoktur. Bu yüzden FancyFlash sürücüsünü Hyper-V Host cihazıma kurdum ve SSD'imi Revo Hybrid'deki 1tb gömülü disk için önbellek görevi görecek şekilde yapılandırdım (VHD'm). TaDa! VM'leri çalışır ve hızlandırır! :)

Son sürümün uygun olacağını umuyorum $$$


3
Bu yazılım için bir bağlantınız var mı?
haimg

Acaba "FancyCache" (şimdi PrimoCache olarak da bilinir) anlamına mı geliyor? - Bu cevabın ne zaman yayınlandığı (IIRC) hakkında beta (ve nihai fiyat bilinmiyor). Ama iki yıl oldu ve 21 puan aldı, bu yüzden tekrar giriş yapıp bize söyleyeceğinden şüpheliyim. : - /
BrainSlugs83

2

eBoostr , sisteminizi hızlandırmak için düzenli olarak kullanılan uygulamaların büyük bölümlerini önbelleğe alan bir uygulamadır. Genelde USB sürücüler veya kullanılmayan RAM kullanmak içindir, ancak bunun yerine bir SSD kullanamamanızın gerçek bir nedeni yoktur.

Windows'un tüm önemli sürümleri için kullanılabilir ve peşinde olduğunuza çok benziyor.

  • eBoostr, sisteminizdeki uygulamaların kullanımını izler ve en sık kullanılanların verilerini önbelleğe alabilir, bu yükleme gecikmelerini azaltır ve performansı optimize eder
  • Kullanımı kolay sürükle ve bırak arayüzü, sisteminizdeki uygulamaları seçmeli olarak geliştirmenizi ve eBoostr tarafından geliştirilen uygulamalara öncelik vermenizi sağlar
  • Azaltılmış yükleme süreleri ve daha az sabit sürücü erişimi, eBoostr kullanarak dizüstü bilgisayarların ve netbookların pil ömrünü uzatmaya yardımcı olur

Daha fazla bilgi için: http://www.eboostr.com/feature


2

Tüm bir işletim sistemini ve uygulamaları tek bir SSD'ye yüklemek kesinlikle mümkün olsa da, muhtemelen kullanmamalısınız. Zamanla, SSD'ler sürekli olarak yeniden yazmaya yavaşlar ve tekrar hızlandırmak için "yenilenmelidir". SATA 600 Gbps sürücü gibi bulabileceğiniz en hızlı sabit diski kullanmaktan daha iyidir ve donanım düzeyinde SSD önbelleğe almayı destekleyen bir ana kart veya başka bir denetleyici edinin. Asus ROG Maximus anakartlarının tümü bu işlevi yerleşik olarak destekliyor.

Ancak, bu yeni sistemi inşa edene kadar, SSD'den bir miktar fayda sağlamanın bir yolunu buldum. SSD'ye bir bellek önbelleği oluşturdum ve ana sabit sürücümde bir tane olsa bile, Windows bunun yerine otomatik olarak daha hızlı SSD kullanıyor gibi görünüyor. Ayrıca tüm Internet Explorer önbellek diskimi ve internette en az 2 veya 3 kez gezinen SSD'ye taşıdım.

Yeni sistemimi, 1150 soket biçiminde 4. nesil Intel i7 işlemcili Asus Maximus VI Hero anakartı üzerine kuracağım. Oraya binlerce harcama yapmadan iyi bir performans seviyesi gibi görünüyor. Toplam maliyet, Windows'un yeni bir sürümünü içerecek şekilde 800-900 ABD Doları aralığında olması öngörülmektedir.


2

Biri ReadyDrive ve ReadyBoost'un Windows I / O teknolojilerini kullanabilir . Bu teknolojiler SSD'lerin tanıtılmasından önce ortaya çıktığı için, SSD ile çalışıp çalışmadıklarına veya ne kadar iyi çalıştıklarına dair çok az bilgi vardır.

ReadyBoost için bazı ipuçlarına bakın: SSD'mi ReadyBoost önbellek diski olarak nasıl kullanabilirim? Her ne kadar bu diğer iplik tam tersini iddia ediyor.

ReadyDrive, Windows Vista veya hibrit sürücü veya diğer Flash bellek önbellekleri (Intel Turbo Memory gibi) içeren bilgisayarların daha hızlı başlatılmasını ve hazırda bekletme modundan daha kısa sürede devam etmesini sağlayan bir Windows Vista özelliğidir.

Bir de sayfa belleği SSD'ye koyabilir, ancak sistem belleğiniz yeterliyse sınırlı bir iyileşme olabilir.

En iyi gelişme, penartur'un da belirttiği gibi, SSD'ye Windows yüklemekten gelecektir.


1
SSD arıza oranı, geleneksel sabit disklerden önemli ölçüde daha düşüktür - bir zamanlar bunun tersi olmuş olabilir, ancak bu soru ve cevap sırasında değil. Birkaç yıl önce SSD yazma silme döngüleri hakkında bir sürü endişe vardı ve herkes HDD'lerin olağanüstü derecede kırılgan olduğunu ve çoğu zaman hiçbir uyarı olmaksızın düzenli olarak başarısız olduklarını geçici olarak unutmuş gibiydi. Yazma çevrimleriyle ilgili endişe, birkaç yıl boyunca her hafta terabayt veri yazmadığınız sürece, modern aşınma seviyelendirme ile ilgili bir sorun değildir.
thomasrutter

1

ExpressCache'i indirin

Eğer mı Google arandı ExpresCache için? Görebildiğim birini indirebilir

  • SanDisk - sağdaki bağlantı; sadece SanDisk SSD'lerle çalışır
  • Lenovo - kılavuzdaki aşağıdaki bağlantı; donanım bağımlılığı olabilir

Özellikle Lenovo'da, x86 veya x64 sürümünü indirebilirsiniz. Sandisk, yalnızca ExpressCacheSetup.exe'yi sunuyor gibi görünüyor ve hangi mimariyi desteklediğini bilmiyorum. Belki bir tane belki ikisi de ...


Her ikisi de ilgili satıcılardan donanım gerektirir. Yazılım, donanım kontrollerini geçmedikçe doğru şekilde kurulmaz.
Güneş

0

ExpressCache yalnızca bir OEM ürünüdür. Lisanslı OEM'lerin dışındaki donanımlarda kullanılmasını önleyen dahili denetimlere sahip olduğundan oldukça eminim.

Görünen o ki, FancyCache genel kullanım / oem dışı kullanım için tek uygun araç. Bazı şeyleri yanlış anlayabilirim, ancak SSD'deki ön hazırlık gibi bir şeyin yazma döngüsünü oldukça hızlı yakacağını düşünüyorum. Bana göre, buradaki fikir, ana HDD ve SSD'yi kapsayan yalnızca bir sürücü harfine sahip olmak, SSD'ye en sık erişilen ve genellikle statik dosyaları koymak ve daha az kullanılan ve sıklıkla değiştirilen dosyaları sabit sürücüde saklamak. Bu, bir SSD'nin performans avantajını ve bir HDD'nin uzun vadeli uygulanabilirliğini sağlar ve kullanıcının SSD'deki alanı HDD'ninkiyle dengelemeye çalışmasını gerektirmez. Buna duyulan ihtiyaç o kadar açık ki, en azından benim için, bu ihtiyaç için çözüm bulunmamasına şaşırdım.


-2

Burada adlandırılmayan VeloSSD. Verilerimi sık sık bozduğu için bu yazılıma iyi bir üne sahip olamıyorum, ancak diğer kullanıcılar iyi çalıştığını bildirdi


2
Bir ürün listesine sadece bir ürün adı eklemek bir cevap sayılmaz ve bu "parlayan öneri" çok yararlı değildir. Biraz daha rep ile, bunu bir yorum olarak yayınlayabilirsiniz.
fixer1234
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.