shark.parse

SharkSemanticAnalyzer

class SharkSemanticAnalyzer extends SemanticAnalyzer with LogHelper

Shark's version of Hive's SemanticAnalyzer. In SemanticAnalyzer, genMapRedTasks() breaks the query plan down to different stages because of mapreduce. We want our query plan to stay intact as a single tree. Since genMapRedTasks is private, we have to overload analyzeInternal() to use our own genMapRedTasks().

Linear Supertypes
LogHelper, Logging, SemanticAnalyzer, BaseSemanticAnalyzer, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. SharkSemanticAnalyzer
  2. LogHelper
  3. Logging
  4. SemanticAnalyzer
  5. BaseSemanticAnalyzer
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SharkSemanticAnalyzer(conf: HiveConf)

Type Members

  1. class AnalyzeCreateCommonVars extends AnyRef

    Attributes
    private[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  2. class RowFormatParams extends AnyRef

    Attributes
    private[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  3. class StorageFormat extends AnyRef

    Attributes
    private[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer

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. var _resSchema: List[FieldSchema]

  7. def analyze(arg0: ASTNode, arg1: Context): Unit

    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  8. def analyzeCreateTable(rootAST: ASTNode, queryBlock: QueryBlock): Option[ASTNode]

  9. def analyzeDDLSkewedValues(arg0: List[List[String]], arg1: ASTNode): Unit

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  10. def analyzeInternal(ast: ASTNode): Unit

    Override SemanticAnalyzer.

    Override SemanticAnalyzer.analyzeInternal to handle CTAS caching and INSERT updates.

    Unified views: For CTAS and INSERT INTO/OVERWRITE the generated Shark query plan matches the one created if the target table were not cached. Disk => memory loading is done by a SparkLoadTask that executes _after_ all other tasks (SparkTask, Hive MoveTasks) finish executing. For INSERT INTO, the SparkLoadTask will be able to determine, using a path filter based on a snapshot of the table/partition data directory taken in genMapRedTasks(), new files that should be loaded into the cache. For CTAS, a path filter isn't used - everything in the data directory is loaded into the cache.

    Non-unified views (i.e., the cached table content is memory-only): The query plan's FileSinkOperator is replaced by a MemoryStoreSinkOperator. The MemoryStoreSinkOperator creates a new table (or partition) entry in the Shark metastore for CTAS, and creates UnionRDDs for INSERT INTO commands.

    Definition Classes
    SharkSemanticAnalyzer → SemanticAnalyzer → BaseSemanticAnalyzer
  11. def analyzeSkewedTablDDLColNames(arg0: List[String], arg1: ASTNode): List[String]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  12. def analyzeStoredAdDirs(arg0: ASTNode): Boolean

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  13. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  14. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. def constructListBucketingCtx(arg0: List[String], arg1: List[List[String]], arg2: Map[SkewedValueList, String], arg3: Boolean, arg4: HiveConf): ListBucketingCtx

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  16. def doPhase1(arg0: ASTNode, arg1: QB, arg2: Phase1Ctx): Boolean

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  17. def doPhase1QBExpr(arg0: ASTNode, arg1: QBExpr, arg2: String, arg3: String): Unit

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  18. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  20. def errStream(): PrintStream

    Definition Classes
    LogHelper
  21. def extractPartitionSpecs(arg0: Tree): HashMap[String, String]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  22. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def genAllExprNodeDesc(arg0: ASTNode, arg1: RowResolver, arg2: TypeCheckCtx): Map[ASTNode, ExprNodeDesc]

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  24. def genAllExprNodeDesc(arg0: ASTNode, arg1: RowResolver): Map[ASTNode, ExprNodeDesc]

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  25. def genExprNodeDesc(arg0: ASTNode, arg1: RowResolver, arg2: TypeCheckCtx): ExprNodeDesc

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  26. def genExprNodeDesc(arg0: ASTNode, arg1: RowResolver): ExprNodeDesc

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  27. def genMapRedTasks(qb: QueryBlock, pctx: ParseContext, terminalOps: Seq[TerminalOperator]): Unit

    Generate tasks for executing the query, including the SparkTask to do the select, the MoveTask for updates, and the DDLTask for CTAS.

  28. def genPlan(arg0: QB): Operator[_ <: OperatorDesc]

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  29. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  30. def getColumnAccessInfo(): ColumnAccessInfo

    Definition Classes
    BaseSemanticAnalyzer
  31. def getColumnNames(arg0: ASTNode): List[String]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  32. def getColumnNamesOrder(arg0: ASTNode): List[Order]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  33. def getColumns(arg0: ASTNode): List[FieldSchema]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  34. def getDb(): Hive

    Definition Classes
    BaseSemanticAnalyzer
  35. def getFetchTask(): FetchTask

    Definition Classes
    BaseSemanticAnalyzer
  36. def getIdToTableNameMap(): HashMap[String, String]

    Definition Classes
    BaseSemanticAnalyzer
  37. def getInputs(): HashSet[ReadEntity]

    Definition Classes
    BaseSemanticAnalyzer
  38. def getLineageInfo(): LineageInfo

    Definition Classes
    BaseSemanticAnalyzer
  39. def getMetaData(arg0: QB, arg1: ReadEntity): Unit

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  40. def getMetaData(arg0: QB): Unit

    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  41. def getOutputs(): HashSet[WriteEntity]

    Definition Classes
    BaseSemanticAnalyzer
  42. def getParseContext(): ParseContext

    Definition Classes
    SemanticAnalyzer
  43. def getQB(): QB

    Definition Classes
    SemanticAnalyzer
  44. def getQueryProperties(): QueryProperties

    Definition Classes
    BaseSemanticAnalyzer
  45. def getResultSchema(): List[FieldSchema]

    This is used in driver to get the result schema.

    This is used in driver to get the result schema.

    Definition Classes
    SharkSemanticAnalyzer → SemanticAnalyzer → BaseSemanticAnalyzer
  46. def getRootTasks(): List[Task[_ <: Serializable]]

    Definition Classes
    BaseSemanticAnalyzer
  47. def getRowResolver(arg0: Operator[_ <: OperatorDesc]): RowResolver

    Definition Classes
    SemanticAnalyzer
  48. def getSkewedValueFromASTNode(arg0: ASTNode): List[String]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
  49. def getSkewedValuesFromASTNode(arg0: Node): List[String]

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  50. def getTableAccessInfo(): TableAccessInfo

    Definition Classes
    BaseSemanticAnalyzer
  51. def handleGenericFileFormat(arg0: ASTNode): Unit

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  52. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  53. def init(): Unit

    Definition Classes
    SemanticAnalyzer → BaseSemanticAnalyzer
  54. def initCtx(arg0: Context): Unit

    Definition Classes
    BaseSemanticAnalyzer
  55. def initParseCtx(arg0: ParseContext): Unit

    Definition Classes
    SemanticAnalyzer
  56. def initPhase1Ctx(): Phase1Ctx

    Definition Classes
    SemanticAnalyzer
  57. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  58. def isTraceEnabled(): Boolean

    Attributes
    protected
    Definition Classes
    Logging
  59. final def isValidPrefixSpec(arg0: Table, arg1: Map[String, String]): Boolean

    Definition Classes
    BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  60. def log: Logger

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

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

    Attributes
    protected
    Definition Classes
    Logging
  63. def logError(msg: String, exception: Throwable): Unit

    Definition Classes
    LogHelper
  64. def logError(msg: String, detail: String): Unit

    Definition Classes
    LogHelper
  65. def logError(msg: ⇒ String): Unit

    Definition Classes
    LogHelper → Logging
  66. def logError(msg: ⇒ String, throwable: Throwable): Unit

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

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

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

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

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

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

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

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

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

    Definition Classes
    AnyRef
  76. def outStream(): PrintStream

    Definition Classes
    LogHelper
  77. def processNoScanCommand(arg0: ASTNode): Unit

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  78. def processPartialScanCommand(arg0: ASTNode): Unit

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    SemanticAnalyzer
    Annotations
    @throws( ... )
  79. def putOpInsertMap[T <: OperatorDesc](arg0: Operator[T], arg1: RowResolver): Operator[T]

    Definition Classes
    SemanticAnalyzer
  80. def reset(): Unit

    Attributes
    protected[org.apache.hadoop.hive.ql.parse]
    Definition Classes
    SemanticAnalyzer → BaseSemanticAnalyzer
  81. def setColumnAccessInfo(arg0: ColumnAccessInfo): Unit

    Definition Classes
    BaseSemanticAnalyzer
  82. def setFetchTask(arg0: FetchTask): Unit

    Definition Classes
    BaseSemanticAnalyzer
  83. def setLineageInfo(arg0: LineageInfo): Unit

    Definition Classes
    BaseSemanticAnalyzer
  84. def setQB(arg0: QB): Unit

    Definition Classes
    SemanticAnalyzer
  85. def setTableAccessInfo(arg0: TableAccessInfo): Unit

    Definition Classes
    BaseSemanticAnalyzer
  86. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  87. def toString(): String

    Definition Classes
    AnyRef → Any
  88. def validate(): Unit

    Definition Classes
    SemanticAnalyzer → BaseSemanticAnalyzer
    Annotations
    @throws( ... )
  89. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from LogHelper

Inherited from Logging

Inherited from SemanticAnalyzer

Inherited from BaseSemanticAnalyzer

Inherited from AnyRef

Inherited from Any

Ungrouped