Estender Definições de Origem de Dados do DB2 no Nível do Aplicativo

Estender definições de origem de dados, que consistem em propriedades não-core ou customizadas, para fontes de dados DB2® para adicionar um maior nível de flexibilidade de aplicação quando você estiver usando o driver DB2 Universal JDBC ou DB2 usando o driver IBM® JCC. Esse recurso é referido, às vezes, como conjunto heterogêneo. Use este recurso para configurar uma fonte de dados DB2 no servidor de aplicativos com um conjunto principal de propriedades de origem de dados, e defer a aplicativos individuais para definir quaisquer propriedades customizadas ou não-core, como currentSchema ou clientApplicationInformation, que você deseja que seja aplicativo específico. Também é possível utilizar essas definições estendidas para substituir quaisquer propriedades não críticas ou customizadas que já estão definidas para a origem de dados. Além disso, esse recurso pode reduzir o número de conexões físicas que o servidor de aplicativos utiliza, ao empregar um conjunto de conexões entre recursos conectados à mesma origem de dados.

Antes de Começar

Você deve estar usando uma fonte de dados DB2 , e a fonte de dados deve ser configurada no servidor de aplicativos com um dos seguintes provedores JDBC :
  • DB2 Universal JDBC driver (Versão 3.4.2081 ou superior)
  • DB2 Usando o driver IBM JCC (Version 3.53.65 ou superior)

Sobre esta Tarefa

Associe propriedades não críticas a diferentes referências de recursos para uma origem de dados, e configure seus aplicativos para aproveitar essas referências de recursos para estender ou substituir quaisquer propriedades não críticas para a origem de dados. É possível escolher definir novas propriedades não críticas ou customizadas, ou substituir quaisquer propriedades não críticas que já estão definidas para a origem de dados.
Além disso, os aplicativos podem compartilhar o mesmo conjunto de conexões no servidor de aplicativos, mesmo se cada aplicativo possuir seu próprio conjunto exclusivo de propriedades de origem de dados. Pode haver apenas uma origem de dados definida no servidor de aplicativos e, portanto, apenas um conjunto de conexões, mas para aplicativos individuais, aparentará haver mais de uma origem de dados do que foi definido. Isso pode resultar em:
  • Redução de consumo de memória pelo servidor de aplicativos. As definições da origem de dados corresponderão a um conjunto de conexões, portanto, haverá menos objetos na memória em comparação a uma definição de origem de dados que corresponde ao seu próprio conjunto de conexões.
  • Redução do número de conexões abertas para a origem de dados, que poderá reduzir o consumo de memória pela origem de dados. O servidor de aplicativos pode reduzir o número de conexões ociosas, fornecendo um conjunto de conexões que corresponde a diversas origens de dados, fornecendo um uso mais eficiente das conexões.
  • Evasão de transações de confirmação de duas fases (XA) em determinados cenários DB2 , quando seus aplicativos utilizam o padrão de conexão get/use/close. O servidor de aplicativos pode compartilhar conexões entre diferentes referências de recursos que têm o mesmo conjunto de propriedades críticas, mesmo se tiverem propriedades não críticas diferentes na mesma transação. Esse comportamento pode evitar o processamento two-phase commit se o compartilhamento de conexões levar o servidor de aplicativos a utilizar uma, e somente uma, conexão física.

