Gerenciando aplicativos habilitados para pureQuery com eficiência, Parte 1: Configure um repositório de gerenciamento de SQL usando um script Ant

O IBM Optim™ Development Studio e o pureQuery Runtime incluem um utilitário de linha de comandos chamado ManageRepository que pode ser usado para criar, modificar, exportar, importar e excluir metadados do pureQuery armazenados no repositório de gerenciamento de SQL. A configuração de um repositório de gerenciamento de SQL com o script de comando do utilitário ManageRepository pode ser difícil. Este tutorial mostra como criar e gerenciar um repositório de SQL usando um script Ant. Você também aprenderá a executar o script Ant dentro do IBM Optim Development Studio.

Patrick Titzler, Advisory Software Engineer , IBM

Patrick TitzlerPatrick Titzler é arquiteto de soluções do IBM Software Group, com foco na otimização de aplicativos de banco de dados Java com IBM Optim Solutions. Tem muitos anos de experiência em desenvolvimento e contribuiu para vários produtos de inteligência de negócios e data warehousing que suportam o DB2 para LUW e o DB2 para z/OS. Patrick é mestre em Ciência da Computação pela Universidade de Rostock, Alemanha.



Soid Quintero, Technical Enablement Engineer, IBM China

Photo of Soid QuinteroSoid Quintero é cooperada da equipe de habilitação da IBM Optim Solutions no laboratório do Vale do Silício. Atualmente, está se dedicando ao mestrado em Fatores Humanos e Ergonomia voltado para a interação entre pessoas e computadores na Universidade Estadual de San José, em San José, Califórnia.



19/Jul/2011

Antes de iniciar

Introdução

Desde a sua introdução, a tecnologia pureQuery adota uma abordagem baseada em arquivos para armazenar as informações de metadados importantes e de configuração. Embora essa abordagem funcione bem em implementações pequenas, há necessidade de uma abordagem mais centralizada que faça o seguinte:

  • Simplifique a administração
  • Melhore a colaboração entre DBAs e desenvolvedores
  • Suporte uma análise mais ampla
  • Possibilite uma integração melhor entre os produtos
  • Tenha boa escalabilidade
  • Aproveite a força dos sistemas de banco de dados no que diz respeito à disponibilidade, controle de acesso e confiabilidade em ambientes corporativos

O repositório de gerenciamento de SQL no Optim Development Studio 2.2.0.3 pode preencher esses requisitos. Este tutorial apresenta esse repositório e lhe orienta no processo de configuração do mesmo usando um exemplo de script Ant.

Introdução ao repositório de gerenciamento de SQL

O repositório de gerenciamento de SQL armazena informações sobre aplicativos habilitados para pureQuery em contêineres chamados grupos de tempo de execução. Cada grupo de tempo de execução contém informações específicas do aplicativo e informações de configuração do pureQuery, como mostra a Figura 1.

Figura 1. O repositório de banco de dados central aproveita as vantagens dos DBMSs e melhora a colaboração
O repositório de banco de dados central aproveita as vantagens dos DBMSs e melhora a colaboração

As informações específicas do aplicativo incluem uma lista de instruções SQL conhecidas que um aplicativo processa, informações de correlação entre a SQL e o código de origem, medidas relacionadas à execução e outros metadados que são úteis no contexto de tarefas de manutenção comum de aplicativos, ajuste e determinação de problema. O pureQuery Runtime tipicamente coleta as informações e as armazena no repositório como parte do processo de otimização de cliente do pureQuery.

As informações de configuração do pureQuery são formadas por configurações de tempo de execução do aplicativo e arquivos de configuração que são usados pelos utilitários do pureQuery para criar os artefatos que suportam a execução de SQL estática (para bancos de dados do DB2).

É possível usar o Optim Development Studio (ODS) para gerenciar o repositório interativamente ou o utilitário de linha de comandos ManageRepository para automatizar tarefas de administração comuns, como mostra a Figura 2. Outros aplicativos, como o pureQuery Runtime, podem recuperar e, até certo ponto, atualizar informações armazenadas no repositório.

Figura 2. O repositório de gerenciamento de SQL é acessado por meio de várias ferramentas do Optim
O repositório de gerenciamento de SQL é acessado por meio de várias ferramentas do Optim

No Optim Development Studio versão 2.2.1, o repositório de gerenciamento de SQL pode residir em qualquer uma das seguintes versões do DB2:

  • DB2 9.1, 9.5 e 9.7 para Linux®, UNIX® e Windows®
  • DB2 para System i®, V5R3 ou V5R4
  • DB2 Universal Database para z/OS® versão 8.1
  • DB2 9.1 para z/OS

Os aplicativos habilitados para o repositório de gerenciamento de SQL (como o ODS e o pureQuery Runtime) podem acessar o repositório usando a SQL estática ou dinâmica. Recomenda-se a habilitação da SQL estática durante o processo de configuração do repositório para bloquear, tanto quanto possível, o acesso aos objetos de banco de dados subjacentes. O acesso aos objetos do repositório é restrito aos usuários aos quais se concedeu acesso de gerenciador ou acesso ao aplicativo. O acesso do gerenciador deve ser concedido aos usuários (ou grupos) que precisam criar, ler, modificar ou excluir informações do aplicativo pureQuery. O acesso ao aplicativo é usado somente pelo pureQuery Runtime para atualizar os metadados do aplicativo.

Durante todo este tutorial, o repositório de gerenciamento de SQL é designado como repositório.

Em um ambiente corporativo, é possível usar vários repositórios de gerenciamento de SQL para acomodar os estágios do ciclo de vida de implementação de um aplicativo do pureQuery em vários ambientes de produção e teste.

Para obter informações aprofundadas sobre o repositório de gerenciamento de SQL, consulte o Centro de Informações sobre Gerenciamento de Dados Integrado em Recursos.

Sobre esta série

Este tutorial é a primeira parte de uma série de três artigos que aborda o processo de otimização de clientes que estende os benefícios do pureQuery aos aplicativos Java já existentes.

Sobre este tutorial

Neste tutorial, você aprenderá a usar o Optim Development Studio para configurar um repositório de gerenciamento de SQL usando um exemplo simples de script Ant que mostra o utilitário de linha de comandos que vem com o pureQuery Runtime. Esse script Ant é fornecido na seção Download deste tutorial. Ele simplifica tarefas comuns e fornece uma abordagem ideal para começar a usar o software rapidamente, sem necessidade de aprender sobre o utilitário de linha de comandos ManageRepository, que é mais complexo.

Objetivos

O objetivo deste tutorial é repassar o processo básico de configuração do repositório de gerenciamento de SQL. Durante este tutorial, você realizará as seguintes etapas:

  1. Criar um banco de dados que armazena o repositório de gerenciamento de SQL
  2. Preparar o Optim Development Studio para executar o exemplo de script Ant de gerenciamento de repositório
  3. Customizar o script de gerenciamento de repositório
  4. Criar os objetos de banco de dados do repositório de gerenciamento de SQL, ativar o acesso à SQL estática e validar a integridade do repositório
  5. Aprender a customizar as opções de implementação do repositório de gerenciamento
  6. Conceder aos usuários o acesso ao repositório
  7. Criar uma conexão do repositório no Optim Development Studio, para permitir o gerenciamento de aplicativos habilitados para pureQuery.

Requisitos do Sistema

Os seguintes softwares devem estar instalados para realizar este tutorial:

  • Optim Development Studio, versão 2.2.0.3 ou posterior. Consulte Recursos para ver como fazer o download de uma versão de avaliação gratuita.
  • DB2 Database Server. Consulte Recursos para ver como fazer o download de uma versão de avaliação grátis do DB2 Express-C.

Criando um banco de dados e preparando o ODS

Antes de configurar um repositório de gerenciamento de SQL, é necessário criar um banco de dados (ou identificar um banco de dados já existente) que será usado para armazenar os objetos do repositório. Não há restrições propriamente ditas em relação ao banco de dados que se pode usar, desde que resida em um servidor de banco de dados DB2 suportado. Para simplificar este tutorial, você criará um novo banco de dados no seu sistema local. Se preferir usar um banco de dados já existente (remoto), passe para Preparando o ODS para executar o script de gerenciamento do repositório.

Criando o banco de dados do repositório

Para criar um novo banco de dados local, realize as etapas a seguir:

  1. Certifique-se de que o DB2 Express-C 9 (ou o seu servidor de banco de dados suportado) esteja executando.
  2. A partir do menu Start, abra uma janela de comando do DB2 selecionando Programs > IBM DB2 > DB2COPY1 > Command Line Tools > Command Window.
  3. Crie um banco de dados com o nome da sua preferência — por exemplo: SQLMGMT — digitando DB2 CREATE DATABASE SQLMGMT no prompt.

Na próxima seção, você preparará o script Ant que é fornecido neste tutorial.

Preparando o ODS para executar o script de gerenciamento do repositório

O Optim Development Studio e o pureQuery Runtime incluem o utilitário de linha de comandos ManageRepository, que fornece aos administradores a capacidade de gerenciar um repositório usando operações de baixo nível. Para simplificar o processo de configuração, este tutorial fornece um script de utilitário fácil de usar com o Apache Ant, que oculta algumas complexidades e permite preparar o repositório mais rapidamente.

Obtendo o exemplo de script de gerenciamento de repositório

  1. Faça o download do archive setup_repository_using_ANT.zip na seção Downloads deste tutorial e extraia-o no diretório temporário da sua preferência. O archive contém dois arquivos que você importará para o Optim Development Studio. Eles são fornecidos no estado em que se encontram. É possível modificá-los ou adaptá-los como você quiser. Os arquivos irão ajudar você a começar. Os arquivos são:
    • setup_repository.xml, que é o script de utilitário
    • setup_repository.properties, que é o arquivo de configuração do script de utilitário

Se você está familiarizado com o Apache Ant e o mesmo já está configurado no seu ambiente, não há necessidade de usar o Optim Development Studio para a configuração básica do repositório. É possível concluir a maioria das etapas usando o ambiente que você já configurou.

Importando o script de gerenciamento de repositório para o ODS

O Optim Development Studio (como outras ferramentas baseadas em Eclipse) fornece suporte de fábrica para scripts Ant, facilitando a configuração e execução dos scripts. Realize as etapas a seguir para importar o script para o ODS:

  1. Abra o Optim Development Studio.
  2. Insira (ou selecione) um caminho da sua preferência para o diretório da área de trabalho.
  3. Clique em File > New > Project a partir do menu principal.
  4. Clique no assistente Java Project e clique em Next . O assistente New Java Project se abre.
  5. Insira ManageRepository como nome do projeto.
  6. Clique em Finish.
  7. Se for solicitado, clique em Yes para passar para a perspectiva Java.

Realize as etapas a seguir para importar o script de gerenciamento de repositório:

  1. Acesse a visualização Package Explorer e clique no projeto que você acabou de criar.
  2. Clique com o botão direito no projeto e clique em Import no menu de contexto.
  3. Expanda o nó General , selecione File System e clique em Next .
  4. Clique no botão Browse e navegue para o diretório temporário onde você descompactou o arquivo ZIP setup_repository_using_ANT.zip.
  5. Clique em OK.
  6. Selecione as caixas de seleção ao lado dos dois arquivos listados: setup_repository.properties e setup_repository.xml.
  7. Clique em Finish para importar os arquivos.
  8. Localize a visualização Package Explorer e certifique-se de que os dois arquivos agora estão no projeto ManageRepository, como mostra a Figura 3.
Figura 3. O script do repositório de gerenciamento de SQL simplifica tarefas comuns de configuração
O script do repositório de gerenciamento de SQL simplifica tarefas comuns de configuração

Agora você está pronto para customizar o script para o seu ambiente.

Configurando o script de configuração do repositório

O exemplo de script de configuração de repositório fornece a capacidade de fazer o seguinte:

  • Criar ou excluir um repositório
  • Criar o DDL para os objetos do repositório, que podem ser customizados
  • Conceder ou revogar o acesso dos usuários ao repositório

O comportamento desse script é controlado pelas definições de configuração estabelecidas no arquivo setup_repository.properties e por entradas interativas que você fornece enquanto o script é executado. Realize as etapas a seguir para revisar as definições de configuração padrão que se aplicam a todas as operações do repositório e para modificá-las conforme a necessidade:

  1. Na visualização Package Explorer, clique duas vezes no arquivo setup_repository.properties para abri-lo em um editor, como mostra a Lista 1.
Lista 1. Customizando informações de conectividade do banco de dados
#------------------------------------------------
# Section 1:
# Repository connection information
#------------------------------------------------

#repository URL
repository.url=jdbc:db2://localhost:50000/SQLMGMT
#username to connect to the database
repository.user=db2admin

A primeira seção, chamada Repository connection information, define informações de conectividade de banco de dados, como a URL de JDBC e o ID do usuário que será usado para criar, modificar e eliminar os objetos de banco de dados (tabelas, visualizações e opcionalmente pacotes de banco de dados) que formam os artefatos de repositório.

  1. Substitua o valor padrão pela definição de configuração repository.url com os valores adequados para o banco de dados que você criou ou identificou anteriormente. Por exemplo: se o banco de dados do repositório reside na sua máquina local, ele pode ser acessado pela porta 50.000 e se chama SQLMGMT, insira jdbc:db2://localhost:50000/SQLMGMT.
  2. Substitua o valor padrão pela definição de configuração repository.user com um ID de administrador de DB2 válido, como db2admin. Se o usuário especificado não tiver autoridade suficiente sobre o banco de dados, a execução do script de gerenciamento do repositório falhará. A senha desse usuário não está armazenada no arquivo de configuração. Em vez disso, é exibido um prompt sempre que você executa o script para realizar uma operação de configuração.
  3. Não altere as seções 2 e 3 do arquivo setup_repository.properties, que contêm opções de customização relevantes para as tarefas de controle de acesso e remoção do repositório, como mostra a Lista 2.
