Basic Concepts
Theroot of the 5800 system Java client API is the NameValueObjectArchive class, which
representsa connection to a single 5800 system server. All operations are initiated by invoking
methodson 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
transparentto the application programmer.
ANameValueObjectArchiveuses instances of the ObjectIdentifier class to uniquely identify
storeddata objects. That is, there is a one-to-one correspondence between instances of
ObjectIdentiferand 5800 system metadata objects.
Note– There is potentially a many-to-one relationship between metadata and data objects.
Whenusing NameValueObjectArchive, all metadata queries are executed against a 5800 system
server’suser-congurable index of name-value pair lists. This class also ensures that a metadata
entryis created for every data object stored, even if no metadata is provided at store time.
Aninstance of the NameValueObjectArchive class functions as a proxy for the 5800 system
server.Instantiation incurs some overhead in establishing communication, so reusing a single
instanceis the recommended practice. Multithreading is supported with the same instance.
NameValueObjectArchivealso allows all metadata operations to be performed in terms of two
classesthat represent metadata records: SystemRecord and NameValueRecord. These classes
represent5800 system metadata entries. When using NameValueObjectArchive, every stored
dataobject has a corresponding NameValueRecord that contains the extended attributes stored
withthat data object, and each NameValueRecord has a reference to its SystemRecord, which
containsbuilt-in system attributes such as data object size and creation time. In this model, all
instancesof ObjectIdentifer returned from store operations and metadata queries
corresponddirectly to instances of NameValueRecord.
Theresults of a 5800 system metadata query are returned using instances of the
QueryResultSetclass, which the application can step through to retrieve metadata or
identiers.This class manages the details of fetching one batch of results after another.
KeyClasses
Thissection 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.
Alsosee the Javadoc provided with the 5800 system SDK.
NameValueObjectArchive”on page 29
NameValueSchema”on page 29
JavaAPI
SunStorageTek5800 System Client API Reference Manual • June 200828