PRIVÁT OFFSHORE INFRASTRUKTÚRA
Tárolás és helyreállításHaladó · 6 perc olvasás

Mérje a NVMe teljesítményét anélkül, hogy félrevezetné magát

Határozza meg az I/O-mintát, szabályozza a gyorsítótár-hatásokat és vizsgálja meg a késleltetési eloszlásokat, mielőtt egy lemeztesztből alkalmazáskövetkeztetést vonna le.

Szerző: SwissOctet Editorial
A KÖZVETLEN VÁLASZ

Egy hasznos tárolási teszt a műveletméretet, a hozzáférési mintát, a párhuzamosságot és a tartóssági követelményeket az alkalmazáshoz igazítja. Rögzítse a tesztkörülményeket és a késleltetés eloszlását, majd erősítse meg az eredményt alkalmazásmérésekkel.

01

Kezdje tárolási kérdéssel, ne pontszámmal

Döntse el, mit kell megtudnia, mielőtt benchmarkot futtat. Lehet, hogy lassú adatbázis-commiteket, fájlelosztási átviteli teljesítményt vagy sok kis fájlt létrehozó buildfolyamatot vizsgál. Ezek a munkaterhelések nem ugyanazt kérik a lemeztől. Egy nagy szekvenciális másolás lenyűgözőnek tűnhet, miközben keveset mond arról a késleltetésről, amelyet egy kis véletlenszerű olvasásokat végző szolgáltatás tapasztal.

A NVMe-t nem felejtő adathordozókhoz és hatékony párhuzamos I/O-hoz tervezték, de a protokoll neve nem írja le egy hosztolt tárolási útvonal minden részét. A virtualizáció, a fájlrendszer, az erőforrás-versengés és az alkalmazás továbbra is számít. Írjon fel olyan teszthipotézist, mint hogy a tárolási késleltetés lassít-e egy adott műveletet, ahelyett hogy olyan számot próbálna előállítani, amely bizonyítja, hogy a teljes szerver gyors.

02

Írja le a munkaterhelést reprodukálható módon

Rögzítse a műveletméretet, a szekvenciális vagy véletlenszerű mintát, az olvasás-írás arányt, a feladatok számát és a várakozási sor mélységét. Adja meg az adatkészlet méretét és a teszt időtartamát. Az fio dokumentációja elmagyarázza ezeket a munkaterhelés-vezérlőket és a rendelkezésre álló I/O-motorokat. Előfordulhat, hogy a szándékolt mélységet nem minden motor vagy beállítás éri el, ezért a kért konfiguráció mellett a jelentett viselkedést is olvassa.

Tartson másolatot a teszt leírásáról az eredmény mellett. Jegyezze fel az operációs rendszert, a fájlrendszert, a csatolási beállításokat, a szolgáltatásaktivitást és a rendelkezésre álló kapacitást. Ha konfigurációkat hasonlít össze, egyszerre egy releváns feltételt változtasson. Egy eltérő hozzáférési mintájú vagy párhuzamosságú tesztet nem lehet tisztességesen úgy bemutatni, mintha csak a tárolási adathordozó változott volna.

AlkalmazásmintaLeírandó teszt dimenzióVizsgálandó eredmény
Nagy fájl kézbesítéseSzekvenciális olvasások és párhuzamos kliensekFenntartott átviteli teljesítmény és CPU használat
RekordkeresésKis véletlenszerű olvasások és reprezentatív párhuzamosságKésleltetés eloszlása és befejezett műveletek
Tartós tranzakcióÍrási és szinkronizálási követelményekCommithez kapcsolódó késleltetés, nem csak a pufferelt írási sebesség
Build vagy kicsomagolásVegyes kis fájlos műveletekVégponttól végpontig tartó feladat időtartama és I/O várakozások
03

Szabályozza a gyorsítótárazást anélkül, hogy úgy tenne, mintha nem számítana

Egy memóriába illő adatkészlet az első menet után nagyrészt a gyorsítótár viselkedését mérheti. Ez hasznos lehet, ha az alkalmazás általában ugyanabból a gyorsítótárból profitál, de nem szabad nyers eszközteljesítményként címkézni. Szándékosan válassza meg, hogy a teszt egy meleg alkalmazási útvonalat, egy hidegebb adatkészletet vagy az operációs rendszer pufferelési hatását csökkenteni hivatott I/O-módot vizsgál-e.

A közvetlen I/O támogatása és igazítása a platformtól és a motortól függ. Az sem fejezi ki automatikusan az alkalmazás tartóssági követelményeit, és nem szüntet meg minden gyorsítótárat a veremben. Világosan adja meg a választott módot, és kerülje a pufferelt teszt összehasonlítását egy puffer nélküli teszttel, mintha ugyanazt a munkát képviselnék. Ahol ez segíti az értelmezést, tartsa külön a bemelegítési és a mért időszakokat.

04

A késleltetési farokértékeket a teljesítmény mellett olvassa

Az átlagos késleltetés elrejtheti a valós kéréseket befolyásoló lassú műveleteket. Vizsgálja meg a jelentett percentiliseket és a mögöttük lévő minták számát. Egy magas percentilis azt a határt írja le, amely alá a megfigyelt műveletek megadott hányada esett abban a tesztben; ez nem állandó szolgáltatási garancia. A rövid vagy nem reprezentatív futások korlátozott bizonyítékot adnak a forgalmas termelési időszakokról.

