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 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
  21. def logged(logger: Logger, logPrefix: String = "", prelude: String = "", appendix: String = "")(f: (Slice) ⇒ String): Table

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

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

    Permalink
    Definition Classes
    AnyRef
  24. def normalize: Table

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

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

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

    Permalink
    Definition Classes
    InternalTableColumnarTableTableLike
  28. 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
  29. def printer(prelude: String = "", flag: String = ""): Table

    Permalink
    Definition Classes
    ColumnarTableTableLike
  30. 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
  31. def renderCsv(): StreamT[M, CharBuffer]

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

    Permalink
    Definition Classes
    ColumnarTableTableLike
  33. 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
  34. def schemas: M[Set[JType]]

    Permalink
    Definition Classes
    ColumnarTableTableLike
  35. val size: TableSize

    Permalink

    Return an indication of table size, if known

    Return an indication of table size, if known

    Definition Classes
    ColumnarTableTableLike
  36. val slice: Slice

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

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

    Permalink
    Definition Classes
    ColumnarTable
  39. 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
  40. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

    Permalink
    Definition Classes
    ColumnarTableTableLike
  43. 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
  44. 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
  45. def toJson: M[Iterable[JValue]]

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

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

    Permalink
    Definition Classes
    ColumnarTable
  48. 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
  49. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  52. 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