HDDS-9448. Add RpcClient cache for READ_VOLUME and READ_BUCKET.
What changes were proposed in this pull request?
At present, we have found that when writing a large amount of data, there will be many invalid rcp requests, such as READ_VOLUME and READ_BUCKET. Because a cache can be added to reduce these two types of calls.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-9448)
Instead of adding a cache, which can lead to inconsistent reads, we should walk over the client code to see why the additional read volume and bucket calls were added. During the effort to optimize getKeyInfo, we eliminated a lot of the redundant calls.
cc @tanvipenumudy can you please take a look as well?
Instead of adding a cache, which can lead to inconsistent reads, we should walk over the client code to see why the additional read volume and bucket calls were added. During the effort to optimize getKeyInfo, we eliminated a lot of the redundant calls.
Ok there are a lot of getBucket calls in BasicRootedOzoneClientAdapterImpl so is this necessary
Ok there are a lot of getBucket calls in BasicRootedOzoneClientAdapterImpl so is this necessary
@kerneltime I think this question is for you.
... we should walk over the client code to see why the additional read volume and bucket calls were added. ...
For the FileSystem API, there is probably no way to reduce volume and bucket calls since the FileSystem client is unaware of volume and bucket.
Cache (the current change) seems a good idea.
cc @tanvipenumudy