Python Boto3 - how to check if s3 file is completely written before process start copying to another bucket
You should definitely  use s3 event notification as a trigger to a lambda function that copies your file from Bucket A to Bucket B. The trigger ensures that your copying will start once the file gets uploaded completely. 
Moreover, if you have further operations to perform you can use AWS step functions in which you can define the workflow of your processes , e.g. process B will start after 2 seconds from process A, process C and D will execute in parallel after process B ends it's execution , etc.
How to make sure that Process A has completely written large file (5+ GB) in AWS S3 Bucket A before Process B starts copying file to AWS S3 Bucket B using boto3?