pond-ts 0.13.2 → 0.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +193 -1
- package/dist/LiveAggregation.d.ts.map +1 -1
- package/dist/LiveAggregation.js +5 -19
- package/dist/LiveAggregation.js.map +1 -1
- package/dist/LivePartitionedSeries.d.ts.map +1 -1
- package/dist/LivePartitionedSeries.js +21 -17
- package/dist/LivePartitionedSeries.js.map +1 -1
- package/dist/LivePartitionedSyncRolling.d.ts.map +1 -1
- package/dist/LivePartitionedSyncRolling.js +6 -18
- package/dist/LivePartitionedSyncRolling.js.map +1 -1
- package/dist/LiveRollingAggregation.d.ts.map +1 -1
- package/dist/LiveRollingAggregation.js +7 -20
- package/dist/LiveRollingAggregation.js.map +1 -1
- package/dist/LiveSeries.d.ts +29 -1
- package/dist/LiveSeries.d.ts.map +1 -1
- package/dist/LiveSeries.js +50 -37
- package/dist/LiveSeries.js.map +1 -1
- package/dist/reducers/index.d.ts +36 -1
- package/dist/reducers/index.d.ts.map +1 -1
- package/dist/reducers/index.js +67 -0
- package/dist/reducers/index.js.map +1 -1
- package/dist/reducers/samples.d.ts +22 -0
- package/dist/reducers/samples.d.ts.map +1 -0
- package/dist/reducers/samples.js +80 -0
- package/dist/reducers/samples.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveRollingAggregation.d.ts","sourceRoot":"","sources":["../src/LiveRollingAggregation.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,QAAQ,EAIR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAGL,KAAK,OAAO,EAEb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,0BAA0B,EAC1B,YAAY,EACZ,YAAY,EACZ,WAAW,EACZ,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASzD,KAAK,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,KAAK,IAAI,CAAC;AAC/E,KAAK,aAAa,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;AAE1C,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,MAAM,CAAC;AAEnD,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,qBAAa,sBAAsB,CACjC,CAAC,SAAS,YAAY,EACtB,GAAG,SAAS,YAAY,GAAG,YAAY;;IAEvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;gBAwCnB,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAChD,OAAO,GAAE,kBAAuB;
|
|
1
|
+
{"version":3,"file":"LiveRollingAggregation.d.ts","sourceRoot":"","sources":["../src/LiveRollingAggregation.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Event } from './Event.js';
|
|
|
3
3
|
import { Time } from './Time.js';
|
|
4
4
|
import { LiveAggregation } from './LiveAggregation.js';
|
|
5
5
|
import { LiveView, makeDiffView, makeFillView, makeCumulativeView, } from './LiveView.js';
|
|
6
|
-
import {
|
|
6
|
+
import { rollingStateFor } from './reducers/index.js';
|
|
7
7
|
import { bucketIndexFor, boundaryTimestampFor, } from './triggers.js';
|
|
8
8
|
import { parseDuration } from './utils/duration.js';
|
|
9
9
|
export class LiveRollingAggregation {
|
|
@@ -81,25 +81,12 @@ export class LiveRollingAggregation {
|
|
|
81
81
|
required: false,
|
|
82
82
|
})),
|
|
83
83
|
]);
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
// multiple stats from one column:
|
|
91
|
-
// `{ avg: { from: 'cpu', using: 'avg' },
|
|
92
|
-
// sd: { from: 'cpu', using: 'stdev' } }`
|
|
93
|
-
// Custom-function support on live rolling is queued as
|
|
94
|
-
// separate work — would require recomputing over the
|
|
95
|
-
// rolling deque on every emission.
|
|
96
|
-
throw new TypeError(`live rolling reducer for output '${c.output}' must be a built-in name; ` +
|
|
97
|
-
'custom function reducers are not supported on live rolling. ' +
|
|
98
|
-
'Use AggregateOutputMap aliases (`{ alias: { from, using } }`) ' +
|
|
99
|
-
'to compose multiple built-in reducers from one source column.');
|
|
100
|
-
}
|
|
101
|
-
return resolveReducer(c.reducer).rollingState();
|
|
102
|
-
});
|
|
84
|
+
// Build per-column rolling state. Built-in reducers use their
|
|
85
|
+
// dedicated O(1) `add`/`remove`/`snapshot` machinery; custom
|
|
86
|
+
// functions use a generic adapter that re-runs the function over
|
|
87
|
+
// the current window at each `snapshot()` (O(N) per snapshot —
|
|
88
|
+
// see {@link rollingStateFor} for the perf characteristic).
|
|
89
|
+
this.#states = this.#columns.map((c) => rollingStateFor(c.reducer));
|
|
103
90
|
this.#entries = [];
|
|
104
91
|
this.#nextIndex = 0;
|
|
105
92
|
this.#outputEvents = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveRollingAggregation.js","sourceRoot":"","sources":["../src/LiveRollingAggregation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,GAE1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,kBAAkB,GAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"LiveRollingAggregation.js","sourceRoot":"","sources":["../src/LiveRollingAggregation.ts"],"names":[],"mappings":"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"}
|
package/dist/LiveSeries.d.ts
CHANGED
|
@@ -12,7 +12,6 @@ export type OrderingMode = 'strict' | 'drop' | 'reorder';
|
|
|
12
12
|
export type RetentionPolicy = {
|
|
13
13
|
maxEvents?: number;
|
|
14
14
|
maxAge?: DurationInput;
|
|
15
|
-
maxBytes?: number;
|
|
16
15
|
};
|
|
17
16
|
export type LiveSeriesOptions<S extends SeriesSchema> = {
|
|
18
17
|
name: string;
|
|
@@ -70,6 +69,35 @@ export declare class LiveSeries<S extends SeriesSchema> {
|
|
|
70
69
|
* (nulls, raw timestamps) and parses through `parseJsonRow`.
|
|
71
70
|
*/
|
|
72
71
|
pushMany(rows: ReadonlyArray<RowForSchema<S>>): void;
|
|
72
|
+
/**
|
|
73
|
+
* @internal — fast-path ingest for events that have already been
|
|
74
|
+
* validated by another trusted pond pipeline (e.g. a source
|
|
75
|
+
* `LiveSeries` whose events are being routed into a partition
|
|
76
|
+
* sub-series with the same schema). Skips `#validateRow` and the
|
|
77
|
+
* `Event` reconstruction it implies — the caller passes the source
|
|
78
|
+
* Event reference through directly.
|
|
79
|
+
*
|
|
80
|
+
* Behaviour is otherwise identical to {@link pushMany}: the same
|
|
81
|
+
* `#insert` ordering rules apply (so out-of-order/late-event handling
|
|
82
|
+
* still works), and `'event'` / `'batch'` / `'evict'` listeners fire
|
|
83
|
+
* normally.
|
|
84
|
+
*
|
|
85
|
+
* **Trust contract.** The caller guarantees the events conform to
|
|
86
|
+
* this series' schema. Currently used only by
|
|
87
|
+
* `LivePartitionedSeries` — the partition router (`#routeEvent`),
|
|
88
|
+
* the `collect()` replay-prefix and live subscriber, and `apply()`'s
|
|
89
|
+
* historical replay, live forwarding, and auto-spawn factory wiring.
|
|
90
|
+
* Each site has compile-time schema identity between source and
|
|
91
|
+
* target. Not exported in the public type surface; reach for
|
|
92
|
+
* `pushMany` from any other context.
|
|
93
|
+
*
|
|
94
|
+
* Surfaced by the gRPC experiment's V3 profiling pass (PR #14):
|
|
95
|
+
* `Event` constructor + `#validateRow` together account for ~7% of
|
|
96
|
+
* per-event self time at saturation, and the partition router was
|
|
97
|
+
* round-tripping `Event → row → Event` for every routed event. This
|
|
98
|
+
* fast path closes that loop.
|
|
99
|
+
*/
|
|
100
|
+
_pushTrustedEvents(events: ReadonlyArray<EventForSchema<S>>): void;
|
|
73
101
|
/**
|
|
74
102
|
* Example: `live.pushJson(rows)`. Bulk JSON-shape ingest: takes
|
|
75
103
|
* an array of `JsonRowForSchema<S>` (or the object-form variant),
|
package/dist/LiveSeries.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveSeries.d.ts","sourceRoot":"","sources":["../src/LiveSeries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,qBAAqB,EACrB,KAAK,sBAAsB,EAC5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,QAAQ,EAIR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAChC,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"LiveSeries.d.ts","sourceRoot":"","sources":["../src/LiveSeries.ts"],"names":[],"mappings":"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"}
|
package/dist/LiveSeries.js
CHANGED
|
@@ -82,19 +82,6 @@ function assertCellKind(kind, value, name) {
|
|
|
82
82
|
function compareKeys(a, b) {
|
|
83
83
|
return a.begin() !== b.begin() ? a.begin() - b.begin() : a.end() - b.end();
|
|
84
84
|
}
|
|
85
|
-
function estimateEventBytes(event) {
|
|
86
|
-
let bytes = 64; // base overhead (object, key, data refs)
|
|
87
|
-
const data = event.data();
|
|
88
|
-
for (const v of Object.values(data)) {
|
|
89
|
-
if (typeof v === 'number')
|
|
90
|
-
bytes += 8;
|
|
91
|
-
else if (typeof v === 'string')
|
|
92
|
-
bytes += 2 * v.length;
|
|
93
|
-
else if (typeof v === 'boolean')
|
|
94
|
-
bytes += 4;
|
|
95
|
-
}
|
|
96
|
-
return bytes;
|
|
97
|
-
}
|
|
98
85
|
// ── LiveSeries ──────────────────────────────────────────────────
|
|
99
86
|
export class LiveSeries {
|
|
100
87
|
[EMITS_EVICT] = true;
|
|
@@ -104,9 +91,7 @@ export class LiveSeries {
|
|
|
104
91
|
#graceWindowMs;
|
|
105
92
|
#maxEvents;
|
|
106
93
|
#maxAgeMs;
|
|
107
|
-
#maxBytes;
|
|
108
94
|
#events;
|
|
109
|
-
#byteEstimate;
|
|
110
95
|
#onEvent;
|
|
111
96
|
#onBatch;
|
|
112
97
|
#onEvict;
|
|
@@ -123,7 +108,6 @@ export class LiveSeries {
|
|
|
123
108
|
const ret = options.retention ?? {};
|
|
124
109
|
this.#maxEvents = ret.maxEvents ?? Infinity;
|
|
125
110
|
this.#maxAgeMs = ret.maxAge ? parseDuration(ret.maxAge) : Infinity;
|
|
126
|
-
this.#maxBytes = ret.maxBytes ?? Infinity;
|
|
127
111
|
// A late event accepted within grace but older than maxAge would be
|
|
128
112
|
// evicted the moment retention ran — the grace contract would be a
|
|
129
113
|
// lie. Reject the inconsistent config at construction so the caller
|
|
@@ -137,7 +121,6 @@ export class LiveSeries {
|
|
|
137
121
|
`evicted immediately by retention`);
|
|
138
122
|
}
|
|
139
123
|
this.#events = [];
|
|
140
|
-
this.#byteEstimate = 0;
|
|
141
124
|
this.#onEvent = new Set();
|
|
142
125
|
this.#onBatch = new Set();
|
|
143
126
|
this.#onEvict = new Set();
|
|
@@ -189,7 +172,55 @@ export class LiveSeries {
|
|
|
189
172
|
const event = this.#validateRow(row);
|
|
190
173
|
if (this.#insert(event)) {
|
|
191
174
|
added.push(event);
|
|
192
|
-
this.#
|
|
175
|
+
for (const fn of this.#onEvent)
|
|
176
|
+
fn(event);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
if (added.length === 0)
|
|
180
|
+
return;
|
|
181
|
+
const evicted = this.#applyRetention();
|
|
182
|
+
for (const fn of this.#onBatch)
|
|
183
|
+
fn(added);
|
|
184
|
+
if (evicted.length > 0) {
|
|
185
|
+
for (const fn of this.#onEvict)
|
|
186
|
+
fn(evicted);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* @internal — fast-path ingest for events that have already been
|
|
191
|
+
* validated by another trusted pond pipeline (e.g. a source
|
|
192
|
+
* `LiveSeries` whose events are being routed into a partition
|
|
193
|
+
* sub-series with the same schema). Skips `#validateRow` and the
|
|
194
|
+
* `Event` reconstruction it implies — the caller passes the source
|
|
195
|
+
* Event reference through directly.
|
|
196
|
+
*
|
|
197
|
+
* Behaviour is otherwise identical to {@link pushMany}: the same
|
|
198
|
+
* `#insert` ordering rules apply (so out-of-order/late-event handling
|
|
199
|
+
* still works), and `'event'` / `'batch'` / `'evict'` listeners fire
|
|
200
|
+
* normally.
|
|
201
|
+
*
|
|
202
|
+
* **Trust contract.** The caller guarantees the events conform to
|
|
203
|
+
* this series' schema. Currently used only by
|
|
204
|
+
* `LivePartitionedSeries` — the partition router (`#routeEvent`),
|
|
205
|
+
* the `collect()` replay-prefix and live subscriber, and `apply()`'s
|
|
206
|
+
* historical replay, live forwarding, and auto-spawn factory wiring.
|
|
207
|
+
* Each site has compile-time schema identity between source and
|
|
208
|
+
* target. Not exported in the public type surface; reach for
|
|
209
|
+
* `pushMany` from any other context.
|
|
210
|
+
*
|
|
211
|
+
* Surfaced by the gRPC experiment's V3 profiling pass (PR #14):
|
|
212
|
+
* `Event` constructor + `#validateRow` together account for ~7% of
|
|
213
|
+
* per-event self time at saturation, and the partition router was
|
|
214
|
+
* round-tripping `Event → row → Event` for every routed event. This
|
|
215
|
+
* fast path closes that loop.
|
|
216
|
+
*/
|
|
217
|
+
_pushTrustedEvents(events) {
|
|
218
|
+
if (events.length === 0)
|
|
219
|
+
return;
|
|
220
|
+
const added = [];
|
|
221
|
+
for (const event of events) {
|
|
222
|
+
if (this.#insert(event)) {
|
|
223
|
+
added.push(event);
|
|
193
224
|
for (const fn of this.#onEvent)
|
|
194
225
|
fn(event);
|
|
195
226
|
}
|
|
@@ -238,7 +269,6 @@ export class LiveSeries {
|
|
|
238
269
|
clear() {
|
|
239
270
|
const evicted = this.#events;
|
|
240
271
|
this.#events = [];
|
|
241
|
-
this.#byteEstimate = 0;
|
|
242
272
|
if (evicted.length > 0) {
|
|
243
273
|
for (const fn of this.#onEvict)
|
|
244
274
|
fn(evicted);
|
|
@@ -490,26 +520,9 @@ export class LiveSeries {
|
|
|
490
520
|
}
|
|
491
521
|
evictCount = Math.max(evictCount, i);
|
|
492
522
|
}
|
|
493
|
-
if (this.#maxBytes !== Infinity && this.#byteEstimate > this.#maxBytes) {
|
|
494
|
-
let i = evictCount;
|
|
495
|
-
let freed = 0;
|
|
496
|
-
for (let j = 0; j < evictCount; j++) {
|
|
497
|
-
freed += estimateEventBytes(this.#events[j]);
|
|
498
|
-
}
|
|
499
|
-
while (i < this.#events.length &&
|
|
500
|
-
this.#byteEstimate - freed > this.#maxBytes) {
|
|
501
|
-
freed += estimateEventBytes(this.#events[i]);
|
|
502
|
-
i++;
|
|
503
|
-
}
|
|
504
|
-
evictCount = Math.max(evictCount, i);
|
|
505
|
-
}
|
|
506
523
|
if (evictCount === 0)
|
|
507
524
|
return [];
|
|
508
|
-
|
|
509
|
-
for (const e of evicted) {
|
|
510
|
-
this.#byteEstimate -= estimateEventBytes(e);
|
|
511
|
-
}
|
|
512
|
-
return evicted;
|
|
525
|
+
return this.#events.splice(0, evictCount);
|
|
513
526
|
}
|
|
514
527
|
}
|
|
515
528
|
//# sourceMappingURL=LiveSeries.js.map
|
package/dist/LiveSeries.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveSeries.js","sourceRoot":"","sources":["../src/LiveSeries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LiveSeries.js","sourceRoot":"","sources":["../src/LiveSeries.ts"],"names":[],"mappings":"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"}
|
package/dist/reducers/index.d.ts
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
export type { ReducerDef, AggregateBucketState, RollingReducerState, } from './types.js';
|
|
2
|
-
import type { ReducerDef } from './types.js';
|
|
2
|
+
import type { AggregateBucketState, ReducerDef, RollingReducerState } from './types.js';
|
|
3
|
+
import type { AggregateReducer } from '../types.js';
|
|
3
4
|
export { top } from './top.js';
|
|
4
5
|
export declare function resolveReducer(operation: string): ReducerDef;
|
|
6
|
+
/**
|
|
7
|
+
* Build an `AggregateBucketState` for a reducer that may be either a
|
|
8
|
+
* built-in name (string) or a custom function. Built-ins use their
|
|
9
|
+
* dedicated incremental machinery (O(1) `add`, O(1) `snapshot`).
|
|
10
|
+
* Custom functions use a generic adapter that buffers values and
|
|
11
|
+
* runs the function once per `snapshot()` call (O(N) per snapshot).
|
|
12
|
+
*
|
|
13
|
+
* Used by `LiveAggregation` and the batch aggregation path.
|
|
14
|
+
*/
|
|
15
|
+
export declare function bucketStateFor(reducer: AggregateReducer): AggregateBucketState;
|
|
16
|
+
/**
|
|
17
|
+
* Build a `RollingReducerState` for a reducer that may be either a
|
|
18
|
+
* built-in name (string) or a custom function. Built-ins use their
|
|
19
|
+
* dedicated incremental machinery (O(1) `add`/`remove`/`snapshot`).
|
|
20
|
+
*
|
|
21
|
+
* Custom functions use a generic adapter:
|
|
22
|
+
* - `add(idx, v)` stores into a Map keyed by event index.
|
|
23
|
+
* - `remove(idx, v)` deletes by index.
|
|
24
|
+
* - `snapshot()` calls the function with the current window's values
|
|
25
|
+
* in arrival order — O(N) per snapshot.
|
|
26
|
+
*
|
|
27
|
+
* **Performance characteristic.** Per-event cost is O(1) for state
|
|
28
|
+
* maintenance but `snapshot` is O(window size) — the function re-
|
|
29
|
+
* runs over every value in the current window each time the
|
|
30
|
+
* accumulator emits. Compare to built-in reducers which maintain a
|
|
31
|
+
* running result incrementally and snapshot in O(1).
|
|
32
|
+
*
|
|
33
|
+
* For high-throughput live use, prefer built-ins or `'samples'`
|
|
34
|
+
* (which lets you compute the custom logic once at the consumer,
|
|
35
|
+
* after the rolling has already collapsed events to the value list).
|
|
36
|
+
* Custom-function reducers shine on low-rate streams where
|
|
37
|
+
* convenience matters more than per-snapshot cost.
|
|
38
|
+
*/
|
|
39
|
+
export declare function rollingStateFor(reducer: AggregateReducer): RollingReducerState;
|
|
5
40
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reducers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reducers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EACV,mBAAmB,EACpB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAe,MAAM,aAAa,CAAC;AAkBjE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAkB/B,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAQ5D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,gBAAgB,GACxB,oBAAoB,CActB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gBAAgB,GACxB,mBAAmB,CAiBrB"}
|
package/dist/reducers/index.js
CHANGED
|
@@ -11,6 +11,7 @@ import { median } from './median.js';
|
|
|
11
11
|
import { stdev } from './stdev.js';
|
|
12
12
|
import { difference } from './difference.js';
|
|
13
13
|
import { keep } from './keep.js';
|
|
14
|
+
import { samples } from './samples.js';
|
|
14
15
|
import { unique } from './unique.js';
|
|
15
16
|
export { top } from './top.js';
|
|
16
17
|
const registry = {
|
|
@@ -25,6 +26,7 @@ const registry = {
|
|
|
25
26
|
stdev,
|
|
26
27
|
difference,
|
|
27
28
|
keep,
|
|
29
|
+
samples,
|
|
28
30
|
unique,
|
|
29
31
|
};
|
|
30
32
|
export function resolveReducer(operation) {
|
|
@@ -39,4 +41,69 @@ export function resolveReducer(operation) {
|
|
|
39
41
|
return topReducer(n);
|
|
40
42
|
throw new TypeError(`unsupported aggregate reducer: ${operation}`);
|
|
41
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Build an `AggregateBucketState` for a reducer that may be either a
|
|
46
|
+
* built-in name (string) or a custom function. Built-ins use their
|
|
47
|
+
* dedicated incremental machinery (O(1) `add`, O(1) `snapshot`).
|
|
48
|
+
* Custom functions use a generic adapter that buffers values and
|
|
49
|
+
* runs the function once per `snapshot()` call (O(N) per snapshot).
|
|
50
|
+
*
|
|
51
|
+
* Used by `LiveAggregation` and the batch aggregation path.
|
|
52
|
+
*/
|
|
53
|
+
export function bucketStateFor(reducer) {
|
|
54
|
+
if (typeof reducer === 'string') {
|
|
55
|
+
return resolveReducer(reducer).bucketState();
|
|
56
|
+
}
|
|
57
|
+
// Custom-function adapter: buffer values, call fn at snapshot time.
|
|
58
|
+
const items = [];
|
|
59
|
+
return {
|
|
60
|
+
add(v) {
|
|
61
|
+
items.push(v);
|
|
62
|
+
},
|
|
63
|
+
snapshot() {
|
|
64
|
+
return reducer(items);
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Build a `RollingReducerState` for a reducer that may be either a
|
|
70
|
+
* built-in name (string) or a custom function. Built-ins use their
|
|
71
|
+
* dedicated incremental machinery (O(1) `add`/`remove`/`snapshot`).
|
|
72
|
+
*
|
|
73
|
+
* Custom functions use a generic adapter:
|
|
74
|
+
* - `add(idx, v)` stores into a Map keyed by event index.
|
|
75
|
+
* - `remove(idx, v)` deletes by index.
|
|
76
|
+
* - `snapshot()` calls the function with the current window's values
|
|
77
|
+
* in arrival order — O(N) per snapshot.
|
|
78
|
+
*
|
|
79
|
+
* **Performance characteristic.** Per-event cost is O(1) for state
|
|
80
|
+
* maintenance but `snapshot` is O(window size) — the function re-
|
|
81
|
+
* runs over every value in the current window each time the
|
|
82
|
+
* accumulator emits. Compare to built-in reducers which maintain a
|
|
83
|
+
* running result incrementally and snapshot in O(1).
|
|
84
|
+
*
|
|
85
|
+
* For high-throughput live use, prefer built-ins or `'samples'`
|
|
86
|
+
* (which lets you compute the custom logic once at the consumer,
|
|
87
|
+
* after the rolling has already collapsed events to the value list).
|
|
88
|
+
* Custom-function reducers shine on low-rate streams where
|
|
89
|
+
* convenience matters more than per-snapshot cost.
|
|
90
|
+
*/
|
|
91
|
+
export function rollingStateFor(reducer) {
|
|
92
|
+
if (typeof reducer === 'string') {
|
|
93
|
+
return resolveReducer(reducer).rollingState();
|
|
94
|
+
}
|
|
95
|
+
// Custom-function adapter: Map keyed by event index for O(1) remove.
|
|
96
|
+
const items = new Map();
|
|
97
|
+
return {
|
|
98
|
+
add(index, v) {
|
|
99
|
+
items.set(index, v);
|
|
100
|
+
},
|
|
101
|
+
remove(index, _v) {
|
|
102
|
+
items.delete(index);
|
|
103
|
+
},
|
|
104
|
+
snapshot() {
|
|
105
|
+
return reducer(Array.from(items.values()));
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
}
|
|
42
109
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reducers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reducers/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ReducerDef } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* All defined scalar values from a bucket, returned as an array in
|
|
4
|
+
* arrival order (duplicates preserved). Array-kind inputs are
|
|
5
|
+
* flattened one level: a bucket of `[['a','b'], ['b','c']]` produces
|
|
6
|
+
* `['a','b','b','c']`. This makes "give me every value the rolling
|
|
7
|
+
* window has seen" work naturally on either scalar or tag-list
|
|
8
|
+
* columns.
|
|
9
|
+
*
|
|
10
|
+
* Sits beside `unique` (which deduplicates) and `top${N}` (which
|
|
11
|
+
* bounds and frequency-orders). Reach for `samples` when you need
|
|
12
|
+
* the full value list, with duplicates and arrival order preserved
|
|
13
|
+
* — typically because a downstream computation needs the raw
|
|
14
|
+
* values (anomaly density against a baseline, custom thresholding,
|
|
15
|
+
* histogramming).
|
|
16
|
+
*
|
|
17
|
+
* **Use on bounded windows.** Memory is O(window size); per-event
|
|
18
|
+
* cost is O(1) `add` and O(1) `remove` (Map-keyed by event index);
|
|
19
|
+
* `snapshot` is O(N) for the array copy.
|
|
20
|
+
*/
|
|
21
|
+
export declare const samples: ReducerDef;
|
|
22
|
+
//# sourceMappingURL=samples.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"samples.d.ts","sourceRoot":"","sources":["../../src/reducers/samples.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAoB7C;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,OAAO,EAAE,UAwCrB,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
function isScalar(v) {
|
|
2
|
+
return (typeof v === 'number' || typeof v === 'string' || typeof v === 'boolean');
|
|
3
|
+
}
|
|
4
|
+
/** Push each scalar from `v` into `out`; flattens a single level of array. */
|
|
5
|
+
function collectInto(out, v) {
|
|
6
|
+
if (v === undefined)
|
|
7
|
+
return;
|
|
8
|
+
if (isScalar(v)) {
|
|
9
|
+
out.push(v);
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
for (const element of v) {
|
|
13
|
+
if (isScalar(element))
|
|
14
|
+
out.push(element);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* All defined scalar values from a bucket, returned as an array in
|
|
19
|
+
* arrival order (duplicates preserved). Array-kind inputs are
|
|
20
|
+
* flattened one level: a bucket of `[['a','b'], ['b','c']]` produces
|
|
21
|
+
* `['a','b','b','c']`. This makes "give me every value the rolling
|
|
22
|
+
* window has seen" work naturally on either scalar or tag-list
|
|
23
|
+
* columns.
|
|
24
|
+
*
|
|
25
|
+
* Sits beside `unique` (which deduplicates) and `top${N}` (which
|
|
26
|
+
* bounds and frequency-orders). Reach for `samples` when you need
|
|
27
|
+
* the full value list, with duplicates and arrival order preserved
|
|
28
|
+
* — typically because a downstream computation needs the raw
|
|
29
|
+
* values (anomaly density against a baseline, custom thresholding,
|
|
30
|
+
* histogramming).
|
|
31
|
+
*
|
|
32
|
+
* **Use on bounded windows.** Memory is O(window size); per-event
|
|
33
|
+
* cost is O(1) `add` and O(1) `remove` (Map-keyed by event index);
|
|
34
|
+
* `snapshot` is O(N) for the array copy.
|
|
35
|
+
*/
|
|
36
|
+
export const samples = {
|
|
37
|
+
outputKind: 'array',
|
|
38
|
+
reduce(defined) {
|
|
39
|
+
const out = [];
|
|
40
|
+
for (const v of defined)
|
|
41
|
+
collectInto(out, v);
|
|
42
|
+
return out;
|
|
43
|
+
},
|
|
44
|
+
bucketState() {
|
|
45
|
+
const items = [];
|
|
46
|
+
return {
|
|
47
|
+
add(v) {
|
|
48
|
+
collectInto(items, v);
|
|
49
|
+
},
|
|
50
|
+
snapshot() {
|
|
51
|
+
return items.slice();
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
},
|
|
55
|
+
rollingState() {
|
|
56
|
+
// Map keyed by event index so `remove` is O(1). `Array.from(map.values())`
|
|
57
|
+
// returns insertion order, which matches arrival order.
|
|
58
|
+
const items = new Map();
|
|
59
|
+
return {
|
|
60
|
+
add(index, v) {
|
|
61
|
+
const collected = [];
|
|
62
|
+
collectInto(collected, v);
|
|
63
|
+
if (collected.length > 0)
|
|
64
|
+
items.set(index, collected);
|
|
65
|
+
},
|
|
66
|
+
remove(index, _v) {
|
|
67
|
+
items.delete(index);
|
|
68
|
+
},
|
|
69
|
+
snapshot() {
|
|
70
|
+
const out = [];
|
|
71
|
+
for (const arr of items.values()) {
|
|
72
|
+
for (const v of arr)
|
|
73
|
+
out.push(v);
|
|
74
|
+
}
|
|
75
|
+
return out;
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=samples.js.map
|