...
The main work in Flink
and Table Store
are as followed
Component | Main Work | |
---|---|---|
MetaService |
| |
Table Store | Catalog |
|
Source and SplitEnumerator |
| |
Sink |
| |
Flink | Timestamp Barrier Mechanism | The detailed and main work is in the above table |
Planner |
| |
JobManager |
|
Constraint
The current FLIP design has two constraints and it may continue to improve in the future
- Multiple jobs are not supported to write to the same table concurrently
- ETL topology does not support cycles
MetaService needs to detect these situations and report errors when ETL jobs are registered.
The Next Step
This is an overall FLIP for data consistency in streaming and batch ETL. Next, we would like to create FLIP for each functional module with detailed design. For example:
- Timestamp Barrier Coordination and Generation
- Timestamp Barrier Checkpoint and Recovery
- Timestamp Barrier Replay Data Implementation
- Timestamp Barrier Alignment and Computation In Operator
- Introduce MetaService module and implement source/sink in Table Store and etc
- Job and Table management in MetaService such as exception handling, data revision and etc
Rejected Alternatives
...