Presentation is loading. Please wait.

Presentation is loading. Please wait.

File System Directory Services Osamu Tatebe Grid Technology Research Center, AIST GFS-WG, F2F meeting April 2004, San Jose GFS-WG April 2004, San Jose.

Similar presentations


Presentation on theme: "File System Directory Services Osamu Tatebe Grid Technology Research Center, AIST GFS-WG, F2F meeting April 2004, San Jose GFS-WG April 2004, San Jose."— Presentation transcript:

1 File System Directory Services Osamu Tatebe Grid Technology Research Center, AIST GFS-WG, F2F meeting April 2004, San Jose GFS-WG April 2004, San Jose

2 GGF10 GFS-WG File System Directory Services (1) Web Service (aka Grid Service)  Directory PortType Grid namespace (Virtual directory tree, Grid namespace for files, OGSA naming)  Virtual directories  Junctions (referrals) points to a object (logical or physical files, file systems, other File System Directory Service instances) Translation point to a grid-wide pointer Attributes and Status Attributes: ACL, times Status: open, lock /grid ggfjp datagfs file1 file3 file2 file4 file1file2

3 GGF10 GFS-WG File System Directory Services (2) Operations  Lookup “Path” name to a Grid-wide general pointer  Creation, removal, rename  Management of attributes and status /grid ggfjp datagfs file1 file3 file2 file4 file1file2

4 GGF10 GFS-WG Service Oriented Treatment (1) Treating a Virtual Directory (Directory Entries) as Web Services  Virtual directory has a grid-wide pointer (aka GSH)  Huge and unacceptable overhead (2) Treating a Grid namespace (Virtual Directory Tree) as Web Services  Each Grid namespace entry is specified by Virtual file handle (VFH) Eg. VFH = GSH + Id (in OGSI)

5 GGF10 GFS-WG Virtual Directory  Directory Entries  Attributes (ACL, times, size, checksum, …)  Status (open, …) Directory entry nameVFH dataVFH for data ggfVFH for ggf

6 GGF10 GFS-WG Junction  Attributes (target, ACL, times, size, checksum, …)  Status (lock, open)

7 GGF10 GFS-WG Example Set of Operations of Directory PortType (1) VFH getrootVFH()  Returns a VFH of the root directory VFH lookup(VFH fh, String path)  Returns a VFH of a virtual directory or a junction specified by a relative path from the virtual directory fh Dirent[] getdents(VFH fh)  Returns an array of directory entries of the virtual directory fh Int mkdir(VFH dirfh, String name, Attr[] attrs)  Creates a new virtual directory name under the virtual directory fh, and sets attributes attrs to the virtual directory Int rmdir(VFH dirfh, String name)  Removes the virtual directory name in the virtual directory fh Int access(VFH fh, Int mode)  Determines whether the virtual directory or junction specified by fh can be accessed with the specified mode that is one or more of READ, LOOKUP, MODIFY, EXTEND, DELETE, and EXECUTE.

8 GGF10 GFS-WG Example Set of Operations of Directory PortType (2) Attr[] getattrs(VFH fh, String[] attrkeys)  Returns an array of attributes of the virtual directory or junction specified by fh. Obtained attributes can be specified by attrkeys. Int setattrs(VFH fh, Attr[] attrs)  Sets one or more attributes specified by attrs to the virtual directory or junction specified by fh Int addjunction(VFH dirfh, String name, Attr[] attrs)  Adds a new junction name in the virtual directory fh, and sets attributes to the junction Int removejunction(VFH dirfh, String name)  Removes the junction name in the virtual directory fh Int link(VFH destfh, VFH fh, String name)  Creates the “hard” link name for the junction destfh, in the virtual directory fh. Int rename(VFH srcdir, String oldname, VFH destdir, String newname)  Renames the junction oldname in the virtual directory srcdir to the junction newname in the virtual directory destdir

