abstract class GeoMesaFeatureIndex[T, U] extends NamedIndex with LazyLogging

Represents a particular indexing strategy

T

values extracted from a filter and used for creating ranges - extracted geometries, z-ranges, etc

U

a single key space index value, e.g. Long for a z-value, etc

Linear Supertypes
LazyLogging, NamedIndex, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GeoMesaFeatureIndex
  2. LazyLogging
  3. NamedIndex
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new GeoMesaFeatureIndex(ds: GeoMesaDataStore[_], sft: SimpleFeatureType, name: String, version: Int, attributes: Seq[String], mode: IndexMode)

    ds

    data store

    sft

    simple feature type stored in this index

    name

    name of the index

    version

    version of the index

    attributes

    attributes used to create the index keys

    mode

    mode of the index (read/write/both)

Abstract Value Members

  1. abstract def getFilterStrategy(filter: Filter, transform: Option[SimpleFeatureType]): Option[FilterStrategy]

    Gets options for a 'simple' filter, where each OR is on a single attribute, e.g.

    Gets options for a 'simple' filter, where each OR is on a single attribute, e.g. (bbox1 OR bbox2) AND dtg bbox AND dtg AND (attr = foo OR attr = bar) not: bbox OR dtg

    Because the input is simple, it can be satisfied with a single query filter.

    filter

    input filter

    transform

    attribute transforms

    returns

    a filter strategy which can satisfy the query, if available

  2. abstract def keySpace: IndexKeySpace[T, U]

    Primary key space used by this index

  3. abstract def tieredKeySpace: Option[IndexKeySpace[_, _]]

    Tiered key space beyond the primary one, if any

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val attributes: Seq[String]
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  7. def configureTableName(partition: Option[String] = None, limit: Option[Int] = None): String

    Create the metadata entry for the initial index table or a new partition

    Create the metadata entry for the initial index table or a new partition

    partition

    partition

    returns

    table name

  8. def createConverter(): WriteConverter[U]

    Creates a function to generate row keys from features

  9. def deleteTableNames(partition: Option[String] = None): Seq[String]

    Deletes the entire index

    Deletes the entire index

    partition

    only delete a single partition, instead of the whole index

  10. val ds: GeoMesaDataStore[_]
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(other: Any): Boolean
    Definition Classes
    GeoMesaFeatureIndex → AnyRef → Any
  13. def generateTableName(partition: Option[String] = None, limit: Option[Int] = None): String

    Creates a valid, unique string for the underlying table

    Creates a valid, unique string for the underlying table

    partition

    partition

    limit

    limit on the length of a table name in the underlying database

    Attributes
    protected
  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  15. def getIdFromRow(row: Array[Byte], offset: Int, length: Int, feature: SimpleFeature): String

    Retrieve an ID from a row.

    Retrieve an ID from a row. All indices are assumed to encode the feature ID into the row key.

    The simple feature in the returned function signature is optional (null ok) - if provided the parsed UUID will be cached in the feature user data, if the sft is marked as using UUIDs

    row

    row bytes

    offset

    offset into the row bytes to the first valid byte for this row

    length

    number of valid bytes for this row

    feature

    simple feature (optional)

  16. def getIdOffset(row: Array[Byte], offset: Int, length: Int): Int

    Gets the offset (start) of the feature id from a row.

    Gets the offset (start) of the feature id from a row. All indices are assumed to encode the feature ID into the row key.

    row

    row bytes

    offset

    offset into the row bytes to the first valid byte for this row

    length

    number of valid bytes for this row

  17. def getPartitions: Seq[String]

    Gets the partitions for this index, assuming that the schema is partitioned

  18. def getQueryStrategy(filter: FilterStrategy, hints: Hints, explain: Explainer = ExplainNull): QueryStrategy

    Plans the query

    Plans the query

    filter

    filter strategy

    hints

    query hints

    explain

    explainer

  19. def getSplits(partition: Option[String] = None): Seq[Array[Byte]]

    Gets the initial splits for a table

    Gets the initial splits for a table

    partition

    partition, if any

  20. def getTableName(partition: Option[String] = None): String

    Gets the single table name for this index.

    Gets the single table name for this index. If this is a partitioned index, then the partition argument must be defined. A runtime exception will be thrown if multiple or zero tables are found.

    partition

    get the name for a particular partition, if the index is partitioned

  21. def getTableNames(partition: Option[String] = None): Seq[String]

    Gets table names for this index

    Gets table names for this index

    partition

    get the name for a particular partition, or all partitions

  22. def getTablesForQuery(filter: Option[Filter]): Seq[String]

    Gets the tables that should be scanned to satisfy a query

    Gets the tables that should be scanned to satisfy a query

    filter

    filter

  23. def hashCode(): Int
    Definition Classes
    GeoMesaFeatureIndex → AnyRef → Any
  24. lazy val idFromRow: IdFromRow
    Attributes
    protected
  25. val identifier: String

    Unique (for the given sft) identifier string for this index.

    Unique (for the given sft) identifier string for this index.

    Can be parsed with IndexId.parse, although note that it does not include the read/write mode

  26. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  27. lazy val logger: Logger
    Attributes
    protected
    Definition Classes
    LazyLogging
    Annotations
    @transient()
  28. val mode: IndexMode
  29. val name: String

    The name used to identify the index

    The name used to identify the index

    Definition Classes
    GeoMesaFeatureIndexNamedIndex
  30. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  31. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  32. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  33. val serializedWithId: Boolean

    Is the feature id serialized with the feature? Needed for back-compatibility with old data formats

  34. val sft: SimpleFeatureType
  35. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  36. def tableNameKey(partition: Option[String] = None): String

    The metadata key used to store the table name for this index

    The metadata key used to store the table name for this index

    partition

    partition

  37. val tableNameKey: String
    Attributes
    protected
  38. def toString(): String
    Definition Classes
    GeoMesaFeatureIndex → AnyRef → Any
  39. val version: Int

    Current version of the index

    Current version of the index

    Definition Classes
    GeoMesaFeatureIndexNamedIndex
  40. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  42. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from LazyLogging

Inherited from NamedIndex

Inherited from AnyRef

Inherited from Any

Ungrouped