GitHub user etiennecarriere opened a pull request:
https://github.com/apache/flink/pull/6149
[FLINK-9560] Add RateLimiting for FileSystem
## Contribution Checklist
- Make sure that the change passes the automated tests, i.e., `mvn clean
verify` passes. You can set up Travis CI to do that following [this
guide](http://flink.apache.org/contribute-code.html#best-practices).
- Once all items of the checklist are addressed, remove the above text
and this checklist, leaving only the filled out template below.
## What is the purpose of the change
* Adding rate limiting on FileSystem . Our first purpose is to limit the
bandwidth used by the writing of Checkpoint to object storage because it has
impact on the global throughput of flink
## Brief change log
Use the existing LimitedConnectionsFileSystem class to add some rate
limiting mechanisms to throttle the bandwidth needs. It use the RateLimiter
class provided by Guava
## Verifying this change
- Unit test for validation of the configuration parsing
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): Yes . Flink-core
now depends on shaded guava18
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: No
- The serializers: No
- The runtime per-record code paths (performance sensitive): No
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: No
- The file system connector: Yes
## Documentation
- Does this pull request introduce a new feature? yes
- If yes, how is the feature documented? Ops documentation updated
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/DataDome/flink FLINK-9560
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/6149.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #6149
----
commit b6e22f3bb15652780efbe6375d6b24f5bba73f4e
Author: Etienne Carriere <etienne.carriere@...>
Date: 2018-06-11T12:14:54Z
[FLINK-9560] Add RateLimiting for FileSystem
Add the capacity to limit the bandwidth used by reading or writing to
Filesystem. It can be useful, for example, for limiting the bandwidth
used to write periodic checkpoint to object storage
----
---