Lista 2. Cada seção de configuração corresponde a uma tarefa de configuração
#------------------------------------------------
# Section 2:
# Repository access authorization
#------------------------------------------------
...
#------------------------------------------------
# Section 3:
# Repository removal
#------------------------------------------------
 ...
  1. Valide a existência da definição de configuração runtimejars.dir na Seção 4 do arquivo setup_repository.properties navegando para o diretório de instalação do Optim Development Studio e localizando o diretório dsdev\jar directory. O diretório deve conter quatro arquivos JAR: db2jcc.jar, db2jcc_license_cisuz.jar, pdq.jar e pdqmgmt.jar. Figura 4 mostra a Seção 4 chamada housekeeping, que define configurações gerais.
Figura 4. Validação da presença das bibliotecas Java necessárias
Validação da presença das bibliotecas Java necessárias

Normalmente só é necessário customizar os locais das bibliotecas do pureQuery Runtime e do JDBC.

  1. Modifique o arquivo de configuração conforme a necessidade e pressione Ctrl + S para salvar as mudanças.

A manutenção está terminada! Agora que você fez as definições de configuração padrão, use o script Ant para configurar um repositório de gerenciamento de SQL simples.


Configurando um repositório de gerenciamento de SQL

Visão geral

Para configurar um repositório de gerenciamento de SQL, conclua as seguintes etapas:

  1. Identificar as características do repositório durante o estágio de planejamento.
  2. Criar os objetos de banco de dados necessários usando o script de configuração que você importou e customizou para este tutorial.
  3. Conceder aos usuários que você identificou durante a atividade de planejamento o acesso de gerenciador aos objetos.
  4. Possibilitar que os seus usuários gerenciadores conectem o Optim Development Studio ao repositório para que possam usá-lo.

Identificando as características do repositório

As características do repositório definem implicitamente as etapas que devem ser concluídas para configurar um repositório de gerenciamento de SQL operacional que supra as suas necessidades. Como parte desta atividade, responda as seguintes perguntas comuns:

Qual é o escopo do repositório desejado?
Neste tutorial, você está criando um repositório de ambiente de simulação que pode ser usado para explorar alguns dos recursos de gerenciamento que o script de exemplo, o utilitário ManageRepository e o Optim Development Studio fornecem. Na "vida real", o escopo de um repositório pode englobar um ou mais ambientes de teste, um ambiente de produção ou qualquer outro agrupamento lógico de aplicativos habilitados para pureQuery que você pode ter implementado no seu empreendimento.

Por exemplo: suponha que você quer usar um único repositório para gerenciar todos os aplicativos habilitados para pureQuery que executam nos seus ambientes de desenvolvimento, teste e produção. Embora isso forneça aos gerenciadores uma visualização global dos aplicativos implementados, também aumenta o risco, já que todos os seus ambientes se baseiam em um único repositório. O ideal seria que os repositórios refletissem o ciclo de vida comum dos aplicativos. A criação de uma instância de repositório para sistemas de desenvolvimento, uma para teste e uma para ambientes de produção separa as informações que são armazenadas para cada versão do aplicativo que pode ser usada nesses ambientes. A quantidade de informações armazenadas em cada ambiente também pode variar de acordo com as suas necessidades exatas.

Onde o repositório deve residir?
O repositório pode residir em qualquer servidor de banco de dados suportado. De modo geral, é possível optar por criar o repositório em um dos nós de aplicativo. Nesse caso, a compartilhamento de localização com o aplicativo pode reduzir o tráfego da rede. Em seguida, é possível criar o repositório no mesmo banco de dados em que os dados transacionais estão localizados (os dados e metadados do aplicativo são gerenciados como uma entidade) ou em um computador separado.
Quem pode gerenciar o conteúdo do repositório?
Qualquer pessoa que você designar como administrador dos aplicativos habilitados para pureQuery deve ter acesso ao repositório. Por padrão, somente o proprietário dos artefatos do banco de dados do repositório (normalmente o criador) está autorizado a manipular o repositório.
Quem pode acessar, mas não gerenciar, o conteúdo do repositório?
Na verdade, só é possível responder a essa pergunta depois de identificar os aplicativos habilitados para pureQuery que serão gerenciados por meio do repositório.

Usando as instruções nas seções a seguir, você realizará essas atividades em um cenário simples. Quando tiver concluído com êxito, você terá um repositório operacional que pode ser usado para gerenciar com facilidade os seus aplicativos habilitados para pureQuery.

Observe que o detalhamento de como gerenciar um aplicativo Java habilitado para pureQuery usando o repositório está além do escopo deste tutorial. Outra parte desta série de tutoriais fornece mais detalhes.

Criando um repositório de gerenciamento de SQL

O repositório deste tutorial gerenciará um conjunto pequeno de aplicativos habilitados para pureQuery em um ambiente de teste Windows local, em que um banco de dados do DB2 chamado SQLMGMT já foi criado. Um ID do usuário já existente, db2user, será usado para gerenciar os aplicativos em execução local usando uma instalação do Optim Development Studio versão 2.2.1.

Uma instância do repositório de gerenciamento de SQL é formada por um conjunto de tabelas, visualizações e pacotes de bancos de dados somente no DB2. A quantidade de objetos de banco de dados que constituem um repositório depende do tipo de repositório escolhido. Para a maioria dos ambientes, um repositório leve é adequado e, portanto, é criado por padrão se você está usando um script Ant. Observe que os objetos de banco de dados devem residir no esquema IBMPDQ .

Qual tipo de repositório eu escolho?

É possível criar dois tipos de repositório. O repositório leve armazena somente as informações usadas mais frequentemente. O repositório de tamanho completo armazena informações adicionais em formato fragmentado que pode ser usado futuramente para uma análise mais aprofundada dos metadados do aplicativo. Para criar um repositório com todos os recursos, defina a configuração de repository.type na Seção 4 do arquivo de configuração setup_repository.properties como pureQueryOnly. Observe que, em termos de desempenho, o repositório leve é melhor para certas operações devido ao volume de dados mais baixo.

Realize as etapas a seguir para criar o repositório:

  1. Abra o Optim Development Studio e selecione a área de trabalho para a qual você importou os scripts de configuração do repositório.
  2. Na visualização Package Explorer, clique duas vezes no arquivo setup_repository.xml para abri-lo no editor.
  3. Localize a visualização Outline na área de trabalho. Essa exibição mostra uma lista de tarefas predefinidas de gerenciamento de repositório, como mostra a Figura 5. Se você não conseguir localizar a visualização, selecione Window > Show View > Outline no menu da barra de ferramentas principal. Se essa visualização não mostra nenhuma informação ou mostra algo diferente daquilo que está na Figura 5, certifique-se de ter selecionado a visualização do editor que contém setup_repository.xml.
Figura 5. A visualização Outline exibe uma lista de tarefas de repositório de gerenciamento disponíveis
A visualização Outline exibe uma lista de tarefas de repositório de gerenciamento disponíveis

Por padrão, essa visualização mostra muitas informações que não são importantes para você.

  1. Oculte as informações irrelevantes clicando em cada botão "hide" como mostra a Figura 6.
Figura 6. Ocultando informações desnecessárias na visualização Outline
Ocultando informações desnecessárias na visualização Outline

Use a tarefa setup_repository para criar as visualizações e tabelas necessárias, ligar os pacotes de banco de dados que suportam o acesso de SQL estática e validar que os objetos de banco de dados foram criados adequadamente.

  1. Clique com o botão direito na entrada de tarefa setup_repository na visualização Outline e selecione Run As > Ant Build para criar o repositório.
  2. Insira a senha para o ID do usuário que você especificou anteriormente, quando customizou a definição de configuração repository.user no arquivo setup_repository.properties, como mostra a Figura 7. Observe que o campo de entrada não está mascarado devido a uma limitação da versão de ANT que está sendo usada.
Figura 7. Prompt de senha
Prompt de senha

A visualização Console mostra os resultados das operações de criação, ligação e validação, como mostra aFigura 8.

Figura 8. Um repositório de gerenciamento de SQL foi criado com êxito
Um repositório de gerenciamento de SQL foi criado com êxito

As falhas normalmente são causadas por um dos seguintes motivos:

  • Definições de configuração inválidas no arquivo setup_repository.properties
  • Erro de digitação dos valores de entrada
  • Autoridade insuficiente para executar as instruções necessárias de DDL ou DML

Como administrador de banco de dados corporativo, talvez você esteja interessado em revisar e customizar o DDL usado para criar os objetos de banco de dados relacionados ao repositório. Na seção a seguir, você explorará outra tarefa que armazenará o DDL em um arquivo de texto que pode ser customizado.

Revisando e customizando o DDL que cria o repositório de gerenciamento de SQL

As instruções de DDL geradas criam objetos de banco de dados com base nos padrões do banco de dados. Embora esses padrões possam ser suficientes em instalações de teste, é conveniente colocar os objetos em espaços de tabela específicos em ambientes de produção ou de teste de stress. É possível aproveitar a tarefa create_DDL para forçar a geração de um arquivo SQL, customizá-lo e executá-lo usando o seu utilitário favorito. Observe que o DDL gerado pode variar com base no banco de dados DB2 de destino e no tipo de repositório que você está criando.

A revisão do DDL requer as mesmas entradas que você usou ao criar o repositório: a URL de JDBC do banco de dados de destino, o ID do usuário de um administrador e a senha correspondente. As duas primeiras entradas você já definiu na Seção 1 do arquivo de configuração setup_repository.properties. A terceira entrada é inserida (como antes) em um prompt. Portanto, você está pronto para executar a tarefa create_DDL.

