Provides a set of interfaces for accessing OLAP data.

OVERVIEW

This is a Java OLAP API which can be used to execute data queries, primarily MDX, and read the results of these queries. It can also be used to request and read metadata from OLAP data sources, known as Cubes. In addition to this API, this package also includes some utility classes for common operations and performance tuning.

PRIMARY CLASSES

Data Access

- OLAPDataSetInterface -- primary interface for OLAP Data Access
- ResultSetInterface -- retrieving the results of a query
- ResultSetMetadataInterface -- provides information about the structure of a ResultSetInterface object
- AxisInterface -- provides information about each Axis of a ResultSetMetadataInterface object. An Axis is a set of tuples.
- TupleInterface -- provides information about each Tuple of a AxisInterface object. A Tuple is an ordered collection of TupleElements from different dimensions.
- TupleElementInterface -- provides information about each TupleElement of a TupleInterface object.

Metadata Access

- MetadataInterface -- primary interface for OLAP Metadata Access
- SchemaInterface -- provides information about an OLAP Schema, including the Cubes contained in that OLAP Schema
- CubeInterface -- provides information about a Cube, including the Measures and Dimensions contained in that Cube. A Cube is a logical set of data that is organized and structured in a hierarchical, multidimensional arrangement. A cube includes measures, and it can have numerous dimensions and levels of data.
- MeasureInterface -- provides information about a Measure. A Measure is a special dimension member that usually represents numeric data values that are analyzed.
- DimensionInterface -- provides information about a Dimension, including the Hierarchies and Members contained in that Dimension. A Dimension is a group of closely related hierarchies. Hierarchies within a dimension typically represent different groupings of information that pertains to a single concept. For example, a Time dimension might consist of two hierarchies: (1) Year, Month, Date, and (2) Year, Week, Day.
- HierarchyInterface -- provides information about a Hierarchy, including the Levels and Members contained in that Hierarchy. A Hierarchy is an arrangement of members of a dimension into levels that are based on parent-child relationships. Members of a hierarchy are arranged from more general to more specific. For example, in a Time dimension, a hierarchy might consist of the members Year, Quarter, Month, and Day. In a Geography dimension, a hierarchy might consist of the members Country, State or Province, and City. More than one hierarchy can be defined for a dimension. Each hierarchy provides a navigational path that enables users to drill down to increasing levels of detail.
- LevelInterface -- provides information about a Level, including the Members contained in that Level. A Level is an element of a dimension hierarchy. Levels describe the dimension from the highest (most summarized) level to the lowest (most detailed) level. For example, possible levels for a Geography dimension are Country, Region, State or Province, and City.
- MemberInterface -- provides information about a Member. A Member is a name that represents a particular data element within a dimension. For example, September 1996 might be a member of the Time dimension. A member can be either unique or non-unique. For example, 1997 and 1998 represent unique members in the Year level of a Time dimension. January represents non-unique members in the Month level, because there can be more than one January in the Time dimension if the Time dimension contains data for more than one year.

Exceptions

- OLAPException -- thrown by most methods when there is a problem accessing data and by some methods for other reasons
- OLAPWarning -- thrown to indicate a warning

IMPLEMENTATIONS

A couple of implementations of this API that are readily available as part of the sas.storage.jar are the "sasmdx" implementation and the "embedded" implementation. The "sasmdx" implementation provides live access to the SAS OLAP Server. The "embedded" implementation supports the building an maintaining of an in-memory multidimensional result set. This implementation includes the APIs for Data Access, but not those that are used for Metadata Access. See package documentation for more details on these two implementations.

For More Information

> Visit the AppDev Studio Developer's Site to access step-by-step examples, white papers and additional usage information at http://support.sas.com/rnd/appdev/.