Implementation
Overview
TimeBase allows subscribing to events associated with the Source stream modifications (Delete, Truncate, Purge, Change Schema) and Replication uses standard TimeBase APIs to make sure the Target stream matches the Source one. Source stream changes are propagated to the Target stream in real-time by blending messages in the main data stream with the timestamp and symbol that have been changed. Stream Schema Changes are treated slightly differently. Replication has to be stopped and restarted to apply these changes to the Target stream.
- Truncate clears data after a specific timestamp. Truncate can be applied to the entire stream and specific symbols. Enabled by default.
- Purge clears data before a specific timestamp. Purge applies to the entire stream. Disabled by default. Propagating Purges can be turned on using a special TimeBase Shell command.
- Delete clears stream data for specific symbols (applies to all symbols in case omitted) and within a defined time range. Enabled by default.
- Schema Change modifies stream schema. Enabled by default.
In TimeBase Shell you can use set reload <allow/truncate/prohibit>
command to define how the system propagates changes to the Target stream.
prohibit
- set for the target stream to remain unchanged. Replication is stopped in this case.truncate
- set to propagate changes in case the Source stream has been truncated.allow
- set to allow propagate Source stream schema modifications to the Target steam schema.
Supported Operations Map
Operation | TimeBase | Timescale | ClickHouse | Kafka | S3 |
---|---|---|---|---|---|
Delete | + | - | - | - | - |
Truncate | + | - | - | - | - |
Purge (optional) | + | - | - | - | - |
Schema Change | + | + | + | + | + |