Facebook and Pentaho Data Integration

Social Networking Data 123

FacebookThe data stored within Twitter and Facebook can provide critical metrics around content. By analyzing trends within user growth and demographics as well as consumption and creation of content, owners and developers are better equipped to improve their business with Facebook and Twitter. Social networking data can already be viewed and analyzed utilizing existing tools such as Facebook Insights or even purchasable third party software packages created specifically for this purpose.

Pentaho Data Integration in its traditional sense is an ETL tool that can be used to extract and extrapolate data from these services and merge or consolidate it with other relative company data. However, it can also be used to automatically push information about a company’s product or service to social network platforms. You see this in action today if you have ever used Facebook and “liked” something a company had to offer. At regular intervals, you will sometimes note unsolicited product offers and advertisements posted to your wall from those companies.

Application Programming Interface

Interacting with these systems is made possible because they provide an API. To keep it simple, a developer can write a program to run on one machine which communicates with the social networking system on another machine. The API can leverage a 3GL such as Java or JavaScript or even simpler, RESTful services. At times, software developers/vendors will write connectors in the native API that can be distributed and used in many software applications. These connectors can offer a quicker and easier approach than writing code alone. It may be possible within the next release of Pentaho Data Integration, that an out of the box Facebook and/or Twitter transformation step is developed – but until then the RESTful APIs provided work just fine with the simple HTTP POST step. The HTTP POST step allows quick access to social graph data as well as the ability to push content to many applications, including Facebook and Twitter.

The Facebook Graph API

Both Facebook and Twitter provide a number of APIs, one worth mentioning is the Facebook Graph API which is a RESTful service that returns a JSON response. Simply stated an HTTP request can initiate a connection with the FB systems and publish / return data that can then be parsed with a programming language or even better yet – without programming using Pentaho Data Integration and its JSON input step. Check out the new Graph API Explorer here: http://developers.facebook.com/blog/post/517/. The Graph API Explorer makes it easy to get started with the Graph API and test the API as you program against it and build your app.

Since the Facebook Graph API provides both data access and publish capabilities across a number of objects (photos, events, statuses, people pages) supported in the Facebook Social graph, you can leverage both automated push and pull capabilities.

If you are interested in seeing this in action, take a look at this tutorial to get you started.

Publishing content to a Facebook Wall Using Pentaho Data Integration

The following is an example of a reference implementation to walk you through the steps needed in order to have Pentaho Data Integration automatically post content to a Facebook Wall.

It is broken down into the following steps:

  1. Create a new Facebook Account
  2. Create a new unique Facebook user name
  3. Create a new Facebook application
  4. Obtain permanent OAUTH access token
  5. Create PDI transformation

Step 1: Create a new Facebook account

Escrever um comentário (0 Comentários)

Banco de Dados Colunar

banco de dados orientado a coluna não é um conceito novo. 

Como funcionaVejamos, como exemplo, a tabela abaixo:

Pois bem, em um banco de dados relacional “orientado a linhas”, todos os dados são armazenados em uma linha, após o último elemento desta linha vem o primeiro elemento da linha seguinte:

2152, Eduardo, “R Estela, 222″, SP; 3421, Mariana, “R Gov Pedro, 34″, CE; …

Se estes dados estivessem armazenados em um “orientado a colunas”, teríamos a informação da mesma coluna armazenada em sequencia, com o final de uma coluna seguida do primeiro elemento da coluna seguinte. Parece complicado, mas não é, veja:

2152, 3421, 2156; Eduardo, Mariana, Ricardo; “R Estela, 222″, “R Gov Pedro, 34″, “R Jaguare. 45 ap.61″; SP,…

Claro que todos os bancos de dados tem seus mecanismos para ganhar performance, mas não vamos tratar deste assunto aqui.

Dependendo da forma como o dado é recuperado, o banco de dados “orientado a colunas” é mais eficiente. Veja uma tabela onde um é melhor que outro:

Como podemos ver cada situação exige uma abordagem diferente.

O Caso do Yahoo!

O Yahoo! tem um case interessante de utilização de “column-oriented database”, como nos conta este post da ComputerWorld. Segundo o autor, o Yahoo! tem o datawarehouse mais rápido utilizando a tecnologia de bancos de dados “orientado a colunas”.

São mais de 2 petabytes de dados e, segundo o VP Waqar Hasan, irá crescer várias dezenas até o final de 2009. A empresa utiliza o SybaseIQ.

 

 

Até tu Google?

Claro que o onipresente Google não poderia ficar de fora. Não encontrando nenhuma solução que tivesse uma performance exigida pelos seus clientes, o gigante de buscas construiu seu próprio banco de dados, chamado pelo sugestivo nome de BigTable.

BigTable foi construido utilizando um file system também do Google, o Google File System (GFS). YouTube, Google Earth, Blogger, Orkut, Google Maps etc são usuários deste banco de dados.

BigTable é considerado um DBMS extremamente rápido e, sim, várias características de bancos de dados “orientado a colunas”. Na verdade possui características de bancos de dados tradicionais também (”orientado a linhas”). Foi projetado para ter vários petabytes e ser distribuido através de centenas e milhares de máquinas.

