Implementation of Read Operations
TODO: File a subtask under HDDS-9862 and complete this page or section.
Reading Metadata
Reading Data
Trace every part of a read request from beginning to end. This includes:
- Client getting encryption keys
- Client calling OM to create key
- OM validating client's Kerberos principal
- OM checking permissions (Ranger or Native ACLs)
- OM generating block tokens from the shared secret previously retrieved from SCM
- OM getting block locations from SCM or from its cache.
- OM returning container, blocks, pipeline, block tokens
- Client sending block tokens and Datanode validating based on the shared secret from SCM
- Client sending read chunk requests to Datanode to fetch the data.
- For replication:
- Include topology choices of which Datanodes to use
- Include failover handling
- For EC, link to the EC feature page.
- For replication:
- Client validating checksums