Realize as etapas a seguir para criar o DDL:

  1. Na visualização Package Explorer, clique duas vezes no arquivo setup_repository.xml para abri-lo em um editor, se ainda não estiver aberto.
  2. Localize a visualização Outline e encontre a tarefa create_DDL.
  3. Clique com o botão direito em create_DDL e selecione Run As > Ant Build no menu de contexto.
  4. Insira a senha do banco de dados. Observe que a senha que você está inserindo será exibida em texto não criptografado.

É exibida uma mensagem de êxito e um script SQL chamado DDLscript.sql é criado, como mostra a Figura 9.

Figura 9. O script DDL customizável para criar um repositório de gerenciamento de SQL foi criado com êxito
O script DDL customizável para criar um repositório de gerenciamento de SQL foi criado com êxito
  1. Localize a visualização Package Explorer e selecione o projeto ManageRepository .
  2. Pressione a tecla F5 para atualizar a visualização. O script SQL gerado é exibido, como mostra a Figura 10.
Figura 10. A visualização Package Explorer exibe o arquivo SQL gerado: DDLscript.sql
A visualização Package Explorer exibe o arquivo SQL gerado: DDLscript.sql
  1. Clique duas vezes no arquivo DDLscript.sql gerado para abri-lo em um editor.
  2. Explore o arquivo SQL, tendo em mente o seguinte:
    • Os nomes de tabela e visualização não são qualificados. Como esses objetos de repositório devem residir no esquema IBMPDQ no release atual, é necessário inserir a seguinte linha no inicio do script SQL para configurar o seguinte registro de esquema: set current schema 'IBMPDQ'. (O qualificador de esquema é configurado implicitamente se você usa a tarefa setup_repository para criar os objetos de banco de dados).
    • As instruções "create table" geradas não especificam uma cláusula IN. Cabe a você designar os mapeamentos de espaço de tabela.
    • Não é possível alterar nomes de objeto nem tipos de dados.
    • Depois de executar manualmente o script SQL, é necessário executar a tarefa bind_and_verify_repository para criar os pacotes de banco de dados de apoio e validar que o repositório foi criado corretamente.
  3. Como você já criou os objetos do repositório neste tutorial, feche o arquivo SQL gerado sem alterá-lo, nem executá-lo. Na vida real, você só executaria a tarefa descrita na seção anterior ou as tarefas descritas nesta seção.

Concedendo acesso de gerenciador ao repositório de gerenciamento de SQL

Depois de criar os objetos de banco de dados do repositório usando a SQL padrão ou uma versão customizada, você está pronto para conceder acesso de gerenciador aos usuários identificados na fase de planejamento. Tenha em mente que o gerenciador pode manipular quaisquer dados que estiverem armazenados no repositório. Portanto, conceda esse acesso adequadamente, apenas quando for necessário.

O controle de acesso ao repositório é imposto por meio da segurança do banco de dados. Embora seja possível conceder privilégios explicitamente aos objetos de banco de dados, é muito mais fácil usar a tarefa grant_privileges para identificar e executar as concessões de banco de dados necessárias de forma implícita. Da mesma forma, pode-se usar a tarefa revoke_privileges para revogar um privilégio concedido anteriormente.

Realize as etapas a seguir para conceder acesso de gerenciador adequadamente:

  1. Na visualização Package Explorer, clique duas vezes no arquivo de configuração setup_repository.properties para abri-lo em um editor, se ainda não estiver aberto.
  2. Encontra a Seção 1 Repository connection information e certifique-se de que a definição de configuração repository.url aponta para o repositório para o qual você quer conceder acesso de usuário.
  3. Certifique-se de que o ID do usuário listado como repository.user tenha autoridade suficiente para conceder SELECT, INSERT, UPDATE e DELETE nas tabelas e visualizações do repositório (se o acesso à SQL dinâmica é necessário) ou EXECUTE nos pacotes de suporte do repositório (se o acesso estático é necessário).
  4. Localize a Section 2 Repository access authorization. Essa seção define, em relação às tarefas de revogação e concessão, os usuários afetados e os privilégios e níveis de acesso que devem ser concedidos ou revogados.

Para conceder a um usuário (ou grupo) o acesso a um repositório, customize as três definições de configuração a seguir:

