Class/Object

com.netflix.atlas.core.index

QueryIndex

Related Docs: object QueryIndex | package index

Permalink

case class QueryIndex[T](indexes: Map[Equal, QueryIndex[T]], entries: Array[Entry[T]]) extends Product with Serializable

Index for quickly matching a set of tags against many query expressions. The intended use-case is for stream processing. If a stream of tagged data points are flowing through the system and we have thousands of queries, then we need efficient ways to:

1. Check if a datapoint is a match to any of the queries. This can be used to quickly filter out data that isn't going to be needed. 2. Figure out which queries or expressions match a given datapoint.

indexes

Map of :eq query to a sub-index. This is used to recursively search the set after finding the first match.

entries

Entries that remain after checking all the simple :eq queries. This list will be searched using a linear scan to get final matching with regex or other more complicated query clauses.

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. QueryIndex
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new QueryIndex(indexes: Map[Equal, QueryIndex[T]], entries: Array[Entry[T]])

    Permalink

    indexes

    Map of :eq query to a sub-index. This is used to recursively search the set after finding the first match.

    entries

    Entries that remain after checking all the simple :eq queries. This list will be searched using a linear scan to get final matching with regex or other more complicated query clauses.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  6. val entries: Array[Entry[T]]

    Permalink

    Entries that remain after checking all the simple :eq queries.

    Entries that remain after checking all the simple :eq queries. This list will be searched using a linear scan to get final matching with regex or other more complicated query clauses.

  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  9. val indexes: Map[Equal, QueryIndex[T]]

    Permalink

    Map of :eq query to a sub-index.

    Map of :eq query to a sub-index. This is used to recursively search the set after finding the first match.

  10. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  11. def matches(tags: Map[String, String]): Boolean

    Permalink

    Returns true if the tags match any of the queries in the index.

  12. def matchingEntries(tags: Map[String, String]): List[T]

    Permalink

    Finds the set of items that match the provided tags.

  13. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. def toString(): String

    Permalink

    Creates a string representation of the index tree.

    Creates a string representation of the index tree. Warning: this can be large if many queries are indexed.

    Definition Classes
    QueryIndex → AnyRef → Any
  18. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped