Add new comment

26
Mar

Olá!

Obrigado pelo comentário!

Resposta curta: essa era a tecnologia que um dos nossos colaboradores, o Eduardo, conhecia bem.

Resposta mais longa: bom, pra pergunta fazer sentido temos que pensar nas alternativas. Como já usamos o Postgres como banco relacional principal, poderíamos pensar pq não fazer tudo no Postgres, o que nos daria uma vantagem em descomplicar a infra do sistema. Antes da gente fazer uso do Elastic Search, eu até já tinha lido um pouco sobre umas funcionalidades de processamento de linguagem natural do Postgres, mas já fazia um tempo. Então não posso responder com propriedade se um é melhor que outro, mas me lembrava de que o eu tinha visto no Postgres era um tanto mais baixo nível do que as funcionalidades que o Eduardo me mostrou (ainda mais considerando umas coisas bem avançadas considerando até o uso de um dicionário de Português). Em virtude do seu comentário, um colega em nossa listou indicou essa possibilidade também: http://www.postgresql.org/docs/9.1/static/textsearch-dictionaries.html, que eu desconhecia até então.

Ou seja, chega alguém no projeto com uma proposta que funciona, as vezes é melhor fazer ela logo do que gastar o mesmo tempo em buscas e comparações com todas as opções possíveis do universo. Ainda mais que no nosso caso, em nosso grupo não tinhamos ninguém com uma expertise maior nessa área de busca textual para propor outras opções. Fica daí talvez uma lição: nessas situações poderíamos usar melhor o facebook do radar pra ampliar o debate pra comunidade sobre outras opções pra um problema.

Mas pra retomar o ponto inicial... em geral mais vale o "show me the code" do que uma longa discussão com uma revisão completa das ferramentas possíveis para a tarefa.