From: | Carlos Adean <carlosadean(at)linea(dot)gov(dot)br> |
---|---|
To: | Cleiton Luiz Domazak <cleitondomazak(at)gmail(dot)com> |
Cc: | pgsql-pt-geral(at)lists(dot)postgresql(dot)org |
Subject: | Re: Quota por usuário no postgreSQL |
Date: | 2018-10-01 14:41:51 |
Message-ID: | 1235831060.5676.1538404911316.JavaMail.root@linea.gov.br |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-pt-geral |
----- Mensagem original -----
> De: "Cleiton Luiz Domazak" <cleitondomazak(at)gmail(dot)com>
> Para: carlosadean(at)linea(dot)gov(dot)br
> Cc: pgsql-pt-geral(at)lists(dot)postgresql(dot)org
> Enviadas: Sexta-feira, 28 de setembro de 2018 19:09:31
> Assunto: Re: Quota por usuário no postgreSQL
> On Fri, Sep 28, 2018 at 9:01 PM Carlos Adean <
> carlosadean(at)linea(dot)gov(dot)br > wrote:
> > Olá,
>
> > Algum expert sabe dizer se é possível implementar quotas por
> > usuário
> > no postgreSQL?
>
> Você poderia explicar melhor o que você quer dizer com quotas por
> usuário? Pois se for como quotas de recursos como no SQL Server com
> as Resources Pool, realmente seria uma grande funcionalidade para o
> PostgreSQL, mas infelizmente nativamente não há, mas se alguém da
> lista tiver alguma solução conhecida de terceiros...
Temos algumas tabelas read-only que chamamos de catálogos primários, estas possuem muitos dados. Atualmente os usuários executam queries nessas tabelas e os resultados são exportados para arquivos.
Quando um usuário quer gerar plots dos resultados das suas consultas ele precisa abrir o arquivo e carregar os dados, a idéia é permitir que eles criem tabelas (views se também for possível) num espaço próprio do usuário no banco de dados - que pode ser um schema - daí a necessidade de implementar quota de maneira a limitar o volume de dados que cada um pode escrever.
> > Estamos planejando o desenvolvendo de um ambiente onde os usuários
> > terão permissão de somente leitura a um banco de dados e a partir
> > desse executar queries e gravar os resultados em seu próprio
> > espaço,
> > ou em suas próprias tabelas.
>
> Com as infos que você passou não ficou claro como que você irá
> distribuir esses dados, mas estou assumindo que tudo está no mesmo
> cluster e na mesma database, então você poderia usar essa
> segmentação dos dados via schemas[1], assim você poderia controlar o
> acesso read only no schema de origem, e cada usuário iria possuir
> seu proprio schema, isso se você desejar manter tudo na mesma
> database, senão você poderia segmentar por database também.
> > Como não achei uma solução oficial de como implementar essas quotas
> > por usuário então achei melhor perguntar.
>
> 1- https://www.postgresql.org/docs/current/static/ddl-schemas.html
Sim. É exatamente isso você já pegou a ideia.
Tudo está no mesmo banco de dados e no mesmo cluster (cluster que você quer dizer aqui é a definição de instância para o postgreSQL?)...se for a melhor opção então usar um schema para cada usuário e manter os dados dos catálogos primários read-only, como já é hoje. No entanto, não achei meios de limitar o volume de dados que um usuário pode gravar no banco.
--
Carlos Adean
IT Team
linea.gov.br
skype: carlosadean
From | Date | Subject | |
---|---|---|---|
Next Message | Carlos Adean | 2018-10-01 14:43:05 | Re: Quota por usuário no postgreSQL |
Previous Message | Fabrízio de Royes Mello | 2018-09-28 23:36:51 | Re: Quota por usuário no postgreSQL |