THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Snapshot File Scanner: Read the latest snapshots of tables and emit file changes to downstream Executors.
- The executor maintains files for specific buckets and provides query service.
- The address server collects all addresses of executors and registers the address to the Paimon table file system.
How to Query
Users just need to get the Paimon table from the Catalog (need warehouse Path), and just create a TableQuery object, the TableQuery will do:
- Find the address server from the Paimon table file system.
- Connect the address server to get all executor addresses.
- Connect executors to lookup by key.
Implementation
- Distributed: In the first version, we can launch this service in a separate Flink Job. The topology should just be a DAG.
- RPC: The RPC for Executor and Address server can be GRPC.
- TableQuery client:
- Maintain address for Address Server and Executors. Retry to get a new address if there are some exceptions.
- Maintain connections for Address Server and Executors. Retry to get a new connection if there are some exceptions.
- User LookupLevels class to lookup, which already contains cache, IO, and disk management.
- Provide one key lookup and batch keys lookup.
...