Avançar para a área de conteúdo

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

A primeira vez que acessar o developerWorks, um perfil será criado para você. Informações do seu perfil (tais como: nome, país / região, e empresa) estarão disponíveis ao público, que poderá acompanhar qualquer conteúdo que você publicar. Seu perfil no developerWorks pode ser atualizado a qualquer momento.

Todas as informações enviadas são seguras.

  • Fechar [x]

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Todas as informações enviadas são seguras.

  • Fechar [x]

Efetue mash de dados ativos e arquivados usando o IBM Mashup Center e Optim

Uma solução de relatórios

Thanh Pham, Solution Architect, IBM
Thanh Pham é Solution Architect do InfoSphere MashupHub. Seu foco é construir uma comunidade em volta de mashups corporativos. Antes dessa função, ele era um architect para o produto ECM/Filenet Business Process Framework. Thanh passou as duas últimas décadas envolvido em desenvolvimento de software, trabalhando em projetos em diversas áreas, incluindo kernel em tempo real, sistemas de comutação de alta velocidade, protocolos de rede, roteadores terabit, multimídia, conferências digitais, bancos de dados de pequena área de cobertura, comércio eletrônico, rastreamento de transações de sistemas de mensagens, processos de negócio e SOA.
Louis Mau, Solution Architect, IBM
Louis Mau faz parte da equipe de desenvolvimento do InfoSphere MashupHub. Seu foco principal é ajudar os clientes a construir aplicativos situacionais com o uso do IBM Mashup Center. Antes dessa função, Louis era um architect do DB2 Everyplace SyncServer.

Resumo:  As empresas devem arquivar dados transacionais para atender a requisitos de custo, eficiência operacional e regulamentares. Mas esses dados ainda podem ser úteis para finalidades de geração de relatórios. Este artigo mostra a facilidade com que o IBM Mashup Center pode ser usado para modificar um mashup de relatórios para combinar dados de um banco de dados relacional DB2® com dados arquivados usando Optim™ Data Growth Solution.

Data:  05/Mar/2010
Nível:  Intermediário
Atividade:  6644 visualizações
Comentários:  


Introdução

Muitas empresas comerciais geram grandes quantidades de dados eletrônicos, que são arquivados para várias finalidades. Os exemplos incluem o arquivamento de dados de transações para auditoria e manter o banco de dados de operações on-line em um tamanho gerenciável. Pode também ser necessário que uma empresa comercial arquive dados eletrônicos por motivos regulamentares. O IBM Optim Data Growth Solution possibilita o arquivamento de registros de transação históricos, armazenando-os com segurança e economia em um arquivo arquivado compactado. Ao visualizar e pesquisar dados ativos e arquivados, é inconveniente precisar primeiro restaurar os arquivos arquivados de volta ao sistema onde residem os dados ativos. Este artigo apresenta um método alternativo que envolve acessar os dados on-line e arquivados pelo Optim em seus repositórios nativos e combiná-los usando um mashup.

O IBM Mashup Center fornece um processo leve para construir um novo aplicativo para esse método alternativo. Usando os geradores de alimentação integrados, é possível acessar dados corporativos ativos e combiná-los com esses dados do archive quando necessário. O exemplo neste artigo mostra a facilidade com que é possível estender um aplicativo de mashup construído para rastrear informações de pedidos ativos para incluir também informações de pedidos arquivados. Essas informações terão um maior benefício se você tiver alguma familiaridade com o uso do Optim para arquivamento de dados e com o uso do IBM Mashup Center para gerar alimentações relacionais e para criar mashups de dados.

Explorando a configuração do sistema

Este artigo explica brevemente como construir um aplicativo de exemplo a partir da origem de dados DB2, e em seguida detalha como reutilizar esse aplicativo com os dados ativos e arquivados pelo Optim combinados. No exemplo, os dados corporativos comerciais são armazenados em uma origem de dados relacional do DB2 e os dados arquivados são armazenados no formato de arquivo de archive compactado do IBM Optim que reside no sistema de arquivos, como mostrado na Figura 1.


Figura 1. Visão geral do sistema

A Figura 2 mostra o banco de dados e tabelas da origem de dados do DB2. À medida que as transações do sistema em produção crescem com o tempo, o sistema tem uma regra definida para manter somente os pedidos dos últimos dois anos. Os pedidos mais antigos são movidos para o archive do IBM Optim. Esse banco de dados e as tabelas são disponibilizados com a instalação do IBM Optim Data Growth Solution.


Figura 2. Esquema de banco de dados


Examinando um aplicativo de mashup rastreando um pedido ativo

A Figura 3 mostra um exemplo de página de relatório criado usando o IBM Mashup Center. A página é usada para avaliar o desempenho de diferentes vendedores com base em dados ativos residentes em um banco de dados relacional. Esta seção descreve a construção do relatório. A próxima seção descreve como modificar facilmente o relatório para incorporar dados arquivados pelo IBM Optim referentes aos anos anteriores.


Figura 3. Pedidos atuais

A página de relatórios tem dois widgets:

  • O widget de visualizador de dados exibe a lista dos nomes dos vendedores e seus territórios associados.
  • O widget de gráfico exibe os dados de vendas anuais dos vendedores selecionados. O número é calculado a partir dos pedidos ativos de outubro de 2006 a outubro de 2008. A entrada para o widget de relatórios vem de uma alimentação gerada pelo Mashup Center denominada /mashuphub/client/plugin/generate/entryid/400/pluginid/10?salesmanId=NC005. Observe que a alimentação tem um único parâmetro de consulta: salesmanId

Ao clicar em uma linha no widget do visualizador de dados, o widget de gráficos é alterado para exibir as vendas do vendedor selecionado. Esse comportamento é especificado conectando o widget do visualizador de dados ao widget de gráficos. A conexão especificou que o ID do vendedor deve ser enviado para o widget de gráficos quando uma linha for selecionada. O widget de gráficos substitui o parâmetro salesmanId na URL com o valor passado, que é usado em seguida para acessar as vendas anuais correspondentes. A Figura 4 mostra a conexão.


Figura 4. Conexão dos Widgets

O widget do visualizador de dados é preenchido usando uma alimentação gerada a partir da tabela relacional de vendedores. Para criar uma alimentação relacional, conclua as seguintes etapas:

  1. Selecione Create > New Feed na página do catálogo do Mashup Center.
  2. Forneça as informações de conexão do banco de dados. Será exibida uma lista de tabelas.
  3. Selecione uma tabela selecionando a caixa de opção correspondente. Isso preencherá a caixa de listagem à esquerda com uma lista de colunas. Para o exemplo, selecione todas as colunas selecionando a coluna *, como mostrado na Figura 5.

Figura 5. Tabela de vendedores

  1. Para gerar a alimentação contendo as vendas anuais totais para o widget de gráficos, recupere as informações de pedidos a partir do banco de dados ativo. Cada linha na tabela de pedidos pode ser associada com vários registros na tabela de detalhes, como mostrado na Figura 5. O valor de cada pedido é calculado somando a coluna de valores dos registros de detalhe associados. O SQL necessário é razoavelmente complexo, como mostrado na Listagem 1. Essas instruções SQL podem ser especificadas na janela Advanced durante a criação de uma alimentação relacional.

Listagem 1. Instruções SQL
                select        o.order_id, o.cust_id, o.order_date,
              rtrim(o.order_salesman) sales_id, d.amount
     from (select i.order_id order_id, sum(i.item_quantity*i.detail_unit_price) amount
                   from db2admin.details i group by i.order_id) d,
              db2admin.orders o
    where d.order_id=o.order_id

  1. Use um mashup de dados para transformar a alimentação de informações do pedido para o formato requerido pelo widget de gráficos, como mostrado na Figura 6.

