[Qgis-user] QGIS Input Form for PostGIS
Neumann, Andreas
a.neumann at carto.net
Wed Aug 9 01:28:11 PDT 2017
Hi Jakob,
Thank you for this additional information. With this at hand, I am
cc'ing Matthias and Nyall - both of them much more knowledgeable about
the internals of QGIS with respect to relations and PostgreSQL.
I know that Matthias is working on improving the performance of
relations and their corresponding relation widgets - but I am not sure
if the work is only in the master branch (QGIS 3.x) or already in 2.18.
@Matthias can you please have a look at this thread and comment?
The table sizes you mention are perhaps larger than average, but QGIS
should be able to handle them. If not, I consider it a bug or an issue.
If you have the opportunity to test the same setup in a QGIS 3 nightly,
I would be interested if the situation improved over QGIS 2.18. You can
get the latest QGIS 2.99 (3x) version by running the OSGEO4W installer
(see http://www.qgis.org/en/site/forusers/alldownloads.html#windows) and
choosing qgis-dev. This can be installed in parallel with 2.18 on a
production system.
If you want something that works NOW with 2.18 - it may be worth testing
the "Data Driven Input Mask" that Bernhard mentioned. This should do all
the "heavy" stuff definitely in the database, and not on the client. See
http://plugins.qgis.org/plugins/DataDrivenInputMask/
I hope that Matthias and/or Nyall can comment more on the issue.
Andreas
On 2017-08-09 09:32, Jakob Miksch wrote:
> Hello,
>
> thanks for the response!
>
> ## What means "big" (how many records are you dealing with)?
>
> These are the sizes (number of records) of the main tables:
>
> - location (points) ~ 450 000
>
> - event ~ 150 000
>
> - occurrence ~ 270 000
>
> ## I know this sounds silly - but are your tables properly indexed (you
>
> don't have to index primary keys, but other columns that are used in
>
> relations need an index)
>
> There are indexes for the foreign keys of the main tables. Also all "controlled vocabulary" columns are indexed.
>
> Th referencing tables are usually smaller than 500 records.
>
> ## What exact QGIS version are you using? 2.18.x - in the about dialogue
>
> you can find this, including the exact github version string
>
> I tried it with:
>
> - Ubuntu 16.04 (in virtual machine on Windows 10): 2.18.11 https://github.com/qgis/QGIS/commit/29548e7
>
> - Windows 10: 2.18.11 https://github.com/qgis/QGIS/commit/29548e7
>
> ## How I set everything up
>
> I created "relations" (location-event and event-occurrence) in the project properties.
>
> In the "fields" tab of the layers properties I also changed respective "edit widgets" to "Relation Reference".
>
> For the controlled vocabulary I changed the "edit widgets" to "Value Relation" (I used the Autoform plugin https://github.com/sourcepole/AutoForm for it and checked it manually)
>
> I kept "Attribute editor layout" with the "Autogenerate" setting.
>
> ## What I want to have:
>
> I want to be able to add new events (and occurrences) to locations.
>
> ## What happens:
>
> When I want to create a new **location**, I have to wait for a few minutes. Then the input window pops up, but I cannot access it because QGIS has frozen.
>
> When I want to create a new **event**, an empty window opens, QGIS freezes and nothing happens for many minutes.
>
> When I want to create a new **occurrence**, the table opens slowly, but I can enter all necessary values and store it to the database.
>
> ## Question:
>
> Can QGIS handle tables of the sizes mentioned above?
>
> Do you have an idea, what I could have done wrong?
>
> I could also provide more information and maybe even a minimal example.
>
> Thanks and best regards,
>
> Jakob
>
> FROM: Qgis-user [mailto:qgis-user-bounces at lists.osgeo.org] ON BEHALF OF Andreas Neumann
> SENT: fredag 4. august 2017 09.39
> TO: qgis-user at lists.osgeo.org
> SUBJECT: Re: [Qgis-user] QGIS Input Form for PostGIS
>
> Hi Jakob,
>
> I don't think there is much background information or documentation available on relations.
>
> The obvious questions to you are:
>
> - What means "big" (how many records are you dealing with)?
>
> - I know this sounds silly - but are your tables properly indexed (you don't have to index primary keys, but other columns that are used in relations need an index)
>
> - What exact QGIS version are you using? 2.18.x - in the about dialogue you can find this, including the exact github version string
>
> - if we can't help you further, it may help to see your create table statements (including all indexes)
>
> Andreas
>
> On 03.08.2017 11:47, Jakob Miksch wrote:
>
>> Hello,
>>
>> I have a (rather big) Postgres/PostGIS database that basically looks like this: https://ibb.co/bK7PKv
>>
>> I want to use QGIS for editing and inserting data.
>>
>> I already found these ressources:
>>
>> https://docs.qgis.org/2.18/en/docs/user_manual/working_with_vector/vector_properties.html#fields-properties
>>
>> https://docs.qgis.org/2.18/en/docs/user_manual/working_with_vector/attribute_table.html#creating-one-or-many-to-many-relations
>>
>> https://docs.qgis.org/2.18/en/docs/training_manual/create_vector_data/forms.html
>>
>> I tried it: I created the relations and built custom forms.
>>
>> However, when I want to insert or edit something. QGIS becomes really slow and crashes finally. But before I describe the problems in more detail I want to read more about it. I find the documentation (linked above) a bit too little.
>>
>> So, my question:
>>
>> Is there any documentation I have missed?
>>
>> Is there any book (chapter) you can recommend?
>>
>> Do you know of any example where QGIS is used for entering data into many related tables in Postgres/PostGIS at once?
>>
>> I am thankful for any hint or resource.
>>
>> Jakob
>>
>> _______________________________________________
>>
>> Qgis-user mailing list
>>
>> Qgis-user at lists.osgeo.org
>>
>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
>>
>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20170809/3295d15d/attachment.html>
More information about the Qgis-user
mailing list