Mi az NDF fájl?
Az .ndf kiterjesztésű fájl egy másodlagos adatbázisfájl, amelyet a Microsoft SQL Server használ felhasználói adatok tárolására. Az NDF egy másodlagos tárolófájl, mivel az SQL-kiszolgáló a felhasználó által megadott adatokat az [MDF] néven ismert elsődleges tárolófájlban tárolja (/hu/database/mdf/). Az NDF-adatfájl nem kötelező, és a felhasználó által meghatározott adattárolás kezelésére szolgál arra az esetre, ha az elsődleges MDF-fájl az összes lefoglalt területet felhasználná. Általában külön lemezen tárolják, és több tárolóeszközre is átterjedhet. Az MDF fájlok jelenléte szükséges az NDF fájlok megnyitásához.
NDF fájlformátum
Az NDF fájlformátum nem különbözik az [MDF]-től (/hu/database/mdf), és az oldalakat használja az adattárolás alapvető egységeként. minden oldal 96 bájtos fejléccel kezdődik, amely tartalmazza:
- Oldalazonosító
- A szerkezet típusa
- Rekordok száma az oldalakon
- Mutatók az előző és a következő oldalakra
NDF fájlstruktúra
Az MDF fájl adatstruktúrája a következő.
- oldal: Fejléc
- oldal: Első PFS
- oldal: Első GAM
- oldal: Első SGAM
- oldal: Nem használt
- oldal: Nem használt
- oldal: Első DCM
- oldal: Első BCM
NDF-fájl fejléce
Az összes fájl 0-s oldala tartalmaz egy fejlécet, amely a fájl metaadatait tárolja.
Oldal szabad terület (PFS)
A PFS azonosítja a kiosztás állapotát és meghatározza a szabad terület mennyiségét.
- bit: Azt jelzi, hogy az oldal le van-e foglalva vagy sem.
- bit: Azt jelzi, ha az oldal vegyes kiterjedésű.
- bit: azt jelzi, hogy ez az oldal egy IAM oldal.
- bit: Azt jelzi, hogy ez az oldal szellemrekordokat tartalmaz
- 5–7. bitek: Kombinált hárombites érték, amely a következőképpen jelzi az oldal teljességét:
- 0: Az oldal üres
- 1: Az oldal 1–50%-ig megtelt
- 2: Az oldal 51–80%-ban megtelt
- 3: Az oldal 81–95%-ban megtelt
- 4: Az oldal 96–100%-ig megtelt
Adatfájl oldal
Az SQL Server adatfájljában lévő oldalak nulláról (0) kezdődnek, és sorban növekszenek. Minden fájlt egyedi fájlazonosító szám ismer fel. A fájlazonosító és oldalszám pár egyedileg azonosítja az oldalt az adatbázisban. A következő képen látható példa az adatbázis oldalszámainak megjelenítésére.
Ez a példa egy 4 MB-os elsődleges adatfájlt és 1 MB-os másodlagos adatfájlt tartalmazó adatbázis oldalszámait mutatja be.