package run
- Alphabetic
- Public
- All
Type Members
-
case class
DataSource(port: Int, result: TabularData) extends SingleTableGeneratorProgram with Product with Serializable
An input source.
-
case class
JoinProgram(left: SingleTableGeneratorProgram, right: SingleTableGeneratorProgram, groupSize: Int, joinType: JoinType, filter: Option[Program] = None, selector: Vector[Int], result: TabularData) extends SingleTableGeneratorProgram with Product with Serializable
A Program performing joins Note: the join operation is usually splitted into this operation and two selects which prepares the groups.
A Program performing joins Note: the join operation is usually splitted into this operation and two selects which prepares the groups. See the Compiler.
- left
source for the left side, usually a select which also creates grouping
- right
source for the right side, usually a select which also creates grouping
- groupSize
prefix size of the groups, if 0 no grouping is performed.
- joinType
the join type. Encoding "inner", "left", "right", "outer"
- filter
the filter applied to each possible left/right possible row.
- selector
selected columns to return (from concatenated left and right side, including groups)
- result
result tabular type
- class JoinRunner extends AnyRef
-
sealed
trait
MultiTableGeneratorProgram extends TableGeneratorProgram
Special program for generating multiple tabular output values.
-
class
MultiTableGeneratorProgramRunner extends AnyRef
A Runner for MultiTableGeneratorProgram
-
sealed abstract
class
OpCode extends AnyRef
A Single OpCode in a stack based interpretation Machine.
-
case class
Program(args: Int, retStackDepth: Int, stackInitDepth: Int, ops: Vector[OpCode]) extends Product with Serializable
A Program for running select statements.
A Program for running select statements. It works using a Stack-Based mini virtual machine.
- args
the number of arguments (can be more, but will be ignored).
- retStackDepth
the length on the stack at the end.
- stackInitDepth
how deep the stack should be pre-allocated. Note: argument names is part of communication protocol with a bridge.
-
class
ProgramRunner extends AnyRef
A Trivial interpreter for Programs.
A Trivial interpreter for Programs.
- Annotations
- @throws( ... )
-
case class
SelectProgram(input: Option[SingleTableGeneratorProgram] = None, selector: Option[Program], projector: Option[Program], result: TabularData) extends SingleTableGeneratorProgram with Product with Serializable
A compiled Select Statement.
A compiled Select Statement.
- input
where the data comes from (default to port 0)
- selector
a program doing the selection. called with a row, returns bool on the stack if it succeeds. If empty, the row is always selected.
- projector
a program doing the projection. called with a row, returns the translated row. If empty, the row is returned untouched.
-
class
SelectProgramRunner extends AnyRef
Runs Select Programs
Runs Select Programs
- Annotations
- @throws( ... )
-
sealed
trait
SingleTableGeneratorProgram extends TableGeneratorProgram
A Program which emits exactly one table
-
class
SingleTableGeneratorProgramRunner extends AnyRef
Executes SingleTableGeneratorProgram programs
-
case class
SplitProgram(input: SingleTableGeneratorProgram, fractions: Vector[Double], shuffleSeed: Option[Long]) extends MultiTableGeneratorProgram with Product with Serializable
A program for splitting input streams.
-
sealed
trait
TableGeneratorProgram extends AnyRef
A Program for genearting (temporary tables) Note: this is part of the API to the Select Bridge.
-
case class
UnionProgram(inputs: Vector[SingleTableGeneratorProgram], all: Boolean, result: TabularData, inOrder: Boolean) extends SingleTableGeneratorProgram with Product with Serializable
A Program for performing unions.
A Program for performing unions.
- inputs
different inputs for the program.
- all
if true emit all rows
- inOrder
extension, emit result from left to right (makes it order deterministic)
Value Members
-
object
Compiler
Compiles select statements into programs.
- object MultiTableGeneratorProgramRunner
- object OpCode
- object Program extends Serializable
- object ProgramJson
- object SingleTableGeneratorProgramRunner
- object TableGeneratorProgram