Jim Cook emailed me a question about the size of Panorama X databases, and I think the answer would be of interest to many of you so I am posting it here. He has a database he is working on that has only one record, but the file size is nearly 38 megabytes.
The reason why this file is so large is because it contains dozens of forms, each of which contains many form objects. If you right click on the file and choose Show Package Contents you can see that the data is only 321 bytes, while forms take up over 33 Mb. Procedures, which also use Apple’s native format (but are mostly text), take up 4 Mb.
Panorama 6 was super optimized for file size, Panorama X is not optimized for file size at all. The data size will be nearly the same between 6 and X, but forms and procedures use Apple’s native format for storing Cocoa objects (naturally), which is not a super space efficient format. But it is very flexible, and designed to work seamlessly with Cocoa. Since we’re now working with essentially unlimited disk size and 64 bit memory, these factors were favored over file size.
In the case of this particular file, it has dozens of forms, each of which has dozens or hundreds of objects.
By the way, the size of these archives on disk does not necessarily correspond with the amount of memory used when the database is open. I think it probably actually uses less memory than this, but I am not 100% sure because under Cocoa it is quite difficult to determine the actual memory usage. In any case, since we have 64 bit memory, and virtual memory to boot, the exact size isn’t that critical.