Hi Alex,
When you have large message, obviously it will take longer to process the message, hence occupy more CPU cycle and impact biztalk server performance. If you have a large batch size with large messages, the impact to biztalk server performance will be enormous.
The reason there’s more round trip to database when batch size is smaller is as follow: assuming you have 100 messages that need to be processed. If normal batch size is 20 messages, only 5 round trips to the database (MessageBox) is required in order to process all 100 messages. However, if the batch size is only 10 messages, it will need 10 round trips to the database (MessageBox) is required in order to process all 100 messages.
I hope this answers your questions.