A Talend é uma empresa que oferece soluções, integradas em uma única plataforma, para atender as principais necessidades do gerenciamento de dados. Suas soluções são divididas em três tipos, descritos nos tópicos seguintes.
Apenas algumas das soluções que serão apresentadas são open source. Estas serão estudadas para que possamos identificar sua adequação ao ambiente nativo.
Integração de Dados
integração de dados operacionais: na maioria das vezes são endereçados através de implementação de programas customizados, concluídos sob demanda para uma necessidade específica. As aplicações mais comuns são migração / carga de dados e sincronização / replicação de dados.
migração de dados: quando existe uma atualização para uma nova versão de uma base de dados ou aplicação ou quando está sendo feita uma mudança de sistema, os dados precisam ser preservados neste novo sistema. O propósito da migração de dados é transferir os dados existente para o novo ambiente. Estes dados devem ser transformados para o formato adequado do novo sistema, preservado as informações presentes no sistema antigo. Desafios: grande volume de dados, ambientes heterogêneos e consistência.
sincronização de dados: existem muitos casos onde os dados são gerenciados separadamente por várias aplicações ou base de dados, mas é necessário que sejam mantidos consistentes entre estes sistemas. A necessidade pela sincronização de dados por ser permanente (sincronização entre sistemas operacionais) ou temporária, por exemplo, durante uma migaração.
ETL para BI e Data Warehousing: os processos ETL (Extraction, Transformation and Loading) são os componentes mais críticos - e com valor agregado - de uma infraestrutura de BI (Business Intelligence). Enquanto quase invisível para o usuário da plataforma de BI, os processos ETL recuperam dados de todos os sistemas operacionais e pré-processam estes dados para ferramentas de análise e relatórios. Assim, a precisão e a pontualidade de toda a plataforma de BI dependem dos processos ETL.
Soluções
Talend Open Studio
Talend Integration Suite
Talend On Demand
Qualidade de Dados
qualidade de dados no CRM (Customer Relationship Management): um sistema CRM é tão bom quanto as informações nele contidas. Dados de cliente deveriam ser duplicados livremente e prontos para ajudar a contruir melhores relacionamentos. Isto pode permitir futuras oportunidades de up-sell e estar pronto para atingir seu cliente. Estas soluções ajudam na gestão de nomes, endereços, telefones, email e outras informações que fazem o sistema CRM mais efetivo.
qualidade de dados no Data Warehouse: mais bem informado, decisões mais confiáveis podem ser tomadas usando a tecnologia de qualidade de dados adequada durante o processo de desenvolvimento de um data warehouse.
governança de dados: é uma combinação de pessoas, processos e tecnologia que guia informações de alta qualidade e valor. Quando gerenciadas corretamente, informações precisas guiam a eficiência do negócio.
Soluções
Talend Open Profiler
Talend Data Quality
Controle do Gerenciamento de Dados
Uma plataforma unificada para gerenciamento de dados une integração, qualidade, controle e administração de dados através de um único ambiente de desenvolvimento e execução.
Soluções
Talend MDM - Community Edition
Talend MDM - Enterprise Edition
Talend Open Studio - Detalhamento Técnico
Apresentação
Talend Open Studio (TOS) é uma ferramenta open source que oferece funcionalidades ETL, isto é, extração, transformação e carga de dados. O TOS abrange três aplicações (modelador de negócio, design de tarefas / atividades, e gerenciador de metadata) em um ambiente gráfico de desenvolvimento baseado no Eclipse, que é facilmente adequado às necessidades empresariais. Esta ferramenta ainda possibilita a exportação de processos para arquivos executáveis e expostos como WebServices.
Sua instalação é bastante simples, consistindo apenas na extração de um arquivo compactado para uma pasta, onde está o executável para iniciar aplicação. Os testes foram feitos na versão 4.2.0M3, r54685.
A documentação é bastante detalhada e contém vários exemplos. Dois documentos são disponibilizados no site do fornecedor: User Guide e Components – Reference Guide.
Tutorial
Este tutorial visa a apresentação da ferramenta, descrevendo os passos para o desenvolvimento de um exemplo.
Na tela de abertura, o TOS oferece a possibilidade de conectar a diferentes repositórios locais, onde são armazenados os projetos. É nesta tela também que o projeto a ser trabalhado é selecionado ou criado.Uma funcionalidade interessante do TOS é a possibilidade escolha da linguagem com a qual se deseja trabalhar, sendo que as opções disponíveis são Java e Perl.
Nosso exemplo consiste em ler dois arquivos, fazer uma “ligação” entre eles, e criar um arquivo com os dados completos e outro com os dados incompletos de ambos os arquivos. O primeiro arquivo de entrada, file1.csv, armazena o primeiro nome da pessoa e contém o seguinte texto:
1;maria
2;josé
3;
4;pedro
O segundo arquivo de entrada, file2.csv, armazena o segundo nome da pessoa e contém o seguinte texto:
1;JOSÉ
2;MARIA
3;SEM PRIMEIRO NOME
4;PAULO
A “ligação” entre estes dois arquivos será feita a partir do identificador do primeiro campo, números de 1 a 4, sendo que o arquivo de saída deve conter o nome completo das pessoas (dados completos), desde que a pessoa tenha primeiro nome (dados incompletos). Além da “ligação”, será feita também a transformação dos nomes, isto é, o primeiro nome será todo convertido para letras maiúsculas e o segundo nome será convertido para letras minúsculas. Assim os seguintes arquivos deverão ser gerados: arquivo 1 – dadosCompletos.csv
1;MARIA josé
2;JOSÉ maria
4;PEDRO paulo
arquivo 2 – dadosIncompletos.csv
3;sem primeiro nome
Abaixo estão descritos os passos para a construção deste exemplo utilizando a aplicação TOS.
Criação do projeto
selecione o repositório (Local)
selecione a opção “Criar um novo projeto local” em Action
informar o nome do projeto
selecionar a linguaguem Java
abra o projeto criado
Criação do Business Model
crie um model de dados: botão direito em “Business Model”, opção “Criar modelo de negócio”
selecione os componentes para construção do modelo de dados a partir da aba "Paleta"
crie um job: botão direito em “Job Designs”, opção “Create job”TOSmetadata.pngTOSmetadata.png
selecione os seguintes componentes na "Paleta" e faça as configurações:
tFileInputDelimited
aba Component, View, opção Formato do label: primeiroNome
aba Component, View, opção Formato da conexão: primeiroNomeData
aba Component, Basic settings, opção Property Type: opção Built-In e crie o schema do arquivo de entrada
tFileInputDelimited
aba Component, View, opção Formato do label: segundoNome
aba Component, View, opção Formato da conexão: segundoNomeData
aba Component, Basic settings, Property Type: opção Built-In e crie o schema do arquivo de entrada
tMap
clique com o botão direito em no componente primeiroNome, opção Row, Main e leve até o componento tMap. Este relacionamento será classificado com Main
clique com o botão direito em no componente segundoNome, opção Row, Main e leve até o componente tMap. Este relacionamento será classificado com Lookup, já que o componente tMap aceita apenas um relacionamento Main TOSmapEditor.pngTOSmapEditor.png
aba Component, Basic settings, Map Editor abrirá a página para fazer os relacionamentos / transformações
carrege o ID de “primeiroNomeData” para o ID de “segundoNomeData”, preenchendo automaticamente a expressão para “ligação” das tabelas
crie uma variável para fazer a transformação no primeiro nome. Utilização do método Java toUpperCase
crie de uma variável para fazer a transformação no segundo nome. Utilização do método Java toLowerCase
crie de uma variável que fará a verificação se o dado está completo, isto é, se o primeiro nome foi informado
cria a primeira tabela de saída, que conterá os nomes completos. Basta carregar (drag-drop) os dados que se deseja para esta tabela. Foi colocada a expressão para verificar se o nome foi informado
crie a segunda tabela de saída, que conterá os registro não aceito na primeira tabela
aba Component, View, opção Formato do label: dadosCompletos
aba Component, Basic Settings,Property Type: opção Built-In e crie o schema do arquivo de saída para dados completos
com o botão direito em cima de tMap, selecione a opção Row, NomesCompletos, e clique em cima deste componente. Será criada uma seta
tFileOutputDelimited
aba Component, View, opção Formato do label: dadosIncompletos
aba Component, Basic Settings, Property Type: opção Built-In e crie o schema do arquivo de saída para dados incompletos
com o botão direito em cima de tMap, selecione a opção Row, NomesIncompletos, e clique em cima deste componente. Será criada uma seta
Benefícios
Benefícios para uma empresa
maior facilidade nas migrações de dados necessárias para o projeto i.você
maior facilidade na integração de dados necessária entre vários elementos / sistemas para a criação de um CMS (Configuration Management System)
auxílio na extração e transformação de dados de sistemas e elementos, podendo ser uma fonte de dados para o APG, que é uma das ferramentas de relatórios
possibilidade de criação de novo serviço / produt, diversificando receitas
Benefícios para o usuário
existindo um sistema de informações (CMS) consistente, isto auxiliará a empresa na tomada de decisões mais diretas (pontuais) e assertivas trazendo benefícios mais rapidamente e pontualmente para o cliente
com a criação de um novo produto / serviço, este estará disponível para os clientes usarem, podendo trazer os mesmos benefícios proporcionados.
Negócios
Direcionadores chave para esta iniciativa
Criação de um novo produto / serviço, visando a diversificação de receitas. Este produto / serviço ofereceria as funcionalidades ETL.
Possíveis modelos de negócios
Solução que permita extrair dados de bases como logs, arquivos desestruturados e outros para bancos de dados estruturados com aproveitamento total das informações. Um ótimo exemplo é o volume absurdo de dados contidos em planilha e que precisam, após certo tempo de serem transformados para integração em bancos de dados.
Prestação de serviços na área de transformação de dados, atuando em empresas que precisam efetuar migrações em massa e adaptação de dados.
Aplicação que transforme bases de dados nativas em saídas que tenham alteração automática em seus valores. Exemplo: Virada do século, Mudanças de código-postal, prefixo telefônico, etc.
Business Case
Utilização como produto / serviço
Suponhamos uma solução que ofereça funcionalidades de ETL. Suponhamos ainda uma taxa de contratação de R$50,00, mais R$1,00 por MB de dado analisado, e que, em média, cada cliente solicite a análise de 2GB de dados. Se tivermos 10.000 compras desta solução, teremos um montante de R$20.980.000,00. Como a aplicação a free, o investimento inicial necessário consiste em servidores e treinamento de pessoal, um valor que seria em torno de R$65.000,00. Neste caso, teríamos um ganho de R$20.915.000,00, exceto o valor para manutenção da solução, que consistirá, basicamente, em pessoal.
Utilização interna
Suponhamos uma migração de dados de aplicações legadas para novos sistemas. Suponhamos ainda que cada aplicação tenha, em média, 5GB de dados para serem migrados e que para cada uma destas migrações gaste-se 4 meses (desde o planejamento à validação da execução), sendo necessário 8 pessoas (exceto pessoal de gerência). A utilização de ferramentas ETL ajudaria a dar agilidade ao processo de execução, podendo diminuir o tempo da migração em até 1 mês, além de poder diminuir o pessoal, já que a execução será automática, sendo necessário apenas configuração inicial da solução. Neste caso, teríamos as migrações mais baratas e com tempo de entrega menor.