package catalyst
Catalyst is a library for manipulating relational query plans. All classes in catalyst are considered an internal API to Spark SQL and are subject to change between minor releases.
- Alphabetic
- By Inheritance
- catalyst
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
AliasIdentifier(name: String, qualifier: Seq[String]) extends Product with Serializable
Encapsulates an identifier that is either a alias name or an identifier that has table name and a qualifier.
Encapsulates an identifier that is either a alias name or an identifier that has table name and a qualifier. The SubqueryAlias node keeps track of the qualifier using the information in this structure
- name
- Is an alias name or a table name
- qualifier
- Is a qualifier
-
sealed
trait
CatalystIdentifier extends AnyRef
An identifier that optionally specifies a database.
An identifier that optionally specifies a database.
Format (unquoted): "name" or "db.name" Format (quoted): "
name" or "db.name" -
trait
DataSourceOptions extends AnyRef
Interface defines the following methods for a data source:
Interface defines the following methods for a data source:
- register a new option name
- retrieve all registered option names
- valid a given option name
- get alternative option name if any
-
class
ExtendedAnalysisException extends AnalysisException
Internal AnalysisException that also captures a LogicalPlan.
-
class
FileSourceOptions extends Serializable
Common options for the file-based data source.
-
case class
FunctionIdentifier(funcName: String, database: Option[String], catalog: Option[String]) extends CatalystIdentifier with Product with Serializable
Identifies a function in a database.
Identifies a function in a database. If
databaseis not defined, the current database is used. -
abstract
class
InternalRow extends SpecializedGetters with Serializable
An abstract class for row used internally in Spark SQL, which only contains the columns as internal types.
- class NoopFilters extends StructFilters
-
class
OrderedFilters extends StructFilters
An instance of the class compiles filters to predicates and sorts them in the order which allows to apply the predicates to an internal row with partially initialized values, for instance converted from parsed CSV fields.
-
case class
ProjectingInternalRow(schema: StructType, colOrdinals: IndexedSeq[Int]) extends InternalRow with Product with Serializable
An InternalRow that projects particular columns from another InternalRow without copying the underlying data.
-
case class
QualifiedTableName(catalog: String, database: String, name: String) extends Product with Serializable
A fully qualified identifier for a table (i.e., database.tableName)
- class QueryPlanningTracker extends AnyRef
-
abstract
class
QueryPlanningTrackerCallback extends AnyRef
Callbacks after planning phase completion.
-
trait
SQLConfHelper extends AnyRef
Trait for getting the active SQLConf.
-
abstract
class
StructFilters extends AnyRef
The class provides API for applying pushed down filters to partially or fully set internal rows that have the struct schema.
The class provides API for applying pushed down filters to partially or fully set internal rows that have the struct schema.
StructFiltersassumes that:reset()is called before anyskipRow()calls for new row.
-
case class
TableIdentifier(table: String, database: Option[String], catalog: Option[String]) extends CatalystIdentifier with Product with Serializable
Identifies a table in a database.
Identifies a table in a database. If
databaseis not defined, the current database is used. When we register a permanent function in the FunctionRegistry, we use unquotedString as the function name.
Value Members
- object AliasIdentifier extends Serializable
-
object
CatalystTypeConverters
Functions to convert Scala types to Catalyst types and vice versa.
- object CurrentUserContext
- object DeserializerBuildHelper
- object ExtendedAnalysisException extends Serializable
- object FileSourceOptions extends Serializable
- object FunctionIdentifier extends Serializable
- object InternalRow extends Serializable
- object ProjectingInternalRow extends Serializable
- object QualifiedTableName extends Serializable
-
object
QueryPlanningTracker
A simple utility for tracking runtime and associated stats in query planning.
A simple utility for tracking runtime and associated stats in query planning.
There are two separate concepts we track:
1. Phases: These are broad scope phases in query planning, as listed below, i.e. analysis, optimization and physical planning (just planning).
2. Rules: These are the individual Catalyst rules that we track. In addition to time, we also track the number of invocations and effective invocations.
- object SerializerBuildHelper
- object StructFilters
- object TableIdentifier extends Serializable