9 GGF10 GFS-WG Example Set of Operations of Directory PortType (3) Server state management  Int open(VFH fh, Int flags) Creates server state for opening the junction specified by fh  Int close(VFH fh) Releases server state for opening the junction specified by fh  lock/lockt/locku Requests a record lock for the byte range Tests the lock as specified in the arguments Unlocks the record lock specified by the parameters

10 GGF10 GFS-WG Issues not included in the document Error code/error status/exception Specification of attributes  Mandatory, recommended, and named attributes (NFSv4) Optimization for long latency  COMPOUND procedure (NSFv4) Group management  CAS???

11 GGF10 GFS-WG Federation of file system directory services Scalable, large-scale, and distributed management of file system directory services Three types of federation  Junction for remote file system directory service  Mounting file system directory services file system table services  Remote VFH in directory entries

12 GGF10 GFS-WG Junction for remote file system directory service (1) / ggfjp datagfs file1 file3 file2 file4 file1 Service A / aisttsukuba-u gtrcdata file1 file3 file2 file4 file1file2 Service B tsukuba Target of tsukuba is / in service B

13 GGF10 GFS-WG Junction for remote file system directory service (2) Every lookup request needs to start from the service that provides the root directory  Potential performance bottleneck May be inconsistent when the target is lost

14 GGF10 GFS-WG Mounting file system directory services (1) / ggfjp datagfs file1 file3 file2 file4 file1 Service A / aisttsukuba-u gtrcdata file1 file3 file2 file4 file1file2 Service B tsukuba /Service A /jp/tsukubaService B File system table services

15 GGF10 GFS-WG Mounting file system directory services (2) File system table services  Mount table such as /etc/fstab, or maps of automount Mount pointTarget or map /Directory services 1 /usr/localDirectory services 2 /usr/shareDirectory services 3 /usr/local/srcDirectory services 4 /host+hosts

16 GGF10 GFS-WG Mounting file system directory services (3) Client library mounts several virtual file systems  Flexible management of a directory tree  Access control between file system directory services relies on client library  Renaming and making a “hard” link across directory services is not possible No access concentration to the service that provides the root directory

17 GGF10 GFS-WG Remote VFH in directory entries (1) VFH = GSH of (remote) factory service + Id / ggfjp datagfs file1 file3 file2 file4 file1 Service A tsukuba aisttsukuba-u gtrcdata file1 file3 file2 file4 file1file2 Service B nameVFH file1VFH for file1 tsukubaVFH for tsukuba in Service B

18 GGF10 GFS-WG Remote VFH in directory entries (2) Distributed management of a single file system directory service Transaction needed across directory services  mkdir, rmdir, rename, and link Operations required by mkdir  Int mkdir(VFH fh, GSH factoryGSH, String name, Attr[] attrs)  VFH createdir(Attr[] attrs, long timeout)  Int commitdir(VFH fh, VFH parentfh, String name)

19 GGF10 GFS-WG Transaction procedure of mkdir Service AService B mkdir createdir Create a temporal virtual directory new VFH Add the VFH to directory entry temporarily commitdir After checking the entry in the parent directory, commit the creation of the directory (add the parent directory to directory entry) success Make the temporal Entry formal

20 GGF10 GFS-WG Remote VFH in directory entries (3) No access concentration to the service that provides the root directory

21 GGF10 GFS-WG Problems needed to be settled Replication and backup of file system directory services Consistency issue in access permission between a virtual file and the corresponding file data Removal or modification of a file data without notification to file system directory services Consistency issue between file data replicas Interoperability issue with NFS and CIFS

22 GGF10 GFS-WG Summary and conclusion Propose example set of operations of file system directory services Three types of federation of directory services  Junction for remote file system directory service  Mounting file system directory services  Remote VFH in directory entries


Download ppt "File System Directory Services Osamu Tatebe Grid Technology Research Center, AIST GFS-WG, F2F meeting April 2004, San Jose GFS-WG April 2004, San Jose."

Similar presentations


Ads by Google