org.apache.spark.sql.sources.druid

DruidPlanner

class DruidPlanner extends DruidTransforms

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. DruidPlanner
  2. DruidTransforms
  3. Logging
  4. PredicateHelper
  5. LimitTransfom
  6. JoinTransform
  7. AggregateTransform
  8. ProjectFilterTransfom
  9. DruidPlannerHelper
  10. AnyRef
  11. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class DebugTransform(transformName: String, t: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]) extends ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder] with Product with Serializable

    Definition Classes
    DruidTransforms
  2. type DruidTransform = ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

    Definition Classes
    DruidTransforms
  3. case class GroupingInfo(gEs: Seq[Expression], expandOpGExps: Seq[Expression], aEs: Seq[NamedExpression], expandOpProjection: Seq[Expression], aEExprIdToPos: Map[ExprId, Int], aEToLiteralExpr: Map[Expression, Expression] = ...) extends Product with Serializable

  4. class NullCheckAggregateExpression extends AnyRef

    Definition Classes
    AggregateTransform
  5. type ODB = Option[DruidQueryBuilder]

    Definition Classes
    DruidTransforms
  6. case class ORTransform(t1: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder], t2: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]) extends ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder] with Product with Serializable

    Definition Classes
    DruidTransforms
  7. case class TransformHolder(t: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]) extends Product with Serializable

    Definition Classes
    DruidTransforms

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. object CompDetails

    Definition Classes
    ProjectFilterTransfom
  7. object JoinNode

    Definition Classes
    JoinTransform
  8. object SpatialComparison

    Definition Classes
    ProjectFilterTransfom
  9. object ValidDruidNativeComparison

    Definition Classes
    ProjectFilterTransfom
  10. def addUnpushedAttributes(dqb: DruidQueryBuilder, e: Expression, isProjection: Boolean): Option[DruidQueryBuilder]

    Definition Classes
    ProjectFilterTransfom
  11. def aggExpressions(aEs: Seq[Expression]): Seq[AggregateExpression]

    Definition Classes
    AggregateTransform
  12. def aggregateExpression(dqb: DruidQueryBuilder, aggExp: AggregateExpression)(implicit expandOpProjection: Seq[Expression], aEExprIdToPos: Map[ExprId, Int], aEToLiteralExpr: Map[Expression, Expression]): Option[DruidQueryBuilder]

    Definition Classes
    AggregateTransform
  13. val aggregateTransform: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

    Definition Classes
    AggregateTransform
  14. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  15. val cacheTablePatternMatch: CachedTablePattern

  16. def canEvaluate(expr: Expression, plan: LogicalPlan): Boolean

    Attributes
    protected
    Definition Classes
    PredicateHelper
  17. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. def debugTranslation(msg: ⇒ String): Unit

    Definition Classes
    DruidTransforms
  19. def dimFilterExpression(dqb: DruidQueryBuilder, fe: Expression): Option[FilterSpec]

    Definition Classes
    ProjectFilterTransfom
  20. val druidRelationTransform: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

    Definition Classes
    ProjectFilterTransfom
  21. val druidRelationTransformForJoin: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

    For joins ignore projections at the individual table level.

    For joins ignore projections at the individual table level. The projections above the final join will be checked.

    Definition Classes
    ProjectFilterTransfom
  22. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  23. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  24. def exprIdToAttribute(e: Expression, plan: LogicalPlan): Option[(ExprId, Int)]

    Definition Classes
    DruidPlannerHelper
  25. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  26. def findAttribute(e: Expression): Option[AttributeReference]

    Definition Classes
    DruidPlannerHelper
  27. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  28. def groupingExpression(dqb: DruidQueryBuilder, timeElemExtractor: TimeElementExtractor, timeElemExtractor2: SparkNativeTimeElementExtractor, ge: Expression, expandOpExp: Expression): Option[DruidQueryBuilder]

    Match the following as a rewritable Grouping Expression: - an AttributeReference, these are translated to a DefaultDimensionSpec - a TimeElementExtractor expression, these are translated to ExtractionDimensionSpec with a TimeFormatExtractionFunctionSpec

    Match the following as a rewritable Grouping Expression: - an AttributeReference, these are translated to a DefaultDimensionSpec - a TimeElementExtractor expression, these are translated to ExtractionDimensionSpec with a TimeFormatExtractionFunctionSpec

    dqb
    timeElemExtractor
    ge
    returns

    Definition Classes
    AggregateTransform
  29. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  30. def intervalFilterExpression(dqb: DruidQueryBuilder, iCE: IntervalConditionExtractor, iCE2: SparkIntervalConditionExtractor, fe: Expression): Option[DruidQueryBuilder]

    Definition Classes
    ProjectFilterTransfom
  31. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  32. def isNumericType(dt: DataType): Boolean

    Definition Classes
    DruidPlannerHelper
  33. def isTraceEnabled(): Boolean

    Attributes
    protected
    Definition Classes
    Logging
  34. val joinGraphTransform: ORTransform

  35. val joinTransform: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

    Definition Classes
    JoinTransform
  36. val joinTransformWithDebug: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

  37. val limitTransform: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]

    A Sort Operator is pushed down to Druid if all its order expressions can be pushed down.

    Sort Rewrite:

    A Sort Operator is pushed down to Druid if all its order expressions can be pushed down. An order expression is pushed down if it is on an Expression that is already pushed to Druid, or if it is an Alias expression whose child has been pushed to Druid.

    Limit Rewrite:

    A Limit Operator above a Sort is always pushed down to Druid. The limit value is set on the LimitSpec of the GroupByQuerySpec

    Definition Classes
    LimitTransfom
  38. def log: Logger

    Attributes
    protected
    Definition Classes
    Logging
  39. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  40. def logDebug(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  41. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  42. def logError(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  43. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  44. def logInfo(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  45. def logName: String

    Attributes
    protected
    Definition Classes
    Logging
  46. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  47. def logTrace(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  48. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  49. def logWarning(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  50. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  51. final def notify(): Unit

    Definition Classes
    AnyRef
  52. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  53. def plan(db: Seq[DruidQueryBuilder], plan: LogicalPlan): Seq[DruidQueryBuilder]

  54. def positionOfAttribute(e: Expression, plan: LogicalPlan): Option[(Expression, (AttributeReference, Int))]

    Definition Classes
    DruidPlannerHelper
  55. def projectExpression(dqb: DruidQueryBuilder, pe: Expression, joinAttrs: Set[String] = Set(), ignoreProjectList: Boolean = false): Option[DruidQueryBuilder]

    Definition Classes
    ProjectFilterTransfom
  56. def replaceAlias(condition: Expression, aliases: AttributeMap[Expression]): Expression

    Attributes
    protected
    Definition Classes
    PredicateHelper
  57. def splitConjunctivePredicates(condition: Expression): Seq[Expression]

    Attributes
    protected
    Definition Classes
    PredicateHelper
  58. def splitDisjunctivePredicates(condition: Expression): Seq[Expression]

    Attributes
    protected
    Definition Classes
    PredicateHelper
  59. val sqlContext: SQLContext

  60. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  61. def toString(): String

    Definition Classes
    AnyRef → Any
  62. implicit def transformToHolder(t: ((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]): TransformHolder

    Definition Classes
    DruidTransforms
  63. val transforms: Seq[((Seq[DruidQueryBuilder], LogicalPlan)) ⇒ Seq[DruidQueryBuilder]]

  64. def translateProjectFilter(dqb1: Option[DruidQueryBuilder], projectList: Seq[NamedExpression], filters: Seq[Expression], ignoreProjectList: Boolean = false, joinAttrs: Set[String] = Set()): Seq[DruidQueryBuilder]

    Definition Classes
    ProjectFilterTransfom
  65. def unalias(e: Expression, agg: Aggregate): Option[Expression]

    Definition Classes
    DruidPlannerHelper
  66. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  67. final def wait(arg0: Long, arg1: Int): Unit

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from DruidTransforms

Inherited from Logging

Inherited from PredicateHelper

Inherited from LimitTransfom

Inherited from JoinTransform

Inherited from AggregateTransform

Inherited from ProjectFilterTransfom

Inherited from DruidPlannerHelper

Inherited from AnyRef

Inherited from Any

Ungrouped