Procedimento

  1. Atualize as definições de origens de dados para um aplicativo que já está instalado.
    1. Navegue até o painel para gerenciar as referências de recursos para o aplicativo.
      • Para aplicativos que não utilizam a persistência gerenciada por container, clique em Aplicativos > WebSphere aplicativos corporativos > application_name > Referências de recurso.
      • Para aplicativos que usam persistência gerenciada por container, clique em Aplicativos > Aplicativos corporativos doWebSphere > application_name > Fornecer mapeamento de fonte de dados padrão para módulos contendo 2.x beans de entidade. Não é possível incluir propriedades estendidas para beans CMP individuais.
      • É possível configurar dois arquivos de referência de recurso na mesma origem de dados. Isso permite que você estenda as propriedades customizadas na fonte de dados para incluir dois nomes de esquemas diferentes (currentSQLId no z/OS® ou currentSchema name nas propriedades customizadas) que podem ser usados para explorar as capacidades do servidor de aplicação. Consulte o tópico Configurar Dois Arquivos de Referência de Recurso na mesma Origem de Dados para obter informações adicionais.
        Nota: Para IBM Optim™ PureQuery Runtime, se esta for uma fonte de dados XA você deve definir uma nova propriedade customizada na origem de dados em que nome_proprio = downgradeHoldCursorsUnderXa e valor booleano = true.
    2. Navegue até o painel das propriedades de origens de dados estendidas.
      Selecione um recurso a partir da tabela e clique em Propriedades estendidas ... no painel antes das linhas da tabela. Se a origem de dados não suportar as propriedades das origens de dados estendidas, você receberá um erro ao tentar aplicar essas mudanças.
    3. Inclua uma ou mais propriedades customizadas de origem de dados estendida que sejam específicas para esse recurso de destino.
      Clique em Novo e preencha os campos necessários. Repita esta etapa para cada propriedade para a qual deseja estender a origem de dados. Quando concluído, clique em OK para retornar à tela anterior. Não é possível modificar as seguintes propriedades da origem de dados, que devem ser as mesmas para todos os aplicativos que utilizam essa origem de dados:
      • accountingInterval
      • dataSourceName
      • databaseName
      • kerberosServerPrincipal
      • loginTimeout
      • logWriter
      • senha
      • pkList
      • planName
      • portNumber
      • readOnly
      • securityMechanism
      • serverName
      • Usuário
    4. Opcional: Configure dois res-refs e o nível de isolamento no ibm-ejb-jar-ext.xml
  2. Crie definições de origem de dados para um aplicativo durante a instalação.
    1. Navegue até o painel para mapear as referências de recurso para o aplicativo. Selecione a etapa de instalação Mapear referências de recurso para recursos e siga as etapas b e c da etapa 1 que descrevem como atualizar as definições de origem de dados para um aplicativo que já está instalado.
  3. Opcional: Para evitar transações de confirmação de duas fases, empregue o padrão de conexão get/use/close.
    O padrão obter/utilizar/fechar é quando um aplicativo obtém uma conexão de uma origem de dados ou connection factory e conclui o trabalho atual em um único método, e o aplicativo não chamará outro método até esse trabalho ser concluído.
    1. Verifique se seus aplicativos utilizam o padrão de conexão obter/utilizar/fechar.
    2. Ative o servidor de aplicativos para verificar a utilização do padrão de conexão obter/utilizar/fechar nos aplicativos, que evitará o processamento two-phase commit se o compartilhamento levar ao uso de uma, e somente uma, conexão física.
      1. Clique em Recursos > JDBC > Origens de Dados > data_source > Propriedades de origem de dados doWebSphere Application Server
      2. Selecione Otimizar para o padrão de conexão obter/utilizar/fechar com criação de conjunto heterogêneo. Você receberá mensagens de erro se selecionar essa opção e se seus aplicativos não utilizarem o padrão de conexão obter/utilizar/fechar.
  4. Opcional: O pooling Heterogêneo é ativado por padrão. Sob certas circunstâncias, pode ser desejável desativar o conjunto heterogêneo de uma origem de dados. Uma propriedade customizada da origem de dados pode ser definida para desativar este suporte ao conjunto. A propriedade customizada da origem de dados é chamada, enableHeterogeneousPooling. Se enableHeterogeneousPooling não for definida para uma origem de dados ou se esta propriedade existir para uma origem de dados e tiver o valor true, então o conjunto heterogêneo é ativado. Se enableHeterogeneousPooling for definido para uma origem de dados e tiver o valor false, então o conjunto heterogêneo é desativado. Para definir enableHeterogeneousPooling para uma origem de dados e desativar o conjunto heterogêneo, execute as etapas a seguir:
    1. Clique em Recursos> JDBC provedor> JDBC_provider
    2. Em propriedades adicionais, clique em Origens de dados.
    3. Clique no nome da origem de dados.
    4. Crie a propriedade customizada enableHeterogeneousPooling.
      1. Clique em Novo.
      2. Digite enableHeterogeneousPooling para o campo de nome.
      3. Digite false no campo de valor para especificar se deseja desativar o conjunto heterogêneo.
    5. Clique em Aplicar depois em Salvar.