beautypg.com

Basic concepts, Key classes – Sun Microsystems Sun StorageTek 5800 User Manual

Page 28

background image

Basic Concepts

The root of the 5800 system Java client API is the NameValueObjectArchive class, which
represents a connection to a single 5800 system server. All operations are initiated by invoking
methods on a NameValueObjectArchive instance after initializing it with the address of a
cluster. The fact that a cluster of machines, rather than a single server, is handling the requests is
transparent to the application programmer.

A NameValueObjectArchive uses instances of the ObjectIdentifier class to uniquely identify
stored data objects. That is, there is a one-to-one correspondence between instances of
ObjectIdentifer

and 5800 system metadata objects.

Note –

There is potentially a many-to-one relationship between metadata and data objects.

When using NameValueObjectArchive, all metadata queries are executed against a 5800 system
server’s user-configurable index of name-value pair lists. This class also ensures that a metadata
entry is created for every data object stored, even if no metadata is provided at store time.

An instance of the NameValueObjectArchive class functions as a proxy for the 5800 system
server. Instantiation incurs some overhead in establishing communication, so reusing a single
instance is the recommended practice. Multithreading is supported with the same instance.

NameValueObjectArchive

also allows all metadata operations to be performed in terms of two

classes that represent metadata records: SystemRecord and NameValueRecord. These classes
represent 5800 system metadata entries. When using NameValueObjectArchive, every stored
data object has a corresponding NameValueRecord that contains the extended attributes stored
with that data object, and each NameValueRecord has a reference to its SystemRecord, which
contains built-in system attributes such as data object size and creation time. In this model, all
instances of ObjectIdentifer returned from store operations and metadata queries
correspond directly to instances of NameValueRecord.

The results of a 5800 system metadata query are returned using instances of the
QueryResultSet

class, which the application can step through to retrieve metadata or

identifiers. This class manages the details of fetching one batch of results after another.

Key Classes

This section provides an overview of the following key classes in the 5800 system Java client
API. For more information on using the following classes, see

“Basic Concepts” on page 28

.

Also see the Javadoc provided with the 5800 system SDK.

“NameValueObjectArchive” on page 29

“NameValueSchema” on page 29

Java API

Sun StorageTek 5800 System Client API Reference Manual • June 2008

28