Packages

trait Table[T <: Table[T]] extends CypherTable

Main abstraction of a relational backend. A table represents a relation in terms of relational algebra and exposes relational and additional auxiliary operators. Operators need to be implemented by the specific backend (e.g. morpheus-spark-cypher).

T

backend-specific representation of that table (e.g. DataFrame for morpheus-spark-cypher)

Self Type
T
Linear Supertypes
CypherTable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Table
  2. CypherTable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def columnType: Map[String, CypherType]
    Definition Classes
    CypherTable
  2. abstract def distinct(cols: String*): T

    Returns a table where each row is unique with regard to the specified columns

    Returns a table where each row is unique with regard to the specified columns

    cols

    columns to consider when comparing rows

    returns

    table containing the specific columns and distinct rows

  3. abstract def distinct: T

    Returns a table where each row is unique.

    Returns a table where each row is unique.

    returns

    table with unique rows

  4. abstract def drop(cols: String*): T

    Returns a table with the given columns removed.

    Returns a table with the given columns removed.

    cols

    columns to drop

    returns

    table with dropped columns

  5. abstract def filter(expr: Expr)(implicit header: RecordHeader, parameters: CypherMap): T

    Returns a table containing only rows where the given expression evaluates to true.

    Returns a table containing only rows where the given expression evaluates to true.

    expr

    filter expression

    header

    table record header

    parameters

    query parameters

    returns

    table with filtered rows

  6. abstract def group(by: Set[Var], aggregations: Map[String, Aggregator])(implicit header: RecordHeader, parameters: CypherMap): T

    Groups the rows within the table by the given query variables.

    Groups the rows within the table by the given query variables. Additionally a set of aggregations can be performed on the grouped table.

    by

    query variables to group by (e.g. (n)), if empty, the whole row is used as grouping key

    aggregations

    set of aggregations functions and the column to store the result in

    header

    table record header

    parameters

    query parameters

    returns

    table grouped by the given keys and results of possible aggregate functions

  7. abstract def join(other: T, joinType: JoinType, joinCols: (String, String)*): T

    Joins the current table with the given table on the specified join columns using equi-join semantics.

    Joins the current table with the given table on the specified join columns using equi-join semantics.

    other

    table to join

    joinType

    join type to perform (e.g. inner, outer, ...)

    joinCols

    columns to join the two tables on

    returns

    joined table

  8. abstract def limit(n: Long): T

    Returns a table containing the first n rows of the current table.

    Returns a table containing the first n rows of the current table.

    n

    number of rows to return

    returns

    table with at most n rows

  9. abstract def orderBy(sortItems: (Expr, Order)*)(implicit header: RecordHeader, parameters: CypherMap): T

    Returns a table that is ordered by the given columns.

    Returns a table that is ordered by the given columns.

    sortItems

    a sequence of column names and their order (i.e. ascending / descending)

    returns

    ordered table

  10. abstract def physicalColumns: Seq[String]
    Definition Classes
    CypherTable
  11. abstract def rows: Iterator[(String) ⇒ CypherValue]
    Definition Classes
    CypherTable
  12. abstract def select(col: (String, String), cols: (String, String)*): T

    Returns a table containing only the given columns.

    Returns a table containing only the given columns. The column order within the table is aligned with the argument.

    cols

    columns to select and their alias

    returns

    table containing only requested aliased columns

  13. abstract def show(rows: Int = 20): Unit

    Prints the table to the system console.

    Prints the table to the system console.

    rows

    number of rows to print

  14. abstract def size: Long
    Definition Classes
    CypherTable
  15. abstract def skip(n: Long): T

    Returns a table without the first n rows of the current table.

    Returns a table without the first n rows of the current table.

    n

    number of rows to skip

    returns

    table with skipped rows

  16. abstract def unionAll(other: T): T

    Computes the union of the current table and the given table.

    Computes the union of the current table and the given table. Requires both tables to have identical column layouts.

    other

    table to union with

    returns

    union table

  17. abstract def withColumns(columns: (Expr, String)*)(implicit header: RecordHeader, parameters: CypherMap): T

    Returns a table with additional expressions, which are evaluated and stored in the specified columns.

    Returns a table with additional expressions, which are evaluated and stored in the specified columns.

    columns

    tuples of expressions to evaluate and corresponding column name

    header

    table record header

    parameters

    query parameters

    Note

    If the column already exists, its contents will be replaced.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def cache(): T

    If supported by the backend, calling that operator caches the underlying table within the backend runtime.

    If supported by the backend, calling that operator caches the underlying table within the backend runtime.

    returns

    cached version of that table

  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. def logicalColumns: Option[Seq[String]]
    Definition Classes
    CypherTable
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. def select(cols: String*): T

    Returns a table containing only the given columns.

    Returns a table containing only the given columns. The column order within the table is aligned with the argument.

    cols

    columns to select

    returns

    table containing only requested columns

  18. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from CypherTable

Inherited from AnyRef

Inherited from Any

Ungrouped