repository.grant.users
Define um único usuário, um grupo ou uma lista separada por vírgula de usuários ou grupos que precisam de autoridade para acessar o repositório.
repository.grant.privileges
Define os objetos de repositório aos quais o acesso é concedido. Se tableAccess é especificado, os usuários são autorizados a acessar as visualizações e tabelas de repositório (IBMPDQ.*_T). Se executePackage é especificado, o privilégio EXECUTE PACKAGE é concedido, pressupondo que os pacotes de suporte do repositório (IBMPDQ.AMD*) tenham sido criados.
repository.grant.accessLevel
Define o tipo de acesso que é concedido aos usuários especificados. Atualmente, dois níveis de acesso são suportados: manager e application. O acesso Manager é necessário para os usuários que têm responsabilidade administrativa e para os que precisam de acesso a metadados de aplicativos habilitados para pureQuery,por exemplo, para análise de impacto. O acesso ao aplicativo, que é muito mais restritivo, normalmente só é concedido a IDs de usuário associados a uma implementação do pureQuery Runtime em um nó de aplicativo. Para determinar se deve conceder acesso de gerenciador ou acesso ao aplicativo, pergunte a você mesmo se o ID do usuário será usado no Optim Development Studio ou nos utilitários de linha de comandos para trabalhar com o repositório de gerenciamento. Se for esse o caso, o acesso do gerenciador pode ser a opção adequada.
  1. Para este tutorial, designe o usuário já existente db2user para repository.grant.users.
  2. Designe executePackage para repository.grant.privileges.
  3. Designe manager para repository.grant.accessLevel, como mostra a Lista 3.
Lista 3. Concedendo ao usuário db2user o acesso de gerenciador ao repositório
#------------------------------------------------
# Section 2:
# Repository access authorization
#------------------------------------------------

# grant access configuration

# specify the user/group you would like to grant privileges to
repository.grant.users=db2user
#type of privilege being granted for specified entity
repository.grant.privilege=executePackage
#type of access level. Supported types are APPLICATION and MANAGER
repository.grant.accessLevel=manager
  1. Salve as mudanças no arquivo de configuração setup_repository.properties.
  2. Na visualização Package Explorer, clique duas vezes no arquivo setup_repository.xml para abri-lo em um editor se ainda não estiver aberto.
  3. Na visualização Outline, clique na tarefa grant_privileges .
  4. Clique com o botão direito do mouse e selecione Run As > Ant Build no menu de contexto.
  5. Insira a sua senha no prompt. Uma mensagem de status aparece na visualização Console, indicando se a operação foi concluída com êxito ou não, como mostra a Figura 11.
Figura 11. O acesso de gerenciador ao repositório foi concedido
O acesso de gerenciador ao repositório foi concedido
  1. Revise as tabelas de catálogos usando o Data Source Explorer no Optim Development Studio para verificar os privilégios que foram concedidos aos objetos de banco de dados subjacentes, como mostra a Figura 12.
Figura 12. Revisando permissões concedidas usando o Data Source Explorer e a visualização Properties
Revisando permissões concedidas usando o Data Source Explorer e a visualização Properties
  1. Para conceder privilégios adicionais ou revogá-los, repita as etapas de 1 a 13, tendo em mente que as definições de configuração correspondentes para a tarefa de revogação são nomeadas no arquivo de configuração como repository.revoke.users, repository.revoke.privileges e repository.revoke.accessLevel.
  2. Feche os arquivos setup_repository.properties e setup_repository.xml. Você não precisará mais deles durante este tutorial.

A configuração básica do repositório de gerenciamento de SQL está concluída. Os objetos de banco de dados de suporte foram criados e um usuário foi autorizado a gerenciá-los. Em seguida, é necessário conectar o Optim Development Studio ao repositório, permitindo que você trabalhe com aplicativos habilitados para pureQuery que são administrados usando este repositório.


Conectando o ODS a um repositório de gerenciamento de SQL

O Optim Development Studio (ODS) fornece um conjunto de ferramentas que simplificam tarefas comuns de gerenciamento de repositório. Essas ferramentas estão disponíveis por meio da perspectiva IBM Common Repositories.

Realize as etapas a seguir para conectar o ODS a um repositório:

  1. Abra o Optim Development Studio.
  2. Abra a perspectiva IBM Common Repositories selecionando Window > Open Perspective > Other > IBM Common Repositories a partir do menu principal. A visualização Common Repositories Explorer fornece acesso aos repositórios que podem ser gerenciados, como mostra a Figura 13.
Figura 13. A perspectiva IBM Common Repositories fornece acesso de gerenciamento aos repositórios conectados
A perspectiva IBM Common Repositories fornece acesso de gerenciamento aos repositórios conectados
  1. Observe que não há nenhuma conexão do repositório, apesar de você ter criado um repositório no banco de dados SQLMGMT. Antes de gerenciar esse repositório usando o Optim Development Studio, é necessário criar uma conexão do repositório.
  2. Na visualização Common Repositories Explorer, selecione Common Repositories Connections.
  3. Clique com o botão direito do mouse e selecione New no menu de contexto. O assistente New Common Repository é exibido.
  4. Insira um nome de repositório no campo Repository Name. Em uma implementação típica, você gerencia diversos repositórios. Dessa maneira, use nomes descritivos, como QA_LUW e PROD_ZOS, para ajudar a identificar facilmente o ambiente para o qual você gerencia aplicativos habilitados para pureQuery.
  5. Selecione uma conexão com o banco de dados já existente para o banco de dados do repositório que você criou anteriormente ou crie uma nova, se não houver nenhuma. Certifique-se de que essa conexão use as credenciais de um usuário ao qual foi concedido o acesso manager ao repositório. Figura 14 mostra um exemplo de uma configuração de conexão válida para o repositório que foi criado durante este tutorial.
