Maximum file size for network analyst layer and/or network analyst class?

04-23-2012 04:19 PM
New Contributor III
I'm creating a very large OD cost matrix using Network Analyst. Weird things are happening, and I'm wondering if I'm hitting some sort of maximum file size limit.  Is there a maximum file size or number of rows allowed in the lines sublayer for an OD cost matrix?

For that matter, is it true that the size of shapefiles is limited to 2Gb because of the limitations on the dBase format?

Finally, I feel like this should be a really simple question, but I can't seem to find the answer anywhere in the documentation.  What type of file is a network analyst layer and/or network analyst class?  Is it some sort of geodatabase, or would the sublayers be subject to the same limitations as the shapefiles?

Tags (2)
0 Kudos
1 Reply
Esri Regular Contributor
Keep in mind that ArcMap is a 32 bit application. The network analysis layers such as OD Cost Matrix layers are in-memory layers. Thus they are limited to the overall 2 GB limit. With ArcGIS 10.0, you can run ArcMAP on a 64 bit OS and then that process can access up to 4 GB RAM. So you can solve larger problems. With the upcoming 10.1 release, the ArcGIS Server is true 64 bit app and can access all the RAM you have and will scale even more.
You can export the OD to any supported format such as dbase or file geodatabase. And in that case the output has to obey the limits of that particular format. Note that file geodatabase do not have limits whereas dbase does.

That said, how big of an OD are you trying to generate? Does the OD solve work and the export fail due to dbase limits?

Note that if you do this in ArcMAP, then it has to create and populate the output lines. That table can grow quite large.
If you cannot break up/chunk the OD into smaller ones to solve/combine results, then you should consider using an ArcObjects app (.net?) to create the OD (and tell it not to populate the output lines) and directly query the ODCostMatrix object to dump out the data you need. To break up an OD such as 1000 by 1000, you can solve two 500 by 1000 and combine the results.

Jay Sandhu
0 Kudos