Megosztás a következőn keresztül:


Ajánlott eljárások a Linux közvetlen I/O-hoz az Azure NetApp Fileshoz

Ez a cikk az Azure NetApp Files közvetlen I/O-ajánlott eljárásait ismerteti.

Közvetlen I/O

A tárolóteljesítmény-teljesítménytesztben leggyakrabban használt paraméter a közvetlen I/O. A FIO és a Vdbench támogatja. A DISKSPD támogatja a memórialeképezett I/O hasonló szerkezetét. A közvetlen I/O-val a fájlrendszer gyorsítótára megkerülhető, a közvetlen memóriahozzáférési másolási műveletek elkerülhetők, a tárolási tesztek pedig gyorsan és egyszerűen elvégezhetők.

A közvetlen I/O paraméter használata megkönnyíti a tárolás tesztelését. A rendszer nem olvas be adatokat az ügyfél fájlrendszer-gyorsítótárából. Így a teszt valóban a tárolási protokollt és a szolgáltatást hangsúlyozza, nem pedig a memóriahozzáférési sebességet. A DMA memóriamásolatai nélkül az olvasási és írási műveletek feldolgozási szempontból hatékonyak.

Vegyük példaként a Linux dd parancsot. Az opcionális odirect jelző nélkül a rendszer a Linux puffergyorsítótárból generált dd összes I/O-t kiszolgálja. A memóriában lévő blokkokat tartalmazó olvasások nem lesznek lekérve a tárolóból. A puffergyorsítótár-hibát eredményező olvasások végül az NFS előreolvasásával, a csatlakoztatási rsize és az ügyféloldali olvasási hibáktól függően eltérő eredménnyel olvashatók. Amikor az írásokat a puffergyorsítótáron keresztül küldi el, egy írási mechanizmust használnak, amely nemtuned, és jelentős mennyiségű párhuzamossággal küldi el az adatokat a tárolóeszközre. Előfordulhat, hogy két független I/O-streamet próbál futtatni, egyet olvasásra, egyet dd dd pedig írásra. Valójában azonban az operációs rendszer, amely nemtuned, előnyben részesíti az írást az olvasások helyett, és több párhuzamosságot használ.

Az adatbázison kívül kevés alkalmazás használ közvetlen I/O-t. Ehelyett kihasználják a nagy memória-gyorsítótár előnyeit az ismétlődő olvasások és a gyorsítótár mögötti írások esetében az aszinkron írásokhoz. Röviden: a közvetlen I/O használatával a teszt mikro teljesítménymutatóvá válik, ha a szintetizált alkalmazás a fájlrendszer gyorsítótárát használja.

A következő adatbázisok támogatják a közvetlen I/O-t:

  • Oracle
  • SAP HANA
  • MySQL (InnoDB-tárolómotor)
  • RocksDB
  • PostgreSQL
  • Teradata

Ajánlott eljárások

directio A tesztelés kiváló módszer a tárolási szolgáltatás és az ügyfél korlátainak megértésére. Az alkalmazás viselkedésének jobb megértéséhez (ha az alkalmazás nem használja directio) a fájlrendszer gyorsítótárán keresztül is futtatnia kell a teszteket.

Következő lépések