A nagyobb várakozási sor mélysége javíthatja a befejezett átviteli teljesítményt, miközben növeli a várakozási időt. Ez a kompromisszum megfelelhet a kötegelt feldolgozásnak, és árthat egy interaktív szolgáltatásnak. Hasonlítsa össze az eredményeket az alkalmazáshoz hasonló párhuzamosság mellett, és egyidejűleg figyelje a CPU-t és az I/O nyomást. Álljon le, mielőtt a teszt szükségtelen zavart okozna a környezetet megosztó másik munkaterhelésnek.

05

Tartsa a tesztet engedélyezettnek és nem destruktívnak

Használjon dedikált tesztkönyvtárat vagy előkészített eldobható kötetet, elegendő szabad hellyel és egyértelmű tisztítási tervvel. Soha ne irányítson írási benchmarkot ellenőrizetlen nyers eszközre vagy termelési adatkészletre. A kezdés előtt ellenőrizze az eszköz célját és írási viselkedését, és kezdje korlátozott futással. A szintetikus I/O kapacitást fogyaszthat és zavarhatja a szolgáltatásokat, még akkor is, ha nem ír felül hasznos fájlokat.

Termeléshez hasonló értékeléshez egyeztessen karbantartási ablakot, és tartsa meg az alkalmazásfigyelést. Lehetőleg kitalált adatokat használjon. Ne következtessen a tárolási megbízhatóságra egy sebességtesztből: az integritásellenőrzések, a biztonsági mentések és a helyreállítás külön feladatok. Egy benchmarkot teljesítő eszköznek továbbra is szüksége van helyreállítási stratégiára törlés, szoftverhibák vagy a gép elvesztése esetére.

06

Zárja le a kört alkalmazási bizonyítékokkal

Tegyük fel, hogy egy jelentéskészítő szolgáltatás idejének nagy részét véletlenszerű olvasásokra várva tölti. A csapat egy reprezentatív olvasási mintát tesztel, majd megismétli a tényleges jelentést összehasonlítható adatokon. Ha a jelentés javul, miközben a többi munkája stabil marad, az eredmény alátámasztja a tárolási hipotézist. Ha nem, vizsgálja a lekérdezéstervezést, a memóriát vagy egy másik függőséget a szélesebb szintetikus tesztek ismétlése helyett.

A Pulse NVMe és a kiválasztott dedikált konfigurációk a NVMe tárolót a SwissOctet katalógusban sorolják fel. A címkéik specifikációk, nem közzétett alkalmazás-benchmarkok. Használjon ellenőrzött módszert a leszállított környezet értékelésére, és őrizze meg a feltételeket az eredményekkel együtt. A döntés erősebb lesz, ha a tárolási mérés és a felhasználó számára látható eredmény ugyanarra a kérdésre válaszol.

FORDÍTSA CSELEKVÉSRE

Az Ön gyakorlati ellenőrzőlistája.

  • Először határozza meg az alkalmazáskérdést.
  • Rögzítse a mintát, a blokkméretet, a párhuzamosságot és az időtartamot.
  • Adja meg a gyorsítótár- és I/O-mód feltételezéseket.
  • Vizsgálja meg a késleltetési percentiliseket és az átviteli teljesítményt is.
  • Használjon ellenőrzött eldobható célpontot és korlátozott kezdeti terhelést.
  • Erősítse meg az eredményt egy alkalmazásteszttel.
GYAKORI KÉRDÉSEK

A fontos részletek.

Elég egy szekvenciális másolás az adatbázis-tárolás összehasonlításához?+

Általában nem. Az adatbázis-hozzáférés kis véletlenszerű olvasásokat, írásokat és szinkronizálást foglalhat magában. Modellezze a releváns mintát, és ellenőrizze a tényleges alkalmazást.

Bizonyítja a közvetlen I/O a tartós írásokat?+

Nem. A pufferelés és a tartósság külön kérdések. Igazodjon az alkalmazás által megkövetelt szinkronizálási viselkedéshez.

Közzétehetek egy tesztet garantált csomagsebességként?+

Nem. Tegye közzé a feltételeit és hatókörét. Egy futás mért eredménye nem szolgáltatásszintű vagy jövőbeli teljesítménygarancia.

ELSŐDLEGES HIVATKOZÁSOK

Menjen a forráshoz.

Ezek a hivatkozások támogatják az útmutató műszaki fogalmait. Kövesse az aktuális dokumentációt, mielőtt éles rendszert módosítana.

  1. fio: Rugalmas I/O-teszter dokumentációja fio.readthedocs.io
  2. NVM Express: Specifikáció áttekintése és GYIK nvmexpress.org
  3. Linux kernel: Pressure Stall Information docs.kernel.org

Szerkesztői útmutatás: SwissOctet. A példák tájékoztató jellegűek. A szolgáltatási specifikációkat, az elérhető opciókat és a szerződéses feltételeket külön kell ellenőrizni.

KAPCSOLJA ÖSSZE A TUDÁST

Kapcsolódó infrastruktúra.

TARTSA A FONALAT

Az Ön következő terepjegyzetei.

Fedezze fel az összes útmutatót