Uma aplicação necessita de saber o gosto do cliente,
encontrar suas preferencia, temos que gerar um cruzamento de dados, utilização
de data mining minerar os dados, etc, etc, etc.
Mas arquitetando uma aplicação, me deparei em uma situação
que irá necessitar minerar os dados e conhecer o gosto do usuário (cliente).
Será que teremos implementar uma data mining? Era um conhecimento que não tinha
ainda. Até em uma das minhas pesquisas encontrei um artigo da revista Mundo J,
que fala sobre essa necessidade e cita as duas frameworks que andei estudando
Mahout e Hadoop. E como conhecimento adquirido, estarei compartilhando com
vocês.
Temos três algoritmos de utilização do Apache Mahout, são
elas:
Filtragem colaborativa: A filtragem é feita de acordo com as decisões do usuário.
Cluster: É a semelhança entre usuário e o próprio produto.
Categorização: Agrupa os dados automaticamente.
A decisão de utiliza-los deve ser avaliada, mediante uma
analise dos requisitos do sistema.
Onde vamos armazenar estes dados coletados
É onde entra o Hadoop, os dados que foram processados, ou dados
com similaridade já calculados, você irá dizer ao Apache Hadoop se irá gerar um
arquivo de dados do sistema ou gravar os dados em um mecanismo de dados
distribuídos.
O próprio Apache Hadoop possui uma memoria de dados, mas a
quantidade de informação deve sim ser pequena, caso contrario deve-se adicionar
dados em sistemas de banco de dados distribuído.
Configuração
Ao criar um projeto Web, devemos fazer um download do Apache
Mahout e Apache Hadoop.
Definirmos um banco de dados, para armazenar os dados
minerados.
Vamos adicionar as bibliotecas do Mahout e Hadoop no
projeto.
E cada caso de uso devemos avisar que nele irá conter uma
coleta de dados.
Conclusão
Dessa forma conseguimos gerar dados com similaridades, obter
as informações dos usuários.
Qualquer dúvida só entrar em contato.
Referencias:

