[ 
https://issues.apache.org/jira/browse/FLINK-9061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16667474#comment-16667474
 ] 

Jonathan Miles commented on FLINK-9061:
---------------------------------------

Agreed it should be harder, but we were able to trigger throttling while 
testing 1.4.2 around mid-August, after that announcement was made. We had 
around 10 jobs checkpointing to the same bucket and a different prefix for each 
job, something like 400 Task Managers. I know there was some work done to 
reduce the number of S3 requests made and combined with this "prefix entropy" 
change we haven't seen it happen again.

It might be useful to add [your 
link|https://aws.amazon.com/about-aws/whats-new/2018/07/amazon-s3-announces-increased-request-rate-performance/]
 to the documentation.

> Add entropy to s3 path for better scalability
> ---------------------------------------------
>
>                 Key: FLINK-9061
>                 URL: https://issues.apache.org/jira/browse/FLINK-9061
>             Project: Flink
>          Issue Type: Improvement
>          Components: FileSystem, State Backends, Checkpointing
>    Affects Versions: 1.4.2, 1.5.0
>            Reporter: Jamie Grier
>            Assignee: Indrajit Roychoudhury
>            Priority: Critical
>              Labels: pull-request-available
>             Fix For: 1.6.2, 1.7.0
>
>
> I think we need to modify the way we write checkpoints to S3 for high-scale 
> jobs (those with many total tasks).  The issue is that we are writing all the 
> checkpoint data under a common key prefix.  This is the worst case scenario 
> for S3 performance since the key is used as a partition key.
>  
> In the worst case checkpoints fail with a 500 status code coming back from S3 
> and an internal error type of TooBusyException.
>  
> One possible solution would be to add a hook in the Flink filesystem code 
> that allows me to "rewrite" paths.  For example say I have the checkpoint 
> directory set to:
>  
> s3://bucket/flink/checkpoints
>  
> I would hook that and rewrite that path to:
>  
> s3://bucket/[HASH]/flink/checkpoints, where HASH is the hash of the original 
> path
>  
> This would distribute the checkpoint write load around the S3 cluster evenly.
>  
> For reference: 
> https://aws.amazon.com/premiumsupport/knowledge-center/s3-bucket-performance-improve/
>  
> Any other people hit this issue?  Any other ideas for solutions?  This is a 
> pretty serious problem for people trying to checkpoint to S3.
>  
> -Jamie
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to