Interface Attribute

All Known Subinterfaces:
Measure

public interface Attribute
A field in a star schema.

Each Attribute knows its join path to the fact table of the star schema. An attribute may be the key or name of a level, or a property of a member such as phone number. An attribute may reside in the fact table, but more commonly resides in a dimension table.

A Measure is a special kind of Attribute.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    Estimates the average number of bytes required to store a value of this attribute.
    Returns a list of Ancestor Attributes that make this attribute unique
    Returns a suggestion for the name of a column in which to store this attribute as part of an aggregate table.
    Returns a description of the SQL data type of this attribute in the given dialect.
    Returns a description of this attribute for tracing purposes.
    Returns the table that this attribute belongs to.
  • Method Details

    • getLabel

      String getLabel()
      Returns a description of this attribute for tracing purposes.
      Returns:
      label of this attribute
    • getTable

      Table getTable()
      Returns the table that this attribute belongs to.
      Returns:
      table this attribute belongs to
    • estimateSpace

      double estimateSpace()
      Estimates the average number of bytes required to store a value of this attribute.
      Returns:
      estimated bytes per value
    • getCandidateColumnName

      String getCandidateColumnName()
      Returns a suggestion for the name of a column in which to store this attribute as part of an aggregate table.

      The suggestion does not need to be unique within the table or less than the database's column name limit, but the implementation should try to generate a name that is likely to be unique and descriptive in the first 20 or so characters.

      Returns:
      candidate column name
    • getDatatype

      String getDatatype(Dialect dialect)
      Returns a description of the SQL data type of this attribute in the given dialect. For example, "VARCHAR(20) NOT NULL".
      Parameters:
      dialect - Dialect
      Returns:
      SQL data type
    • getAncestorAttributes

      List<Attribute> getAncestorAttributes()
      Returns a list of Ancestor Attributes that make this attribute unique
      Returns:
      ancestor attributes