Class

quasar.yggdrasil.table.BlockStoreColumnarTableModule

InternalTable

Related Doc: package BlockStoreColumnarTableModule

Permalink

class InternalTable extends Table

InternalTables are tables that are *generally* small and fit in a single slice and are completely in-memory. Because they fit in memory, we are allowed more optimizations when doing things like joins.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InternalTable
  2. Table
  3. ColumnarTable
  4. SamplableColumnarTable
  5. SamplableTable
  6. TableLike
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new InternalTable(slice: Slice)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def canonicalize(length: Int, maxLength0: Option[Int] = None): Table

    Permalink

    Returns a table where each slice (except maybe the last) has slice size length.

    Returns a table where each slice (except maybe the last) has slice size length. Also removes slices of size zero. If an optional maxLength0 size is provided, then the slices need only land in the range between length and maxLength0. For slices being loaded from ingest, it is often the case that we are missing a few rows at the end, so we shouldn't be too strict.

    Definition Classes
    ColumnarTableTableLike
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def cogroup(leftKey: TransSpec1, rightKey: TransSpec1, that: Table)(leftResultTrans: TransSpec1, rightResultTrans: TransSpec1, bothResultTrans: TransSpec2): Table

    Permalink

    Cogroups this table with another table, using equality on the specified transformation on rows of the table.

    Cogroups this table with another table, using equality on the specified transformation on rows of the table.

    Definition Classes
    ColumnarTableTableLike
  8. def compact(spec: TransSpec1, definedness: Definedness = AnyDefined): Table

    Permalink

    Removes all rows in the table for which definedness is satisfied Remaps the indicies.

    Removes all rows in the table for which definedness is satisfied Remaps the indicies.

    Definition Classes
    ColumnarTableTableLike
  9. def concat(t2: Table): Table

    Permalink
    Definition Classes
    ColumnarTableTableLike
  10. def cross(that: Table)(spec: TransSpec2): Table

    Permalink

    Performs a full cartesian cross on this table with the specified table, applying the specified transformation to merge the two tables into a single table.

    Performs a full cartesian cross on this table with the specified table, applying the specified transformation to merge the two tables into a single table.

    Definition Classes
    ColumnarTableTableLike
  11. def distinct(spec: TransSpec1): Table

    Permalink

    Yields a new table with distinct rows.

    Yields a new table with distinct rows. Assumes this table is sorted.

    Definition Classes
    ColumnarTableTableLike
  12. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def force: M[Table]

    Permalink

    Force the table to a backing store, and provice a restartable table over the results.

    Force the table to a backing store, and provice a restartable table over the results.

    Definition Classes
    InternalTableColumnarTableTableLike
  16. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  17. def groupByN(groupKeys: Seq[TransSpec1], valueSpec: TransSpec1, sortOrder: DesiredSortOrder = SortAscending, unique: Boolean = false): M[Seq[Table]]

    Permalink

    Sorts the KV table by ascending or descending order based on a seq of transformations applied to the rows.

    Sorts the KV table by ascending or descending order based on a seq of transformations applied to the rows.

    groupKeys

    The transspecs to use to obtain the values to sort on

    valueSpec

    The transspec to use to obtain the non-sorting values

    sortOrder

    Whether to sort ascending or descending

    unique

    If true, the same key values will sort into a single row, otherwise we assign a unique row ID as part of the key so that multiple equal values are preserved

    Definition Classes
    InternalTableTableLike
  18. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  20. def leftShift(focus: CPath): Table

    Permalink

    Performs a dimensional pivot on any array or object values at the given focus.

    Performs a dimensional pivot on any array or object values at the given focus. We can view the focus as a form of lens: the structure at the focus is pivoted, while everything *around* the focus is left untouched. Usually, this results in data being duplicated, since the resulting number of rows will be greater-than or equal-to the input number of rows, provided that the focus does indeed refer to arrays/objects and those structures are non-empty.

    Definition Classes
    ColumnarTableTableLike
  21. def load(apiKey: APIKey, tpe: JType): EitherT[M, ResourceError, Table]

    Permalink

    For each distinct path in the table, load all columns identified by the specified jtype and concatenate the resulting slices into a new table.

    For each distinct path in the table, load all columns identified by the specified jtype and concatenate the resulting slices into a new table.

    Definition Classes
    InternalTableTableLike
  22. def logged(logger: Logger, logPrefix: String = "", prelude: String = "", appendix: String = "")(f: (Slice) ⇒ String): Table

    Permalink
    Definition Classes
    ColumnarTable
  23. def metrics: BlockStoreColumnarTableModule.TableMetrics

    Permalink
    Definition Classes
    ColumnarTableTableLike
  24. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. def normalize: Table

    Permalink
    Definition Classes
    ColumnarTable
  26. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  27. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. def paged(limit: Int): Table

    Permalink
    Definition Classes
    InternalTableColumnarTableTableLike
  29. def partitionMerge(partitionBy: TransSpec1)(f: (Table) ⇒ M[Table]): M[Table]

    Permalink

    In order to call partitionMerge, the table must be sorted according to the values specified by the partitionBy transspec.

    In order to call partitionMerge, the table must be sorted according to the values specified by the partitionBy transspec.

    Definition Classes
    ColumnarTableTableLike
  30. def printer(prelude: String = "", flag: String = ""): Table

    Permalink
    Definition Classes
    ColumnarTableTableLike
  31. def reduce[A](reducer: BlockStoreColumnarTableModule.Reducer[A])(implicit monoid: Monoid[A]): M[A]

    Permalink

    Folds over the table to produce a single value (stored in a singleton table).

    Folds over the table to produce a single value (stored in a singleton table).

    Definition Classes
    ColumnarTableTableLike
  32. def renderCsv(): StreamT[M, CharBuffer]

    Permalink
    Definition Classes
    ColumnarTableTableLike
  33. def renderJson(prefix: String = "", delimiter: String = "\n", suffix: String = ""): StreamT[M, CharBuffer]

    Permalink
    Definition Classes
    ColumnarTableTableLike
  34. def sample(sampleSize: Int, specs: Seq[TransSpec1]): M[Seq[Table]]

    Permalink

    A one-pass algorithm for sampling.

    A one-pass algorithm for sampling. This runs in time O(H_n*m2 + n) = O(m2 lg n + n), so it is not super optimal. Another good option is to try Alissa's approach; keep 2 buffers of size m. Load one up fully, shuffle, then replace, but we aren't 100% sure it is uniform and independent.

    Of course, the hope is that this will not be used once we get efficient sampling in that runs in O(m lg n) time.

    Definition Classes
    SamplableColumnarTableSamplableTable
  35. def schemas: M[Set[JType]]

    Permalink
    Definition Classes
    ColumnarTableTableLike
  36. val size: TableSize

    Permalink

    Return an indication of table size, if known

    Return an indication of table size, if known

    Definition Classes
    ColumnarTableTableLike
  37. val slice: Slice

    Permalink
  38. def slicePrinter(prelude: String)(f: (Slice) ⇒ String): Table

    Permalink
    Definition Classes
    ColumnarTable
  39. val slices: StreamT[M, Slice]

    Permalink
    Definition Classes
    ColumnarTable
  40. def sort(sortKey: TransSpec1, sortOrder: DesiredSortOrder, unique: Boolean = false): M[Table]

    Permalink

    Sorts the KV table by ascending or descending order of a transformation applied to the rows.

    Sorts the KV table by ascending or descending order of a transformation applied to the rows.

    sortKey

    The transspec to use to obtain the values to sort on

    sortOrder

    Whether to sort ascending or descending

    unique

    If true, the same key values will sort into a single row, otherwise we assign a unique row ID as part of the key so that multiple equal values are preserved

    Definition Classes
    InternalTableTableLike
  41. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  42. def takeRange(startIndex0: Long, numberToTake0: Long): Table

    Permalink
    Definition Classes
    InternalTableColumnarTableTableLike
  43. def toArray[A](implicit tpe: CValueType[A]): Table

    Permalink
    Definition Classes
    ColumnarTableTableLike
  44. def toExternalTable: ExternalTable

    Permalink

    Forces a table to an external table, possibly de-optimizing it.

    Forces a table to an external table, possibly de-optimizing it.

    Definition Classes
    Table
  45. def toInternalTable(limit: Int): EitherT[M, ExternalTable, InternalTable]

    Permalink

    Converts a table to an internal table, if possible.

    Converts a table to an internal table, if possible. If the table is already an InternalTable or a SingletonTable, then the conversion will always succeed. If the table is an ExternalTable, then if it has less than limit rows, it will be converted to an InternalTable, otherwise it will stay an ExternalTable.

    Definition Classes
    InternalTableTable
  46. def toJson: M[Iterable[JValue]]

    Permalink
    Definition Classes
    ColumnarTableTableLike
  47. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  48. def toStrings: M[Iterable[String]]

    Permalink
    Definition Classes
    ColumnarTable
  49. def transform(spec: TransSpec1): Table

    Permalink

    Performs a one-pass transformation of the keys and values in the table.

    Performs a one-pass transformation of the keys and values in the table. If the key transform is not identity, the resulting table will have unknown sort order.

    Definition Classes
    ColumnarTableTableLike
  50. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  53. def zip(t2: Table): M[Table]

    Permalink

    Zips two tables together in their current sorted order.

    Zips two tables together in their current sorted order. If the tables are not normalized first and thus have different slices sizes, then since the zipping is done per slice, this can produce a result that is different than if the tables were normalized.

    Definition Classes
    ColumnarTableTableLike

Inherited from Table

Inherited from AnyRef

Inherited from Any

Ungrouped