[OpenAFS] Databases & AFS

Russ Allbery rra@stanford.edu
Thu, 01 Jun 2006 06:53:33 -0700

errare <errare@mail.ru> writes:

> I'm newbie in OpenAFS and have some questions:

> 1. Where is possible use claster of several DB-servers (Oracle) +
> several app-servers + web-servers, with OpeanAFS storage? I'm afraid,
> what client-side caching will make errors in databases.

You probably don't want to do this with AFS.  AFS is not well-optimized
for writes and doesn't support the locking semantics that a database
needs.  AFS is designed to provide a shared file system to a large number
of clients, such as an entire corporation, large work unit, educational
institution, or distributed organization.  It's also designed to make it
easy to share file systems between multiple organizations.  It scales well
to lots of clients and distributed servers and supports a reasonable
authentication system.  It's *not* a good choice as the backend data store
for most applications that want to share files across an internal
application cluster, with the exception of some compute cluster tasks and
batch processing.

> 2. What differences is between OpenAFS and, for example, GFS?

Completely different purposes and raison d'etre.  GFS is more of an
application cluster file system, designed to share data in a consistent
fashion among a small number of tightly coupled systems, and is what you'd
look at for, say, a shared database.  OpenAFS is a large-scale distributed
file system, designed to share data among large numbers of independent and
possibly transient clients and to present a user-invisible management
layer to allow relocation of volumes and similar administrative actions to
be taken at the administrator's convenience.

Russ Allbery (rra@stanford.edu)             <http://www.eyrie.org/~eagle/>