Re: Allowing users to create objects in version controlled schema
От | Bo Victor Thomsen |
---|---|
Тема | Re: Allowing users to create objects in version controlled schema |
Дата | |
Msg-id | 3b83b029-30c6-a0cc-2993-81910c1ee62b@gmail.com обсуждение исходный текст |
Ответ на | Re: Allowing users to create objects in version controlled schema (Erik Wienhold <ewie@ewie.name>) |
Ответы |
Re: Allowing users to create objects in version controlled schema
(Dan Smith <j.daniel.smith1@gmail.com>)
Re: Allowing users to create objects in version controlled schema (Erik Wienhold <ewie@ewie.name>) |
Список | pgsql-admin |
Eric - I am both (PostgreSQL) database and QGIS developer and occasionally a DB admin. From that point of view: There is a ton of use cases, where having a private schema for each QGIS user makes sense. For example, GIS analysis will often create datasets with limited lifetime, i.e being part of a process. These datasets has to be stored somewhere. If it's not in a private schema, you'll have them splattered out over your entire filesystems in different file-based GIS formats, including some on the users local hard drive. Further, having even temporary data stored in your database gives the user opportunity to off-load some heavy-duty GIS analysis to the database using the PostGIS extension. Think of your database as a "file system", a "scratch pad". This kind of work is fundamentally different from a traditional 3-tier setup where your normal user probably is not even aware of the underlying data structure. And structure changes can be "hidden" in the business logic layer. > All schema definitions tables/views/etc are versioned using git in a structured > repository of flat sql files. It works well. Table defs etc get code reviewed > and deployed by more DB-minded engineers, This is a good idea. When some kind of analysis workflow is worked out / stabilised , the resulting tables/views etc. can be quality-checked and transferred to the "proper" database. You could establish a separate database (including -server ?) and let QGIS users access the central database using Foreign Data Wrappers. Med venlig hilsen / Best regards Bo Victor Thomsen Den 08-11-2022 kl. 03:29 skrev Erik Wienhold: >> On 08/11/2022 02:19 CET Wells Oliver <wells.oliver@gmail.com> wrote: >> >> Feels like more of a process question and less of a technical postgres >> question. > You're right. But I'm wondering what's possible on the technical front. > >> In our world, each DB user has their own schema they have full access to, and >> can grant privileges as required. > Right, the standard approach with search_path = "$user". > >> All schema definitions tables/views/etc are versioned using git in a structured >> repository of flat sql files. It works well. Table defs etc get code reviewed >> and deployed by more DB-minded engineers, > That's what I meant with version controlled migrations. And I actually don't > want users to bypass that process to create and reference their own database > structures when those structures should rather be part of the common application > schema. > >> and people are cognizant of writing optimized SQL. > That's where I have my doubts when it comes to inexperienced "devs" and no > guiding code reviews. > > -- > Erik > >
В списке pgsql-admin по дате отправления:
Предыдущее
От: Erik WienholdДата:
Сообщение: Re: Allowing users to create objects in version controlled schema
Следующее
От: Dan SmithДата:
Сообщение: Re: Allowing users to create objects in version controlled schema