Figura 6. Mashup de dados para computar vendas anuais

Observe que o mashup de dados consiste no encadeamento de uma série de operadores. Cada operador representa uma etapa no processo de transformação. Detalhes adicionais sobre cada etapa são mostrados a seguir.

  1. A partir da alimentação de valores do pedido, use o operador Filter para selecionar os valores dos pedidos associados com um determinado vendedor.
  2. Agrupe todos os pedidos por ano com o operador Group.
  3. Use um operador Transform para sumarizar todos os valores do pedido dentro de um ano.
  4. Use um operador Sort para classificar a saída em ordem ascendente por ano.
  5. Use o operador Publish para gerar a alimentação de resultados no formato XML para que o widget de gráficos possa exibi-la.

Isso conclui a breve tour do aplicativo de mashup existente.


Editando o aplicativo de mashup para rastrear pedidos ativos e do archive

Configure o IBM Mashup Center para IBM Optim

O gerador de alimentações de archives do Optim do Mashup Center usa o Attunity Connect Thin Client. O Attunity Connect fornece um driver JDBC de tipo III para o JDBC Versão 2. Ele é fornecido como um conjunto na biblioteca Java ao instalar o servidor Optim. O conjunto de JARs inclui:

  • nvjdbc2.jar
  • nvapispy2.jar
  • nvlog2.jar

Copie esses JARs para dentro da pasta de instalação do Mashup Center localizada em {install-folder}/Hub/installedApps/Mashup Hub.ear/mashuphub-enterprise.war/WEB-INF/lib e reinicialize o servidor.

Crie uma alimentação e mashup do Optim

Imagine uma situação em que você precisa estender o relatório de exemplo para exibir o histórico de pedidos do vendedor desde a criação da empresa e não apenas os pedidos ativos dos últimos dois anos. As etapas a seguir mostram como estender o aplicativo de relatórios de mashup de exemplo para incorporar os pedidos arquivados quando os dados de pedidos inativos estiverem armazenados no IBM Optim Archive.

  1. Selecione o gerador de alimentação do IBM Optim Archive.
  2. Forneça as informações de conexão do IBM Optim Archive para recuperar pedidos arquivados.
  3. Crie um mashup para combinar os pedidos ativos e arquivados.
  4. Selecione Edit as New para os dados de mashup que calculam as vendas anuais para um determinado vendedor.
  5. Modifique o widget de gráficos do mashup de relatório para usar as duas novas alimentações.

A Figura 7 mostra a lista de geradores de alimentação disponíveis no produto IBM Mashup Center. Entre eles, está o gerador de alimentações Relational Database Query (SQL) usado na seção anterior e o gerador de alimentação do IBM Optim Archive.


Figura 7. Lista de geradores de alimentação do hub

A Figura 8 mostra as informações necessárias para conectar-se a um archive do IBM Optim. Essa janela é bastante similar à janela de um gerador de alimentações Relational Database Query. A janela solicita:

  • |O nome do archive, como DEMOAF
  • O nome do host do servidor, como demoserver
  • O número da porta, como 2552
  • As credenciais (nome do usuário e senha)

Figura 8. Informações de conexão do IBM Optim Archive

O gerador de alimentações do IBM Optim Archive fornece uma GUI simples para criar uma alimentação a partir de uma única tabela do archive e um conjunto de colunas, e fornece uma caixa de entrada para inserir instruções SQL complexas. Como o archive foi criado com o mesmo esquema dos dados ativos, as mesmas instruções SQL da seção anterior podem ser usadas para recuperar os valores do pedido.

A Figura 9 mostra como construir um mashup combinando duas origens: pedidos ativos e pedidos arquivados pelo Optim. Use o operador Combine para combinar o conteúdo das duas alimentações em uma só.


Figura 9. Mashup de dados para combinar alimentações de pedidos ativos e arquivados

No catálogo do IBM Mashup Center é possível visualizar a lista de alimentações e mashups de dados. É possível editar ou copiar mashup de dados usando a seleção Edit As New. Para o exemplo deste artigo, faça uma cópia do mashup que calcula os valores de vendas anuais, como mostrado na Figura 10. Como os elementos da alimentação de pedidos combinados são similares aos elementos da alimentação dos pedidos ativos, é possível reutilizar a mesma lógica e simplesmente alterar o operador Source par usar a saída do mashup que combina pedidos ativos e arquivados pelo Optim.


Figura 10. Copie um mashup de dados

Para a última etapa, em vez de construir a página de relatório de mashup desde o início, faça uma cópia da página de relatório, como mostrado na Figura 11, e em seguida modifique a cópia seguindo estes passos:

  1. Publique a página de relatório no catálogo do Hub. Será criada uma entrada de objeto Page.
  2. Navegue até o catálogo do Hub e acesse a janela Show Details para essa entrada recentemente criada.
  3. Clique em Add to Mashup Builder para criar uma cópia da página de relatório.
  4. Renomeie a página de relatório copiada para Combine Orders ao adicioná-la ao Mashup Builder.
  5. Atualize a visualização do Mashup Builder e selecione a janela Combine Orders.
  6. Altere a URL do gráfico para usar o mashup de dados que calcula os valores de vendas anuais para dados ativos e arquivados pelo Optim.

Figura 11. Reutilize uma cópia para criar um novo mashup

A Figura 12 mostra os resultados finais do processo de exemplo. Observe que os valores de vendas começam agora em 2004 em vez de 2006.


Figura 12. Pedidos ativos e arquivados


Conclusão

O IBM Mashup Center fornece uma plataforma para efetuar mashup de dados facilmente a partir de diversas origens. O gerenciamento de dados de empresas comerciais pode requere acesso a dados ativos e arquivados. Usando a capacidade de transformação e os recursos de apresentação do IBM Mashup Center, é possível combinar dados das duas origens e obter novas percepções a partir dos dados integrados.


Recursos

Aprender

Obter produtos e tecnologias

  • Verifique o IBM Lotus Greenhouse para experimentar um servidor hospedado do Mashup Center.

  • Elabore seu próximo projeto de desenvolvimento com o software de teste IBM, disponível para download diretamente no developerWorks.

Discutir

Sobre os autores

Thanh Pham é Solution Architect do InfoSphere MashupHub. Seu foco é construir uma comunidade em volta de mashups corporativos. Antes dessa função, ele era um architect para o produto ECM/Filenet Business Process Framework. Thanh passou as duas últimas décadas envolvido em desenvolvimento de software, trabalhando em projetos em diversas áreas, incluindo kernel em tempo real, sistemas de comutação de alta velocidade, protocolos de rede, roteadores terabit, multimídia, conferências digitais, bancos de dados de pequena área de cobertura, comércio eletrônico, rastreamento de transações de sistemas de mensagens, processos de negócio e SOA.

Louis Mau faz parte da equipe de desenvolvimento do InfoSphere MashupHub. Seu foco principal é ajudar os clientes a construir aplicativos situacionais com o uso do IBM Mashup Center. Antes dessa função, Louis era um architect do DB2 Everyplace SyncServer.

Ajuda para Relatar Abuso

Relatar abuso

Obrigado. Esta entrada foi sinalizada para atenção do moderador.


Ajuda para Relatar Abuso

Relatar abuso

Falha no envio do Relatório de abuso. Tente novamente mais tarde.


developerWorks: Registre-se


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Selecione seu nome de exibição

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

(Deve possuir de 3 a 31 caracteres.)


Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Classificar este artigo

Comentários

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Information Management, Lotus
ArticleID=471990
ArticleTitle=Efetue mash de dados ativos e arquivados usando o IBM Mashup Center e Optim
publish-date=03052010