Updated 8/8/2005:
Please note the information below is outdated and I would never recommend mapping messages of this size inside Biztalk 2004. Biztalk 2006 will have support for larger messages by breaking up the message into chunks. More information on large message support can be found on the Performance Blog.

Original Post:

Ok, I hear it all the time: “Can BizTalk handle large files?”

But, really the question should be: “How large of a file do you want BizTalk to process?”

Large is a subjective term. For the purposes of this post, large is a 150 MB XML Document. I see lots of blogs with negative posts on big messages in BizTalk 2004. My experiences have been quite the opposite. But, I’ll let you make the determination yourself. Here are my test results.

My Test Computer: P4 2.4 GHz with 1.25 GB Ram.

CRITICAL: Working with large files such as this will consume a HUGE amount of system resources. My CPU was maxed at 100% and RAM utilization was extensive.A better approach is to break the large file down, but that is a subject for another post coming soon…

Sample File Size: 180 MB

Schema Nodes: Around 400

All Mapping on Send Port, map size is around 1.2 MB

Test1: Straight line mapping to itself

Run Time: 7 minutes 13 seconds

Test2: Straight line mapping to itself

Functoids: Around 80 String Manipulation

Run Time: 8 minutes 26 seconds

Test3: Straight line mapping to itself

Functoids (over 250):

– Around 80 String Manipulation

– Around 50 Logical

– Around 50 Value Mapping

– Around 80 Scripting with calls to an external assembly

Run Time: 9 minutes 42 seconds

Take Away: I was surprised and impressed with the processing time of large files inside BizTalk. But, I’ll let you make the final determination…