[fdo-users] postgis and performance
mateusz at loskot.net
Sat Aug 23 01:42:47 EDT 2008
> Hello Mateusz,
> In order to understand the problem, you need to read the entire post. In
> summary, I'm testing the fdo provider with mapguide enterprise 2009 and I've
> problems about the performance for reading large volumes of data (i.e layer
> with aprox 500.000 records). Zac, told me that the problem could be in the
> string matching that the provider need to do for column name in the "select
> *" query.
I've tried but couldn't identified anything like that.
Best would be to profile provider to find out bottlenecks.
> I've a question for you, if I create a spatial index in postgis (gist
> index), the provider uses it?
Yes, it does by applying suggestions described in the PostGIS manual:
See it here:
> Another problems occurs when I've a database with aprox 240 tables. From
> Autocad Map 2009, the operation for reading the schemas is very expensive in
> time. It takes aprox. 5 minutes for reading the schemas in this case, is
I've not used the PostGIS provider with such big number of tables, so
have no experience.
What I would suggest is to try a simple profiling of DescribeSchemaCommand:
1. Open local copy of DescribeSchemaCommand.cpp
2. Go to line 145
3. Wrap it with FDOLOG_* macros as follows:
FdoPtr<FdoFeatureSchemaCollection> logicalSchema =
4. Confirm that FDLOG_DEBUG is uncommented and set
5. Rebuild provider
6. In your filesystem scan for file named XXX_fdopostgis.log, where XXX
is name of process/executable that loaded the provider (MapGuide or Map
7. Scan for marker "DescribeSchemaCommand::+Execute" and you will get
some timing of the DescribeSchemaCommand execution.
At least, it should tell if this command is a bottleneck or not.
Mateusz Loskot, http://mateusz.loskot.net
Charter Member of OSGeo, http://osgeo.org
More information about the fdo-users