Gravar logs em banco de dados SQL ou NoSQL

594 views
Skip to first unread message

Glauco Junior

unread,
Jan 9, 2015, 7:09:14 AM1/9/15
to python...@googlegroups.com
Pessoal, sei que o grupo é de python mas eu não conheço nenhum grupo de SQL/NoSQL e tenho certeza que várias pessoas aqui do grupo têm mais conhecimento sobre o assunto que eu.
Tenho um sistema WEB (python/web2py/PostgreSQL) onde recebo algumas linhas de log e armazeno (atualmente no postgres mesmo) em uma tabela com a seguinte estrutura:

TABELA PLAYOUTS: id (int) - data_hora (datetime) - player (string) - conteudo (fk tabela conteudos)

Esses logs são enviados periodicamente através de scripts em python que ficam rodando em clientes (são players de mídia digital não interativos, como esses que vemos em shoppings, elevadores e etc.).

Minha dúvida é se fica melhor eu armazenar isso em algum banco NoSQL (MongoDB?) ou manter no PostgreSQL pois a expectativa é que sejam centenas ou milhares de clientes enviando logs durante o dia inteiro e essas inserções podem chegar a centenas por cliente por dia, não sei se o PostgreSQL consegue manter esses registros a longo prazo e etc.

Espero que tenha explicado minha dúvida de forma concisa, mas caso precisem de mais detalhes me avisem que tento elaborar melhor a questão.

Obrigado à todos.

Abs.

John Evan Dizaro

unread,
Jan 9, 2015, 8:37:10 AM1/9/15
to Python Brasil
O Postgres é muito robusto não acredito que você venha a ter algum problema eu deixaria no postgres com limite de tempo programado  por exemplo para apagar a logs com mais de 1 semana (por exemplo)

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
John Evan Dizaro - Desenvolvimento de Sistema Computacionais
Linux, MSWindows
Celular (41) 9243-3240

Andre Fonseca

unread,
Jan 9, 2015, 9:16:37 AM1/9/15
to python...@googlegroups.com
Glauco,

O Postgresql é uma excelente banco de dados e não vejo grandes problemas em usá-lo para guardar o seus logs. 

O maior problema de gravar esse tipo de dados em banco de dados é buscar por eles depois.
----------------------
Andre Fonseca
http://andrefonseca.net

paulo alem

unread,
Jan 9, 2015, 10:08:05 AM1/9/15
to python...@googlegroups.com
A partir do postgresql 9.4 voce tem como guardar dados como jsonb e fazer consultas de maneira eficiente, dá uma olhada
Eu gostava bastante de mongodb até ter alguns problemas serios com ele, recentemente. Já não penso em usa-lo em novos projetos.
O postgresql é muito parrudo, dá pra usar como document store, key value(hbase) e, claro, dados relacionais.
Resumindo: eu não me preocuparia :)

Glauco Junior

unread,
Jan 9, 2015, 11:26:23 AM1/9/15
to python-brasil
Muito obrigado Paulo, Andre e John pelas informações.

Acredito que não terei problemas armazenando os dados no Postgres, vou pesquisar uma forma de remover automaticamente os logs mais antigos como o John sugeriu para manter a tabela o mais "enxuta" possível.

Abs.

Você recebeu essa mensagem porque está inscrito em um tópico no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/python-brasil/Yz3YrhtlJL8/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para python-brasi...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages