Packages

c

io.xskipper.search

DataSkippingFileFilter

class DataSkippingFileFilter extends Logging

A Custom FileFilter which enables to filter sequence of PartitionDirectory using a given MetadataBackend

Linear Supertypes
Logging, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DataSkippingFileFilter
  2. Logging
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DataSkippingFileFilter(tid: String, metadataStoreManager: MetadataStoreManager, sparkSession: SparkSession, params: Map[String, String] = Map.empty[String, String])

    tid

    the table identifier for which the DataSkippingFileFilter is built

    metadataStoreManager

    the MetadataStoreManager to be used in order to get io.xskipper.metadatastore.MetadataHandle for the identifier

    params

    a map of parameters to be set by the DataSkippingFileFilter on the io.xskipper.metadatastore.MetadataHandle

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. def clearCurrentFilterStatistics(): Unit

    Clears the current filter statistics.

    Clears the current filter statistics. Should be called at the end each call to handleStatistics which updates the accumulated stats

    Attributes
    protected
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. val currentFilterStatistics: HashMap[String, Long]
    Attributes
    protected
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def handleStatistics(): Unit

    Update the IndexMeta associated with the table

  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def init(dataFilters: Seq[Expression], partitionFilters: Seq[Expression], metadataFilterFactories: Seq[MetadataFilterFactory], clauseTranslators: Seq[ClauseTranslator]): Unit

    Filters the partition directory by removing unnecessary objects from each partition directory

    Filters the partition directory by removing unnecessary objects from each partition directory

    dataFilters

    query predicates for actual data columns (not partitions)

    partitionFilters

    the partition predicates from the query

    metadataFilterFactories

    a sequence of MetadataFilterFactory to generate filters according to the index on the dataset

    clauseTranslators

    a sequence of ClauseTranslators to be applied on the clauses

    returns

    a sequence of PartitionDirectory after filtering the unnecessary objects using the metadata

  15. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  16. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def isRequired(fs: FileStatus): Boolean

    Returns true if the current file is required for the given query by checking if it is present in the required files or not indexed

    Returns true if the current file is required for the given query by checking if it is present in the required files or not indexed

    fs

    the file status to check

    returns

    true if the file is required, false otherwise

  19. def isSkipabble(): Boolean

    returns

    true if the current query is relevant for skipping. i.e - it has indexed files and a metadata query can be generated

  20. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  21. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  22. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  23. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  24. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  25. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  26. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  27. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  28. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  29. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  30. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  31. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  32. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  33. lazy val metadataHandler: MetadataHandle
    Attributes
    protected
  34. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  35. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  36. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  37. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  38. def toString(): String
    Definition Classes
    AnyRef → Any
  39. def updateStats(fs: FileStatus, shouldScan: Boolean): Unit

    Update the stats for a given fileStatus

    Update the stats for a given fileStatus

    fs

    the fileStatus to be updated

    shouldScan

    whether this file should be scanned or not

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

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped