|Embora a junção de blocos de linhas para um conjunto de resultados de |consulta não seja nada novo, o DB2 para z/OS (antigamente chamado de DB2 para |OS/390) desde que em suas Versões de release 6.1 tinha a capacidade de |retornar múltiplos blocos de consulta em resposta a uma solicitação ABERTA ou |RECUPERADA para um cliente remoto, assim como o DB2 Connect. Melhor do |que enviar repetitivamente solicitações ao DB2 para o servidor z/OS |solicitando um bloco de dados em linha a cada vez, o cliente agora pode |opcionalmente solicitar que o servidor envie de volta um número adicional de |blocos de consulta. Tais blocos adicionais de consulta são chamados |blocos de consulta extra.
|Este novo recurso permite que o cliente minimize o número de retornos de |linha de rede, que causa o principal impacto no desempenho da rede. A |diminuição no número de solicitações enviadas pelo cliente ao servidor para |blocos de consulta resulta em um significante impulso de desempenho já que a |comutação entre um envio e resposta é uma operação dispendiosa em termos de |desempenho. O DB2 Connect agora pode aproveitar este aumento de |desempenho através da solicitação de blocos de consulta extra por padrão de um |DB2 para servidor z/OS.
|Para obter vantagem total do retorno de blocos de consulta extra (cada um |pode ter até 32K bytes) para protocolos de rede TCP/IP, extensões Window |Scaling também podem ser ativadas como arquitetadas de acordo com o RFC-1323 |no DB2 Connect. Este recurso permite ao TCP/IP se ajustar dinâmica e |eficientemente ao tamanho das janelas de envio e recepção para acomodar as |possíveis grandes quantidades de dados retornados pelos blocos de consulta |extra.
|O suporte para o bloco de consulta extra nos servidores DB2 para z/OS nas |Versões 6.1 ou posteriores é configurado através do parâmetro EXTRA |BLOCKS SRV no painel de instalação do DB2 DDF. Este parâmetro controla |o número máximo de blocos de consulta extra que o DB2 pode retornar a um |cliente para uma solicitação e pode ser definido em um valor entre 0 e |100. A definição do valor do parâmetro em 0 desativa o retorno de |blocos de consulta extra. O valor padrão em 100 deve ser utilizado para |obter maior benefício deste recurso, à exceção de qualquer peculiaridade na |rede que possa tornar esta definição não ideal
|No lado do cliente em que o aplicativo tem acesso ao DB2 para z/OS tanto |diretamente, através de uma instalação localizada no DB2 Connect ou através de |uma instalação do servidor DB2 Connect, existem vários meios de ativar o |suporte correspondente do DB2 Connect em uma base de cursor ou instruções |através da utilização de: |
|A opção 1 não é coberta nesta seção pois já foi implementada como parte da |publicação DB2 for z/OS Scrollable Support no DB2 Connect Versão 7.1 |FixPak 2. Nosso foco está na utilização das opções 2 e 3 para ativar o |suporte de bloco de consulta extra utilizando diferentes APIs SQL como a |seguir: |
|O Window Scaling é suportado a partir do FixPak 4 em todas as plataformas |Windows e UNIX que suportam as extensões RFC-1323 para TCP/IP. Este |recurso pode ser ativado no DB2 para Windows e UNIX através do registro |variável DB2SORCVBUF do DB2. Para ativar o Window Scaling, defina o |registro variável DB2SORCVBUF do DB2 para qualquer valor acima de 64K (por |exemplo, no DB2 para Windows ou UNIX, você pode definir db2set DB2SORCVBUF |=65537). O tamanho máximo do buffer de recebimento e envio depende do |sistema operacional específico. Para garantir que os tamanhos de buffer |configurados foram aceitos, o usuário pode definir o parâmetro de configuração |de gerenciamento de banco de dados DIAGLEVEL para 4 (informacional) e |verificar as mensagens do arquivo db2diag.log.
|Para que o Window Scaling funcione, ele deve ser ativado em ambos os finais |de uma conexão. Por exemplo, para ativar o Window Scaling entre a |estação de trabalho do DB2 Connect e o host, este recurso deve ser ativando |tanto na estação de trabalho como no host, seja diretamente através da pilha |TCP/IP do sistema operacional ou indiretamente através do produto DB2. |Por exemplo, para o DB2 para z/OS, o Window Scaling pode ser atualmente |ativado através do sistema operacional definindo o TCPRCVBUFRSIZE para |qualquer valor acima de 64K.
|Se um cliente remoto do DB2 é utilizado para acesso ao host do DB2 através |de uma estação de de trabalho do servidor DB2 Connect, o Window Scaling pode |ser ativado também no cliente. Pelo mesmo token, o Window Scaling |também pode ser ativado entre um cliente remoto do DB2 e uma estação de |trabalho do servidor DB2 quando nenhum host DB2 estiver envolvido.
|Embora o Window Scaling seja projetado para aumentar o desempenho da rede, |a melhoria de desempenho da rede esperada nem sempre acontece. A |interação entre fatores tais como o tamanho da estrutura utilizada pela |Ethernet ou placa LAN token ring LAN, o tamanho do IP MTU, e outras definições |em roteadores através do link de comunicação podem resultar em queda de |desempenho uma vez que o Window Scaling tenha sido ativado. Por padrão, |o Window Scaling é desativado com os dois buffers finais definidos para |64K. O usuário deve estar preparado para calcular o impacto de ação do |Window Scaling e executar qualquer ajuste necessário à rede. Para uma |introdução ao ajuste de rede para melhorar o desempenho da rede, consulte as |informações oficiais no endereço |http://www.networking.ibm.com/per/per10.html.