← Back to team overview

sslug-teknik team mailing list archive

Re: Hvordan er et direktorie indexseret?

 



David wrote:
Jeg vil lave en database over nogle ord, men i stedet for at installere en database, tænkte jeg på at bruge filsystemet og lade hvert ord være en fil. Nu er spørgsmålet, hvad sker der, når jeg tilgår en af disse filer? Skanner operativ systemet (os) direktoriet fra en ende af, indtil den har fundet den pågældende fil, eller er filerne opstillet i alfabetisk rækkefølge og os foretager en mere intelligent søgning?
Den søger overhovedet ikke, bortset fra i det katalog, hvor filen befinder sig.

Du angiver en path: f.eks. /usr/local/lib/minfil - eller
./minfil hvis du allerede står i /usr/local/lib...

og systemet søger katalogfilen (lib) igennem for at finde "minfil" og oversætte det til et inodenummer. Det er derfor det går så stærkt som det gør. Til gengæld er "find / -name minfil" langsomt, for da skal alle katalog-filer søges igennem, for at man kan finde navnet.

Problemet med at bruge filsystemet som database er, at hvis du har mange nivauer eller varianter af data, kan katalogstrukturen blive uhyggeligt kompleks og stor. Og du skal kunne opbygge en præcis path til et givet element for at opnå brugbar performance.

MVH
--
Jon Svejgaard
====================================================================
                               | ACE - UNIX/Linux Consultancy
                               | Hjorthoejvej 2 / DK-4291 Ruds Vedby
mail: jon@xxxxxx               | DENMARK
http://www.ace.dk              | +45 5826 1799 / +45 4052 0799
====================================================================



References