p

ai.chronon

online

package online

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. abstract class Api extends Serializable
  2. class ArrayRow extends Row

    Consumed by row aggregator after decoding.

    Consumed by row aggregator after decoding. Mutations follow the same schema as input for value indices. However there are two main differences. * ts and reversal columns are required for computation * Mutation ts takes on the role of ts. Since the schema is the same with the sole difference of the added columns, we add these columns on the tail of the Array and extract them accordingly. i.e. for mutations: reversal index = ArrayRow.length - (Constants.MutationAvroColumns.length - (index of reversal in Constants.MutationAvroColumns)

  3. class AvroCodec extends Serializable
  4. class BaseFetcher extends MetadataStore
  5. case class DataMetrics(series: Seq[(Long, SortedMap[String, Any])]) extends Product with Serializable
  6. class Fetcher extends BaseFetcher
  7. class GroupByServingInfoParsed extends GroupByServingInfo with Serializable
  8. class JavaFetcher extends AnyRef
  9. class JavaRequest extends AnyRef
  10. class JavaResponse extends AnyRef
  11. case class JoinCodec(conf: JoinOps, keySchema: StructType, valueSchema: StructType, keyCodec: AvroCodec, valueCodec: AvroCodec) extends Serializable with Product
  12. trait KVStore extends AnyRef
  13. case class LoggableResponse(keyBytes: Array[Byte], valueBytes: Array[Byte], joinName: String, tsMillis: Long) extends Product with Serializable
  14. case class LoggableResponseBase64(keyBase64: String, valueBase64: String, name: String, tsMillis: Long) extends Product with Serializable
  15. class MetadataStore extends AnyRef
  16. case class Mutation(schema: StructType = null, before: Array[Any] = null, after: Array[Any] = null) extends Product with Serializable

    Mutation is the general case of an Event Imagine a user impression/view stream - impressions/views are immutable events Imagine a stream of changes to a credit card transaction stream.

    MUTATION vs. EVENT

    Mutation is the general case of an Event Imagine a user impression/view stream - impressions/views are immutable events Imagine a stream of changes to a credit card transaction stream.

    • transactions can be "corrected"/updated & deleted, besides being "inserted"
    • This is one of the core difference between entity and event sources. Events are insert-only.
    • (The other difference is Entites are stored in the warehouse typically as snapshots of the table as of midnight) In case of an update - one must produce both before and after values In case of a delete - only before is populated & after is left as null In case of a insert - only after is populated & before is left as null
    TIME ASSUMPTIONS

    The schema needs to contain a ts(milliseconds as a java Long) For the entities case, mutation_ts when absent will use ts as a replacement

    TYPE CONVERSIONS

    Java types corresponding to the schema types. StreamDecoder should produce mutations that comply. NOTE: everything is nullable (hence boxed) IntType java.lang.Integer LongType java.lang.Long DoubleType java.lang.Double FloatType java.lang.Float ShortType java.lang.Short BooleanType java.lang.Boolean ByteType java.lang.Byte StringType java.lang.String BinaryType Array[Byte] ListType java.util.List[Byte] MapType java.util.Map[Byte] StructType Array[Any]

  17. abstract class StreamDecoder extends Serializable
  18. class TTLCache[I, O] extends AnyRef

Value Members

  1. object AvroCodec extends Serializable
  2. object AvroConversions
  3. object CompatParColls
  4. object Fetcher
  5. object KVStore
  6. object Metrics

Ungrouped