ThinkGeo.com    |     Documentation    |     Premium Support

SQLite Offline Database Performance

We recently downloaded the offline SQLite database to use with our application. When loading the base map without setting the CurrentExtent property, we get the base map of the world within a few seconds. As soon as we try using the CurrentExtent the load time increases to nearly 2 minutes. We’ve tried several connection string options, but nothing seems to improve the initial load time. Currently we are using a connection string as follows:

“Data Source=” + systemConfig.MapDatabaseFilePath + ";Version=3;Read Only=True;

The database is stored on a network share. Any thoughts to improve the load time?

Hi Joe,

If you don’t set the current extent, where the map render when it open?

Could you please save the extent and set it as the the initialization one and see whether it can make speed up, because I don’t think that’s related with SQL connection string. Maybe when you hadn’t set the current extent, it shows a blank area so in fact it don’t need query the database, then when you zoom to valid map area it connect to database and get the shapes.

And please check the network speed, when you pan or zoom, how long it takes.

Then you can try to open cache for target layer overlay, which can save your time.

At the last, I think if it’s a network share, the first time connect will takes much more time, maybe that’s related with the security validation by your OS, I think you can watch that by some 3rd part utility like Fiddler.

Wish it’s helpful.

Regards,

Don

Don - thanks for the response.

If we don’t set the extent, the world map is displayed in the top left corner of the map control. I believe it is zoom level 1 since it is only a small corner of the map control. As for setting the current extent, that is only done once when we switch to a map already.

When loading with the extent set, our network utilization had between 30-40% usage for the roughly 2 minute period with a spike of just over 50%. The link speed is 100Mbps.

I will check into Fiddler or another utility to see about the network speed. I recall seeing something about a tool that could be used to trim the offline database to only tiles relevant to the area we are working in. Do you think this might help with performance?

Do you know of any other tips or can you point me to examples working with the SQLite offline database provided by ThinkGeo?

Thanks.

Hi Joe,

Please download our product center, you can find the “World Map Kit Extractor” in “Code Samples” tab of “Map Suite World Map Kit SDK”, which can trim the database. If the problem is the SQLite query speed, trim that should be helpful, I think you can also find an utility to test the query speed of that.

And it looks we don’t have a sample on our wiki, so maybe the “World Map Kit SDK Sample” and “World Map Kit Explorer” is helpful.

Regards,

Don