Figura 14. Inclua uma conexão do repositório para começar a gerenciar um repositório
Inclua uma conexão do repositório para começar a gerenciar um repositório

Após a criação da conexão, a nova conexão do repositório é exibida no Common Repository Explorer. Agora você está pronto para gerenciar os seus aplicativos habilitados para pureQuery neste repositório de gerenciamento de SQL. Figura 15 mostra a exibição Common Repository Explorer depois da conexão ao repositório com êxito.

Figura 15. Agora o repositório recém-criado pode ser gerenciado por meio da perspectiva IBM Common Repositories
Agora o repositório recém-criado pode ser gerenciado por meio da perspectiva IBM Common Repositories

Resolução de problemas

Apresentamos a seguir algumas dicas e truques para um projeto bem-sucedido:

  • Os repositórios de gerenciamento de SQL não são eliminados se a conexão deles é excluída no Common Repository Explorer.
  • As conexões do repositório (e os nomes de conexão) não são compartilhadas entre instalações diferentes do Optim Development Studio. Em outras palavras, a conexão que você cria em um computador não é visível em outro computador. As informações de conexão que você forneceu só são armazenadas localmente no ODS e não no repositório em si.
  • Se ocorrer um erro indicando que o repositório não existe, certifique-se de que os objetos do banco de dados do repositório existem no banco de dados de destino. Também se certifique de que o ID do usuário que você está usando para se conectar ao banco de dados tem acesso de gerenciador.

Para obter informações sobre como aproveitar a perspectiva IBM Common Repositories Perspective, consulte Recursos.


Conclusão

Você configurou um repositório básico de gerenciamento de SQL com êxito realizando as seguintes tarefas:

  • Você criou os objetos de banco de que implementam o repositório e aprendeu a gerar o DDL que permite customizar algumas opções de implementação.
  • Você designou um usuário como gerente desse repositório, permitindo que esse ID acesse e manipule o conteúdo do repositório.
  • Você conectou o Optim Development Studio ao repositório usando o ID de gerenciador, que permite usar a perspectiva Optim Common Repositories para começar a gerenciar aplicativos habilitados para pureQuery.

Figura 16, que é uma versão ligeiramente modificada da Figura 2, mostra o que você fez neste tutorial: forneceu a base que permite gerenciar aplicativos habilitados para pureQuery com mais eficiência.

Figura 16. A infraestrutura do repositório foi criada com êxito
A infraestrutura do repositório foi criada com êxito

A Parte 2 desta série de tutoriais guia você pelo processo de gerenciar um aplicativo habilitado para pureQuery usando o repositório de gerenciamento de SQL. A Parte 3 desta série de tutoriais descreve uma abordagem para automatizar o processo de gerenciamento de aplicativos usando outro script Ant.

O script setup_repository.xml script mostra como é fácil encapsular a funcionalidade de baixo nível que o utilitário ManageRepository fornece e compensar alguns recursos de gerenciamento que não estão incluídos no Optim Development Studio. O centro de informações (consulte Recursos) fornece vários exemplos de como usar esse utilitário. Quando você estiver entendendo melhor as tarefas de gerenciamento de repositório, pode começar a criar suas próprias tarefas para criar um framework de automação para que você fique livre para fazer outras atividades — como ler tutoriais.

Agradecimentos

Os autores desejam agradecer aos revisores por suas ideias acertadas. Vocês sabem quem vocês são, e nós agradecemos pelo apoio oferecido ao longo dos anos.


Download

DescriçãoNomeTamanho
Sample tutorial ANT scriptsetup_repository_using_ANT.zip3KB

Recursos

Aprender

Obter produtos e tecnologias

Discutir

Comentários

developerWorks: Conecte-se

Los campos obligatorios están marcados con un asterisco (*).


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

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

 


A primeira vez que você entrar no developerWorks, um perfil é criado para você. Informações no seu perfil (seu nome, país / região, e nome da empresa) é apresentado ao público e vai acompanhar qualquer conteúdo que você postar, a menos que você opte por esconder o nome da empresa. Você pode atualizar sua conta IBM a qualquer momento.

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

Elija su nombre para mostrar



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.

Los campos obligatorios están marcados con un asterisco (*).

(Escolha um nome de exibição de 3 - 31 caracteres.)

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

 


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


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Information Management, Tecnologia Java
ArticleID=657590
ArticleTitle=Gerenciando aplicativos habilitados para pureQuery com eficiência, Parte 1: Configure um repositório de gerenciamento de SQL usando um script Ant
publish-date=07192011