[Qgis-developer] memory layer performance while adding many features?

Raymond Nijssen r.nijssen at terglobo.nl
Thu Jul 30 00:25:21 PDT 2015


Hi Hugo,

I'm not specifically adding an index. So if you are right, I'm not using 
that.

Regards,
Raymond


On 30-07-15 09:10, Hugo Mercier wrote:
> Hi Raymond,
>
> On 29/07/2015 09:04, Raymond Nijssen wrote:
>> Dear developers, ;)
>>
>> A plugin of mine imports data from a gml file into a memory layer. Works
>> fine for tiny gml files, but takes forever on huge ones. Sounds
>> plausible maybe, but the relation is not linear.
>>
>> So I did did some tests and found out that reading and parsing the gml
>> and creating the features always goes at the same speed of about 400
>> features a second (fps). But when adding these to my memory layer, the
>> process slows down tremendously.
>>
>> I output the fps for every 1000 features and it gave me this graph:
>>
>> http://terglobo.nl/downloads/memory-layer-performance.png
>>
>> At the end of the importing process I'm processing just 3 features per
>> second.
>>
>> Is this expected behaviour? Is a memory layer not meant for something
>> like this? Or is this a bug?
>>
>> In the source code I found that for every feature I add to a memory
>> layer the index is updated. Could that be inefficient?
>
> If I am correct the spatial index is created only if you ask so (by
> passing "index=yes"). Do you have the same results without spatial index ?
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>

-- 
Terglobo
Ampèrestraat 110
5223 CT 's-Hertogenbosch
06-25314983


More information about the Qgis-developer mailing list