infoblogs.com.br/

Sugestões e-Setorial

MonetDB

http://www.monetdb.org/Home

InfiniDB, engine para o MySQL

http://infinidb.org/

Escrever um comentário (0 Comentários)

Em alta, 'cientista de dados' é profissão de futuro

Mais do que conhecimento em estatística, matemática e TI, profissional reúne a habilidade de encontrar uma agulha no palheiro.

Uma adolescente vai ao supermercado e, ao passar no caixa, recebe um folheto informativo sobre gravidez. Ela ainda não sabe, mas, a partir da listagem de produtos comprados, foi identificada a probabilidade de gestação, confirmada semanas depois. Como chegaram ao resultado? Por meio do somatório de tecnologia, análise e, claro, o trabalho de um... cientista de dados.

Nos últimos meses, a carreira despontou como uma das mais promissoras em tecnologia da informação, especialmente com a explosão do Big Data, termo usado para descrever a grande quantidade de dados que precisa ser analisada para apoiar as tomadas de decisão. é considerada por analistas do mercado a profissão do futuro. A previsão de dobrar o volume de dados a cada dois anos e o salto de Hadoop [projetado para uso intensivo de dados] tem impulsionado a importância desse talento.

“Em meio a uma montanha de dados, o cientista de dados deve localizar padrões e identificar insights, fornecendo subsídios para que empresas identifiquem o melhor caminho para conduzir os negócios e conquistar diferencial competitivo”, explica Pedro Desouza, cientista de dados da EMC, que há 20 anos trabalha no segmento.

É como encontrar uma agulha no palheiro. “Cientista de dados é aquele que, normalmente, tem formação em Ciência da Computação, Matemática e Estatística com conhecimentos profundos nessas áreas. Mais do que isso, ele entende de negócios”, descreve Desouza. É ainda alguém curioso, que gosta de resolver problemas e não tem medo de errar e se comunicar.

Explicar a aplicação dos resultados matemáticos na linguagem dos negócios é vital nessa profissão. “Existem pessoas altamente técnicas que falham em não se preocupar com esse ponto. Aquele que adota essa postura, rapidamente, vai parar no terceiro subsolo do prédio”, brinca. Saber extrair informação de um banco de dados também faz parte da lista de um bom profissional da área.

Cientista de dados é diferente de um estatístico. “Um estatístico não manipula dados. Ele os recebe em um arquivo e não participa do caminho anterior. O cientista tem conhecimento fim a fim, desde a fonte até o produto final”, esclarece.

Escrever um comentário (0 Comentários)

Sentiment Analysis: a nova corrida do ouro da informação digital

Utilizando técnicas cada vez mais aprimoradas, essas tecnologias tentam “perceber” o que a multidão (milhares de pessoas) está pensando sobre um determinando tema ou fato.

Algumas das mais importantes organizações de mídia, como The Washington Post, Yahoo, Time e ABC News, estão investindo em tecnologias que podem resultar na construção de um túnel que levará à mina de ouro na camada profunda do tratamento da informação digital: extração do “sentimento” das multidões. Estes grupos investem em pesquisa tecnológica e apostam que vão descobrir o veio que garantirá a dianteira, e sobrevivência, nessa nova corrida do ouro da informação.

É uma área de exploração imensa, pois a interação de muitos indivíduos através das redes sociais conectadas gera enorme e variada quantidade de dados (texto, áudio, imagens estáticas, vídeo etc). Minerando os dados inseridos nas redes sociais, o “sentimento” das multidões pode ser detectado e torna-se uma das mais ricas fronteiras entre a computação e as ciências sociais.

Utilizando técnicas cada vez mais aprimoradas, essas tecnologias tentam “perceber” o que a multidão (milhares de pessoas) está pensando sobre um determinando tema ou fato.

Com o propósito de “captar o sentimento” no meio da conversação nas redes, sistemas que reconhecem linguagem (textmining) e tecnologias com inteligência artificial vasculham semanticamente os posts inseridos pelos usuários. São os computadores e softwares tentando entender o significado da linguagem humana contida nos bytes.

Para isso, utilizam máquinas computacionais que mastigam dados e mais dados (mining), rodando programas que analisam milhões de palavras contidas em mensagens nas redes sociais. Mas esses sistemas conseguem mesmo extrair “sentimentos” de uma massa de usuários de uma rede social conectada?

Exemplos

Um momento propício para observar essas tecnologias está acontecendo. Com o aquecimento da campanha eleitoral nos EUA, alguns sistemas tentam sinalizar o que a conversação nas redes sociais está dizendo de forma macro sobre os pré-candidatos à presidência. Entre eles estão: o Mentio Machine, do The Washington Post; The Signal, do Yahoo; Campaign Buzz Meter, da Time e rede de TV ABC.

Escrever um comentário (0 Comentários)

Big Data: nova fronteira para inovação e competitividade

