For what it is worth, I frequently use several hundred MB shapefile datasets, usually of forest inventory. The speed difference between ESRI products and QGIS is quite apparent here, whether on spatial selections, table selections, or whatever. I frequently turn off rendering while I play in the table, but it is still slow compared to doing the same operations in PostGIS or in Arc.<div>
<br></div><div>I'm happy to play with sample code fragments in python to run test cases on my datasets, if that would help. I can work from shapefiles or PostGIS, as needed.</div><div><br></div><div>If we need to build a test dataset to work with, then I can build something we could release to the project.</div>
<div><br></div><div>This is a significant factor in how I use QGis, mainly driven by relatively big data.</div><div><br></div><div>Cheers,</div><div>Angus Carr.</div><div><br><div class="gmail_quote">On Thu, Mar 28, 2013 at 6:47 AM, HAUBOURG <span dir="ltr"><<a href="mailto:regis.haubourg@eau-adour-garonne.fr" target="_blank">regis.haubourg@eau-adour-garonne.fr</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I filed a ticket for memory and reference purpose. <a href="http://hub.qgis.org/issues/7463" target="_blank">http://hub.qgis.org/issues/7463</a><br>
<br>
Cheers<br>
<div class="im">régis<br>
<br>
-----Message d'origine-----<br>
De : Matthias Kuhn [mailto:<a href="mailto:matthias.kuhn@gmx.ch">matthias.kuhn@gmx.ch</a>]<br>
</div>Envoyé : jeudi 28 mars 2013 10:01<br>
<div><div class="h5">À : HAUBOURG<br>
Cc : '<a href="mailto:qgis-developer@lists.osgeo.org">qgis-developer@lists.osgeo.org</a>'<br>
Objet : Re: [Qgis-developer] Performance for selection on attribute table<br>
<br>
On Don 28 Mär 2013 09:49:17 CET, HAUBOURG wrote:<br>
> Thanks guys,<br>
> I also raised on list issues with redrawing triggered by selection (but also bad performance for "identify" highlights for big objects). On that point, preventing extra refreshes (<a href="http://hub.qgis.org/issues/2596" target="_blank">http://hub.qgis.org/issues/2596</a>) and heading towards multithreading to let renderer use another process can help.<br>
> Anyway, we have an issue here, since datasets keep growing, and user won't always know about filter in layer properties. I didn't test if "select at id" option did change something. I didn't catch either what you describe with 'plugable' indexes. What could it be exactly?<br>
<br>
Plugable indexes mean, you'll be able to have a cache on a layer (or maybe a data provider) later on, which can have several indexes on its features (even written in python hopefully) which can then answer a certain QgsFeatureRequest (if they're able to)<br>
<br>
E.g. you can have an index on certain attributes and in case the index knows, that is has e.g. all the features with column1 = 5 ready (due to an earlier request), the backend will not be bothered. Or a spatial index could be integrated to speed up rendering (e.g. when panning around and drawing similar regions all the time).<br>
<br>
Right now, the only index available is for feature ids.<br>
<br>
Regards<br>
<br>
><br>
> régis<br>
><br>
> -----Message d'origine-----<br>
> De : Matthias Kuhn [mailto:<a href="mailto:matthias.kuhn@gmx.ch">matthias.kuhn@gmx.ch</a>] Envoyé : jeudi 28<br>
> mars 2013 07:44 À : HAUBOURG Cc : <a href="mailto:qgis-developer@lists.osgeo.org">qgis-developer@lists.osgeo.org</a> Objet<br>
> : Re: [Qgis-developer] Performance for selection on attribute table<br>
><br>
> Hi Régis<br>
><br>
> The attribute table is not using any providers indexes. And when thinking about it a couple of questions arise like stable syntax across providers (different providers need different SQL which either needs to be translated from QgsExpressions or written by the user). Then a request needs to also include not-yet-committed features. These need to be evaluated as well. In case the user directly specifies sql for the provider and not a QgsExpression this will pose some more problems.<br>
><br>
> A new caching mechanism has been merged recently, but I don't expect any performance improvements yet. The new caching mechanism nevertheless supports plugable indexes, which I hope can help at least in part of these situations as soon as they are implemented.<br>
><br>
> The only possibility to make use of the data providers indexes that I know of right now (apart from making views et al) is to provide a subset string in the layer properties, but that's most likely not what you want.<br>
><br>
> Also, as mentioned by Denis Rouzaud, the rendering that takes when the selection changes place takes its bit of the performance. I remember, that somebody began a list of such unnecessarily triggered renders, but can't find it right now. I hope that in this area some work will be done as well.<br>
><br>
> Kind regards,<br>
> Matthias<br>
><br>
> On Mit 27 Mär 2013 20:57:07 CET, Régis Haubourg wrote:<br>
>> Hi dev's, I was notified some performance matters when dealing with<br>
>> selections in attribute tables, by some users swithcing from arcgis to QGIS.<br>
>> Indexes of datasource seem to be ignored for SQL selection and search.<br>
>> This leads to very slow selections when dealing with large datasets.<br>
>> Anyone confirms? Is it really related to indexes or another bottleneck?<br>
>> Is there any possible improvement ? Are providers working on<br>
>> selections or is that all dealing with cache?<br>
>><br>
>> Thanks for your feedback ,<br>
>> Régis<br>
>><br>
>><br>
>><br>
>> --<br>
>> View this message in context:<br>
>> <a href="http://osgeo-org.1560.n6.nabble.com/Performance-for-selection-on-attr" target="_blank">http://osgeo-org.1560.n6.nabble.com/Performance-for-selection-on-attr</a><br>
</div></div>>> i bute-table-tp5043381.html Sent from the Quantum GIS - Developer<br>
<div class="HOEnZb"><div class="h5">>> mailing list archive at Nabble.com.<br>
>> _______________________________________________<br>
>> Qgis-developer mailing list<br>
>> <a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
>> <a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
><br>
><br>
><br>
<br>
<br>
<br>
_______________________________________________<br>
Qgis-developer mailing list<br>
<a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
</div></div></blockquote></div><br></div>