Pyspark, Mongodb, AWS, Machine Learning.
along very well together. You can store your data in S3, then read and process it without actually storing it in your nodes and after processing it through spark you can write it back to S3 and terminate EMR. After EMR instance is ready you can go to your terminal and ssh into it by using your pem