O termo Big Data, utilizado para descrever grandes volumes de dados, ganha cada vez mais relevância à medida que a sociedade se depara com um aumento sem precedentes no número de informações geradas a cada dia. De acordo com a consultoria IDC, a quantidade de informação digital chegará a 2,7 zettabytes no mundo em 2012, um aumento de 48% em relação ao ano anterior.

A abordagem tradicional para Big Data se apoia na utilização de funcionalidades analíticas capazes de lidar com esse elevado volume de dados, ajudando as companhias a obter informações preciosas relacionadas à vantagem competitiva, diferenciação no relacionamento com o cliente e atuar no mercado com maior margem de acerto em suas decisões. Mas o desafio não se restringe apenas ao volume, mas na forma com a qual estas organizações se movimentam para lidar também com a variedade de formatos, a velocidade e a volatilidade dos dados.

Atualmente, cerca 15 petabytes de dados são gerados diariamente tanto em dados estruturadosàqueles provenientes de bancos de dados e sistemas de gestão empresarial, por exemplo – e os não estruturados, compostos por vídeos, comentários em redes sociais, conteúdo de blogs e dispositivos móveis. Atuar de forma estratégica em Big Data tem sido rotulado em adotar estratégias que avaliem, especialmente, os dados não estruturados e que estão fora do alcance dos sistemas convencionais de TI.

Para se ter uma ideia da complexidade dos dados não estruturados, imagine que um único segundo de vídeo em alta definição gera duas mil vezes mais bytes que uma página de texto. Desta forma, capturar, manusear e analisar este conteúdo se torna um grande desafio

Para gerenciar esse complexo cenário são necessários bancos de dados de elevada capacidade e um rápido manuseio e tratamento analítico destas informações, em alguns casos, em tempo real. O mercado de capitais e ações, por exemplo, atingiu a marca de mais de um milhão de transações por segundo e requer modelos de aplicações capazes de administrar, em tempo real, a distribuição de cargas de trabalho associadas a sofisticados algoritmos.

Escrever um comentário (0 Comentários)

Mídias sociais devem ser parte da estratégia, diz Gartner

Segundo instituto de pesquisas, companhias ainda não viram o valor desse posicionamento, que tem o poder de transformar negócios e garantir competitividade

Mais do que simplesmente permitir o acesso a sites como Facebook e Twitter ou mapear a marca nesses locais, mídias sociais devem ser parte da estratégia corporativa. “Pesquisas mostram que a adoção de ferramentas sociais no Brasil não estão no topo de prioridade dos CEOs ou CIOs. Isso tem de mudar, o poder dessas tecnologias é enorme para os negócios “, observa Cassio Dreyfuss, vice-presidente do Gartner.

Ele diz que não basta apenas adotar uma estratégia, mas que é preciso ir além e gerenciá-la, desenhando processos nos quais as ferramentas sociais serão protagonistas. "Estamos vendo um movimento interessante que as empresas começam a usar ferramentas sociais em nuvem privada para aprender a lidar e a se familiarizar com esse universo, e, depois, ampliam a presença nesse setor", relata.

De acordo com ele, esse universo ganha aditivo ao integrá-lo com Business Intelligence (BI) e plataformas de colaboração. Ele lembra, no entanto, que TI sempre tem de andar alinhada aos negócios. “TI é instrumento para aumentar competitividade e agregar valor.”

Redes sociais, mobilidade, cloud computing e gestão da informação são considerados pelo Gartner focos de atuação das empresas nos próximos meses, prática que o instituto de pesquisas batizou de Nexus. “Elas vão impactar e transformar os negócios”, sentencia Dreyfuss.

Escrever um comentário (0 Comentários)

Usando o replication master-slave no MySQL

Neste artigo, vou mostrar como criar uma replicação de servidores MySQL. Vale lembrar que replicação não é uma forma de backup, pois caso algo errado no banco de dados principal, o mesmo será clonado nos escravos.

Fiz tudo baseado no CentOS 6.0 e testado entre duas máquinas virtuais. Vamos partir do pressuposto de que o MySQL esteja instalado em ambas as máquinas. Lembre-se, também, de habilitar no firewall a comunicação entre os servidores.

Vamos assumir os seguintes fatos:

  • Master Server: 10.1.100.1;
  • Slave Server: 10.2.200.2;
  • MySQL Data path: /var/lib/mysql;
  • MySQL slave user named slave_user.

Agora, vamos editar no servidor master o arquivo /etc/my.cnf

# [mysqld] section
datadir = /var/lib/mysql
server-id = 1
relay-log = /var/lib/mysql/mysql-relay-bin
relay-log-index = /var/lib/mysql/var/mysql-relay-bin.index
log-error = /var/lib/mysql/mysql.err
master-info-file = /var/lib/mysql/mysql-master.info
relay-log-info-file = /var/lib/mysql/mysql-relay-log.info
log-bin = /var/lib/mysql/mysql-bin

Reinicie o servidor para que as modificações sejam carregadas:

$ sudo service mysqld restart
Escrever um comentário (0 Comentários)