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
-
trait
DefinedByConstructorParams extends AnyRef
A helper trait to create org.apache.spark.sql.catalyst.encoders.ExpressionEncoders for classes whose fields are entirely defined by constructor params but should not be case classes.
-
case class
FunctionIdentifier(funcName: String, database: Option[String]) extends IdentifierWithDatabase 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. -
sealed
trait
IdentifierWithDatabase 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" -
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.
-
case class
QualifiedTableName(database: String, name: String) extends Product with Serializable
A fully qualified identifier for a table (i.e., database.tableName)
- class QueryPlanningTracker extends AnyRef
-
trait
ScalaReflection extends Logging
Support for generating catalyst schemas for scala objects.
Support for generating catalyst schemas for scala objects. Note that unlike its companion object, this trait able to work in both the runtime and the compile time (macro) universe.
-
case class
TableIdentifier(table: String, database: Option[String]) extends IdentifierWithDatabase 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. -
case class
WalkedTypePath(walkedPaths: Seq[String] = Nil) extends Product with Serializable
This class records the paths the serializer and deserializer walk through to reach current path.
This class records the paths the serializer and deserializer walk through to reach current path. Note that this class adds new path in prior to recorded paths so it maintains the paths as reverse order.
Value Members
- object AliasIdentifier extends Serializable
-
object
CatalystTypeConverters
Functions to convert Scala types to Catalyst types and vice versa.
- object DeserializerBuildHelper
- object FunctionIdentifier extends Serializable
- object InternalRow extends Serializable
-
object
JavaTypeInference
Type-inference utilities for POJOs and Java collections.
-
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
ScalaReflection extends ScalaReflection
A default version of ScalaReflection that uses the runtime universe.
- object SerializerBuildHelper
- object TableIdentifier extends Serializable