Skip to content

Commit

Permalink
revert docs-src changes (old site) and chrome tracing
Browse files Browse the repository at this point in the history
  • Loading branch information
jordanrfrazier committed Nov 7, 2023
1 parent 55454e0 commit 005ac17
Show file tree
Hide file tree
Showing 9 changed files with 80 additions and 80 deletions.
2 changes: 1 addition & 1 deletion crates/sparrow-qfr-tool/src/chrome_tracing/trace_event.rs
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ pub(crate) enum Event {
#[derive(Serialize, Eq, PartialEq, Debug, Default)]
#[allow(dead_code)]
pub(crate) enum EventScope {
/// The event will be drawn from the top to bottom of the timestream.
/// The event will be drawn from the top to bottom of the timeline.
#[serde(rename = "g")]
Global,
/// The event will be drawn through all threads of a given process.
Expand Down
26 changes: 13 additions & 13 deletions docs-src/modules/developing/pages/queries.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,19 @@ The following is a quick overview of the query language's main features and synt
=== Viewing and filtering the contents of a table

Kaskada queries are built by composing simple expressions.
Every expression returns a timestream.
Every expression returns a timeline.

[source,Fenl]
----
Purchase | when(Purchase.amount > 10)
----

In this example we start with the expression `Purchase` (the timestream of all purchase events) then filter it using `xref:fenl:catalog.adoc#when[when()]`.
The result is a timestream of purchase events whose amount is greater than 10.
In this example we start with the expression `Purchase` (the timeline of all purchase events) then filter it using `xref:fenl:catalog.adoc#when[when()]`.
The result is a timeline of purchase events whose amount is greater than 10.

=== Stateful aggregations

Aggregate events to produce a continuous timestream whose value can be observed at arbitrary points in time.
Aggregate events to produce a continuous timeline whose value can be observed at arbitrary points in time.

[source,Fenl]
----
Expand All @@ -47,8 +47,8 @@ Records allow one or more values to be grouped into a single row.
You can create a record using the syntax `{key: value, key2: value2}`.
====

In this example we first filter the timestream of `Review` events to only include verified reviews, then aggregate the filtered results using the `xref:fenl:catalog.adoc#max[max()]` aggregation.
The resulting timestream describes the maximum number of stars as-of every point in time.
In this example we first filter the timeline of `Review` events to only include verified reviews, then aggregate the filtered results using the `xref:fenl:catalog.adoc#max[max()]` aggregation.
The resulting timeline describes the maximum number of stars as-of every point in time.

=== Automatic joins

Expand All @@ -60,7 +60,7 @@ Every expression is associated with an xref:fenl:entities.adoc[entity], allowing
----

Here we've used the `xref:fenl:catalog.adoc#count[count()]` aggregation to divide the number of purchases up to each point in time by the number of pageviews up to the same point in time.
The result is a timestream describing how each user's purchase-per-pageview changes over time.
The result is a timeline describing how each user's purchase-per-pageview changes over time.
Since both the `Purchase` and `Pageview` tables have the same entity, we can easily combine them.

=== Event-based windowing
Expand All @@ -80,7 +80,7 @@ By default, aggregations are applied from the beginning of time, but here we've

=== Pipelined operations

Pipe syntax allows multiple operations to be chained together. Write your operations in the same order you think about them. It's timestreams all the way down, making it easy to aggregate the results of aggregations.
Pipe syntax allows multiple operations to be chained together. Write your operations in the same order you think about them. It's timelines all the way down, making it easy to aggregate the results of aggregations.

[source,Fenl]
----
Expand All @@ -107,7 +107,7 @@ Pivot from events to time-series. Unlike grouped aggregates, xref:fenl:catalog.a

=== Continuous expressions

Observe the value of aggregations at arbitrary points in time. Timestreams are either “xref:fenl:continuity.adoc#discrete-expressions[discrete]” (instantaneous values or events) or “xref:fenl:continuity.adoc#continuous-expressions[continuous]” (values produced by a stateful aggregations). Continuous timestreams let you combine aggregates computed from different event sources.
Observe the value of aggregations at arbitrary points in time. Timelines are either “xref:fenl:continuity.adoc#discrete-expressions[discrete]” (instantaneous values or events) or “xref:fenl:continuity.adoc#continuous-expressions[continuous]” (values produced by a stateful aggregations). Continuous timelines let you combine aggregates computed from different event sources.

[source,Fenl]
----
Expand Down Expand Up @@ -135,7 +135,7 @@ let purchases_yesterday =
in { purchases_in_last_day: purchases_now - purchases_yesterday }
----

In this example we take the timestream produced by `purchases_now` and move it forward in time by one day using the `xref:fenl:catalog.adoc#shift-by[shift_by()]` function.
In this example we take the timeline produced by `purchases_now` and move it forward in time by one day using the `xref:fenl:catalog.adoc#shift-by[shift_by()]` function.
We then subtract the shifted value from the original, unshifted value

=== Simple, composable syntax
Expand Down Expand Up @@ -167,11 +167,11 @@ in {hourly_big_purchases}

A given query can be computed in different ways.

=== Configuring how timestreams are converted into tables
=== Configuring how timelines are converted into tables

You can either return a table describing each change in the timestream, or a table describing the "final" value of the timestream.
You can either return a table describing each change in the timeline, or a table describing the "final" value of the timeline.

Every query produces a timestream which may be returned in two different ways -- the final results (at a specific time) or all historic results.
Every query produces a timeline which may be returned in two different ways -- the final results (at a specific time) or all historic results.
The "result behavior" configures which results are produced.
Queries for historic results return the full history of how the values changed over time for each entity.
Queries for final results return the latest result for each entity at the specified time (default is after all events have been processed).
Expand Down
2 changes: 1 addition & 1 deletion docs-src/modules/getting-started/examples/unique-code.fenl
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ let hourly_big_purchases = Purchase
# Aggregate anything
| when(hourly())

# Shift timestreams relative to each other
# Shift timelines relative to each other
let purchases_now = count(Purchase)
let purchases_yesterday =
purchases_now | shift_by(days(1))
Expand Down
16 changes: 8 additions & 8 deletions docs-src/modules/getting-started/pages/hello-world-cli.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ You should see output similar to the following:

Kaskada stores data in _tables_. Tables consist of multiple rows, and
each row is a value of the same type.
When querying Kaskada, the contents of a table are interpreted as a xref:fenl:continuity.adoc[discrete timestream]: the value associated with each event corresponds to a value in the timestream.
When querying Kaskada, the contents of a table are interpreted as a xref:fenl:continuity.adoc[discrete timeline]: the value associated with each event corresponds to a value in the timeline.

=== Creating a Table

Expand Down Expand Up @@ -264,7 +264,7 @@ _time,_subsort,_key_hash,_key,id,purchase_time,customer_id,vendor_id,amount,subs
=== Complex Examples with Fenl functions

In this example, we build a pipeline of functions using the `|` character.
We begin with the timestream produced by the table `Purchase`, then filter it to the set of times where the purchase's customer is `"patrick"` using the `xref:fenl:catalog.adoc#when[when()]` function.
We begin with the timeline produced by the table `Purchase`, then filter it to the set of times where the purchase's customer is `"patrick"` using the `xref:fenl:catalog.adoc#when[when()]` function.

Kaskada's query language provides a rich set of xref:fenl:catalog.adoc[operations] for reasoning about time.
Here's a more sophisticated example that touches on many of the unique features of Kaskada queries:
Expand All @@ -281,15 +281,15 @@ include::partial$cli-unique.adoc[]
A given query can be computed in different ways.
You can configure how a query is executed by providing arguments to the CLI command.

==== Changing how the result timestream is output
==== Changing how the result timeline is output

When you make a query, the resulting timestream is interpreted in one of two ways: as a history or as a snapshot.
When you make a query, the resulting timeline is interpreted in one of two ways: as a history or as a snapshot.

* A timestream *History* generates a value each time there is a change in the value for the entity, and each row is associated with a different entity and point in time.
* A timestream *Snapshot* generates a value for each entity at the same point in time; each row is associated with a different entity, but all rows are associated with the same time.
* A timeline *History* generates a value each time there is a change in the value for the entity, and each row is associated with a different entity and point in time.
* A timeline *Snapshot* generates a value for each entity at the same point in time; each row is associated with a different entity, but all rows are associated with the same time.

By default, timestreams are output as histories.
You can output a timestream as a snapshot by setting the `--result-behavior` argument to `final-results`.
By default, timelines are output as histories.
You can output a timeline as a snapshot by setting the `--result-behavior` argument to `final-results`.

[source,Fenl]
----
Expand Down
16 changes: 8 additions & 8 deletions docs-src/modules/getting-started/pages/hello-world-jupyter.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ Congratulations, you now have Kaskada locally installed and you can start loadin

Kaskada stores data in _tables_. Tables consist of multiple rows, and
each row is a value of the same type.
When querying Kaskada, the contents of a table are interpreted as a xref:fenl:continuity.adoc[discrete timestream]: the value associated with each event corresponds to a value in the timestream.
When querying Kaskada, the contents of a table are interpreted as a xref:fenl:continuity.adoc[discrete timeline]: the value associated with each event corresponds to a value in the timeline.

=== Creating a Table

Expand Down Expand Up @@ -308,7 +308,7 @@ This makes it easier to see how a single entity changes over time.
include::partial$nb-filter-patrick.adoc[]

In this example, we build a pipeline of functions using the `|` character.
We begin with the timestream produced by the table `Purchase`, then filter it to the set of times where the purchase's customer is `"patrick"` using the `xref:fenl:catalog.adoc#when[when()]` function.
We begin with the timeline produced by the table `Purchase`, then filter it to the set of times where the purchase's customer is `"patrick"` using the `xref:fenl:catalog.adoc#when[when()]` function.

Kaskada's query language provides a rich set of operations for reasoning about time.
Here's a more sophisticated example that touches on many of the unique features of Kaskada queries:
Expand All @@ -324,15 +324,15 @@ include::partial$nb-unique.adoc[]
A given query can be computed in different ways.
You can configure how a query is executed by providing flags to the `%%fenl` block.

==== Changing how the result timestream is output
==== Changing how the result timeline is output

When you make a query, the resulting timestream is interpreted in one of two ways: as a history or as a snapshot.
When you make a query, the resulting timeline is interpreted in one of two ways: as a history or as a snapshot.

* A timestream *History* generates a value each time the timestream changes, and each row is associated with a different entity and point in time.
* A timestream *Snapshot* generates a value for each entity at the same point in time; each row is associated with a different entity, but all rows are associated with the same time.
* A timeline *History* generates a value each time the timeline changes, and each row is associated with a different entity and point in time.
* A timeline *Snapshot* generates a value for each entity at the same point in time; each row is associated with a different entity, but all rows are associated with the same time.

By default, timestreams are output as histories.
You can output a timestream as a snapshot by setting the `--result-behavior` fenlmagic argument to `final-results`.
By default, timelines are output as histories.
You can output a timeline as a snapshot by setting the `--result-behavior` fenlmagic argument to `final-results`.

include::partial$nb-filter-patrick-final.adoc[]

Expand Down
34 changes: 17 additions & 17 deletions docs-src/modules/getting-started/pages/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,17 @@ This document will show you how to quickly get started using Kaskada.
[TIP]
====
Before jumping in to writing queries in Kaskada, it's a good idea to take a minute understanding "how to think with Kaskada".
Kaskada is built on timestreams - a simple, powerful abstraction that may be different than what you're accustomed to.
Kaskada is built on timelines - a simple, powerful abstraction that may be different than what you're accustomed to.
If you'd prefer to jump right in, scroll down to the xref:#quick-starts[] section
====

== Thinking with Kaskada's timestreams
== Thinking with Kaskada's timelines

Kaskada is built on the idea of a _timestream_ - the history of how a value changes over time for a specific entity or group.
Kaskada is built on the idea of a _timeline_ - the history of how a value changes over time for a specific entity or group.

[stream_viz,name=basic-sum]
.Aggregating events as a timestream
.Aggregating events as a timeline
....
[
{
Expand Down Expand Up @@ -47,22 +47,22 @@ Kaskada is built on the idea of a _timestream_ - the history of how a value chan
]
....

timestreams allow you to reason about temporal context, time travel, sequencing, time-series, and more.
Timelines allow you to reason about temporal context, time travel, sequencing, time-series, and more.
They allow simple, composable, declarative queries over events.
Transforming and combining timestreams allows you to intuitively express computations over events.
Transforming and combining timelines allows you to intuitively express computations over events.

****
⭢ Read more about timestreams in xref:overview:what-is-kaskada.adoc[]
⭢ Read more about timelines in xref:overview:what-is-kaskada.adoc[]
****

With Kaskada, it's timestreams all the way down - every operation's inputs and outputs are timestreams.
The timestream is a flexible abstraction that can be used in different ways depending on your needs.
In some cases, you may want to know what the timestream's value is at a specific point in time, in other cases you may want to know how the timestream's value changes over time.
With Kaskada, it's timelines all the way down - every operation's inputs and outputs are timelines.
The timeline is a flexible abstraction that can be used in different ways depending on your needs.
In some cases, you may want to know what the timeline's value is at a specific point in time, in other cases you may want to know how the timeline's value changes over time.

When making a query, you configure how to use the query's output timestream: you can use the timestream as either a _history_ or as a _snapshot_.
When making a query, you configure how to use the query's output timeline: you can use the timeline as either a _history_ or as a _snapshot_.

* A timestream *History* contains a value each time the timestream changes, and each row describes a different entity at a different point in time.
* A timestream *Snapshot* contains a value for each entity at the _same_ point in time; each row is associated with a different entity, but all rows reflect the same point in time.
* A timeline *History* contains a value each time the timeline changes, and each row describes a different entity at a different point in time.
* A timeline *Snapshot* contains a value for each entity at the _same_ point in time; each row is associated with a different entity, but all rows reflect the same point in time.

This output may be written in different ways -- for example, they may be written to a Parquet file or sent as events to a stream.

Expand All @@ -88,7 +88,7 @@ Kaskada can be configured to run as a remote service or as a local process.

== Kaskada's data model

Timestreams begin with xref:developing:tables.adoc[tables].
Timelines begin with xref:developing:tables.adoc[tables].
Tables are how Kaskada stores input events.
Tables consist of multiple events, and each event is a value of the same xref:fenl:data-model.adoc[type].

Expand All @@ -102,10 +102,10 @@ Tables consist of multiple events, and each event is a value of the same xref:fe
| 8:52 | Alice | `{amount: 4}`
|===

When querying Kaskada, the contents of a table are interpreted as a xref:fenl:continuity.adoc[discrete timestream]: the value associated with each event corresponds to a value in the timestream.
When querying Kaskada, the contents of a table are interpreted as a xref:fenl:continuity.adoc[discrete timeline]: the value associated with each event corresponds to a value in the timeline.

[stream_viz,name=purchase-timestream]
.Discrete timestream describing the `Purchase` table
[stream_viz,name=purchase-timeline]
.Discrete timeline describing the `Purchase` table
....
[
{
Expand Down
Loading

0 comments on commit 005ac17

Please sign in to comment.