Note: do not forget that mongodb has a limit to the document size, i think it is 16mb, but you'll need to check the documentation
The entire point of mongodb is to store your data denormalized, and to avoid 'joins', but if your data is entirely separate, it should still be stored in separate collections.
On our site, we have a few different collections, and one of them is linked via reference. It depends which driver you are using if the driver will resolve the references for you or not.
The other thing to consider is how you will be updating the data.
MongoDB mmap's the entire collection in to memory, and allows your OS to determine which parts should be paged out to disk, and which parts of the data should be stored in memory. There shouldn't be much difference in performance between 1 large table and 2 medium sized tables if the size of the entire dataset is the same. A consideration here is indexes, if you combine the data into one collection, and an index can cover it all, you may be able to lookup the data more quickly.
So, you could have a collection with each of your hotels, containing a property called 'customers' which is an array or hashes with the details of each customer, and you can push and pull items off of that array (or you can make it a hash on a unique customer identifier for easier access). Don't forget about the 16mb limit though.
It might be easier to answer your question if I had more context and details about what it is you are trying to store, and what kind of queries you need to run against the data
I had issues with c5 instances hanging. It was running a very light web workload (no mongoDB) and I used to SSH to it for maintenance and it used to hang in 1-2 days where it was not accepting connections on 443 or SSH connections. I had to reboot it from AWS console and could see some disk issue in logs and also posted on AWS forum but no response. Also see below
https://www.reddit.com/r/aws/comments/7whfhn/new_nitro_based_m5c5_instances_seem_unstable/
Would recommend that you try m4 instances.
Best Answer
As with most database systems, the database files does not shrink when you delete data, the data is just removed/marked as deleted, and the space is reused.
You'll need to run
db.repairDatabase()
to compact space as noted here