I'm sorry, maybe there is a terminology mix-up here.
There isn't a general "write" operation. You can "insert" a document, you can "update" a document or you can "remove" a document. Those are the available write operation.
You can only "insert" a document once - this is because once a document exists, to change its contents you can update it but you cannot insert it again. If you are using the "save" operation (which is provided by most drivers) that does an insert if the _id of the document does not exist, or if the _id exists then it does an update of that document with the new value. I guess one other possibility is removing the existing document and inserting a new version of it, but since that's not atomic there is no advantage to that and so I'm going to discount that sequence of writes.
Which of these are you doing? And what are the different types of documents that you are considering separating into different collections?
Asya