On 04/06/10 14:15, Andrea Aime wrote: > Wondering if you can open a Transaction, set it into the feature > sources, so that all of them operating against the same db will > share a single connection. That would improve the scalability > significantly....
A more difficult problem is orchestrating multiple filter queries so that a single complex feature WFS response can be built from multiple simple FeatureSources, where the FeatureSources interact to reassemble the filter queries into an efficient join. The implementation of app-schema builds on the existing simple FeatureSources, one FeatureSource per table/view. This makes navigating relationships very inefficient, because GeoServer has to take the simple features and find their relationship so they can be reassembled into a complex feature, with one as a nested property of the other. This typically involves making a new filter query for each complex property of each enclosing feature (yes, you read that right, feature, not feature type). The volume of the generated SQL can exceed the volume of the encoded response. This query pattern would be more naturally and efficiently represented in SQL by a JOIN on the fields defining the relationship. So, is it possible to take a complex information model, flatten it into a collection of simple feature types, and reassemble it just in time to make an efficient SQL query appropriate to the complex information model? (And pass the result back through the simple FeatureSources). My gut feeling is no. This is in my view one of the fundamental architectural limitations of GeoServer app-schema. Even thinking about it leads me into wondering whether we end up trying to solve the general object-relational mapping problem. Andrea, have you got an experimental git local repo that does this? ;-) -- Ben Caradoc-Davies <[email protected]> Software Engineering Team Leader CSIRO Earth Science and Resource Engineering Australian Resources Research Centre ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ Geoserver-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geoserver-devel
