Fatores a considerar para a implantação do banco de dados Oracle
Uma nuvem pública oferece muitas opções de computação e storage. Além disso, usar o tipo correto de instância de computação e mecanismo de storage é um bom lugar para começar a implantação do banco de dados. Você também deve selecionar configurações de computação e storage otimizadas para bancos de dados Oracle.
As seções a seguir descrevem as principais considerações ao implantar um banco de dados Oracle na nuvem pública do Azure em uma instância de máquina virtual do Azure com armazenamento Azure NetApp Files.
Tipo e dimensionamento da VM
Selecionar o tipo e o tamanho corretos da VM é importante para o desempenho ideal de um banco de dados relacional em uma nuvem pública. Uma máquina virtual do Azure fornece uma variedade de instâncias de computação que podem ser usadas para hospedar cargas de trabalho de banco de dados Oracle. Consulte a documentação da Microsoft "Tamanhos para máquinas virtuais no Azure"para obter diferentes tipos de máquinas virtuais do Azure e seu dimensionamento. Em geral, a NetApp recomenda o uso de uma máquina virtual Azure de uso geral para a implantação de bancos de dados Oracle de pequeno e médio porte. Para a implantação de bancos de dados Oracle maiores, uma VM Azure otimizada para memória é apropriada. Com mais RAM disponível, um Oracle SGA maior ou cache flash inteligente pode ser configurado para reduzir a e/S física, o que, por sua vez, melhora o desempenho do banco de dados.
O Azure NetApp Files funciona como uma montagem NFS anexada a uma máquina virtual Azure, que oferece maior taxa de transferência e supera o limite de taxa de transferência de VM otimizada para storage com o storage local. Portanto, executar o Oracle no Azure NetApp Files pode reduzir a contagem de núcleos licenciáveis da CPU Oracle e os custos de licenciamento. Consulte "TR-4780: Bancos de dados Oracle no Microsoft Azure", Seção 7 - como funciona o Licenciamento Oracle?
Outros fatores a considerar incluem o seguinte:
-
Escolha a combinação correta de vCPU e RAM com base nas caraterísticas da carga de trabalho. À medida que o tamanho da RAM aumenta na VM, o mesmo acontece com o número de núcleos vCPU. Deve haver um saldo em algum momento, pois as taxas de licença Oracle são cobradas sobre o número de núcleos vCPU.
-
Adicione espaço de troca a uma VM. A implantação padrão da VM do Azure não cria um espaço de swap, o que não é ideal para um banco de dados.
Desempenho do Azure NetApp Files
Os volumes do Azure NetApp Files são alocados a partir de um pool de capacidade que o cliente precisa provisionar em sua conta de storage do Azure NetApp Files. Cada pool de capacidade é atribuído da seguinte forma:
-
A um nível de serviço que define a funcionalidade geral de performance.
-
A capacidade de storage provisionada inicialmente ou a disposição em camadas para esse pool de capacidade. Um nível de qualidade de serviço (QoS) que define a taxa de transferência máxima geral por espaço provisionado.
O nível de serviço e a capacidade de storage provisionada inicialmente determinam o nível de desempenho de um volume de banco de dados Oracle específico.
1. Níveis de serviço do Azure NetApp Files
O Azure NetApp Files oferece suporte a três níveis de serviço: Ultra, Premium e Standard.
-
* Ultra armazenamento.* Esse nível fornece até 128MiBps Gbps de taxa de transferência por 1TiB Gbps de cota de volume atribuída.
-
Armazenamento Premium. Esse nível fornece até 64MiBps Gbps de taxa de transferência por 1TiB Gbps de cota de volume atribuída.
-
Armazenamento padrão. Esse nível fornece até 16MiBps Gbps de taxa de transferência por 1TiB Gbps de cota de volume atribuída.
2. Piscina de capacidade e qualidade do serviço
Cada um dos níveis de serviço desejados tem um custo associado para a capacidade provisionada e inclui um nível de qualidade do serviço (QoS) que define a taxa de transferência máxima geral para o espaço provisionado.
Por exemplo, um pool de capacidade única provisionada por 10TiB TB com o nível de serviço premium fornece uma taxa de transferência global disponível para todos os volumes nesse pool de capacidade de 10x 64MBps TB, portanto, 640MBps TB com IOPs de 40.000 TB (16K TB) ou IOPs de 80.000 TB (8K TB).
O tamanho mínimo do pool de capacidade é de 4TiB TB. Você pode alterar o tamanho de um pool de capacidade em incrementos de 1TiB TB em resposta a alterações nos requisitos de workload para gerenciar necessidades e custos de storage.
3. Calcule o nível de serviço em um volume de banco de dados
O limite de taxa de transferência para um volume de banco de dados Oracle é determinado por uma combinação dos seguintes fatores: O nível de serviço do pool de capacidade ao qual o volume pertence e a cota atribuída ao volume.
O diagrama a seguir mostra como o limite de taxa de transferência para um volume de banco de dados Oracle é calculado.
No exemplo 1, um volume de um pool de capacidade com a camada de storage Premium que recebe 2TiB GB de cota recebe um limite de taxa de transferência de 128MiBps GB (2TiB * 64MiBps). Esse cenário se aplica independentemente do tamanho do pool de capacidade ou do consumo real de volume.
No exemplo 2, um volume de um pool de capacidade com a camada de storage Premium que recebe 100GiB GB de cota recebe um limite de taxa de transferência de 6,25MiBps GB (0,09765625TiB * 64MiBps). Esse cenário se aplica independentemente do tamanho do pool de capacidade ou do consumo real de volume.
Por favor, note que o tamanho mínimo do volume é 100GiB.
Layout e configurações de armazenamento
A NetApp recomenda o seguinte layout de storage:
-
Para bancos de dados pequenos, usando layout de volume único para todos os arquivos Oracle.
-
Para bancos de dados grandes, o layout de volume recomendado é vários volumes: Um para dados Oracle e um arquivo de controle duplicado e um para o log ativo Oracle, log arquivado e arquivo de controle. A NetApp recomenda alocar um volume para o binário Oracle em vez da unidade local para que o banco de dados possa ser relocado para um novo host e restaurado rapidamente.
Configuração NFS
O Linux, o sistema operacional mais comum, inclui funcionalidades nativas de NFS. A Oracle oferece um cliente NFS direto (DNFS) integrado nativamente ao Oracle. O Oracle DNFS ignora o cache do sistema operacional e permite o processamento paralelo para melhorar o desempenho do banco de dados. A Oracle tem suporte para NFSv3 por mais de 20 anos, e o NFSv4 é compatível com o Oracle 12.1.0.2i e versões posteriores.
Ao usar o DNFS (disponível desde o Oracle 11gi), um banco de dados Oracle executado em uma máquina virtual do Azure pode gerar significativamente mais I/o do que o cliente NFS nativo. A implantação automatizada do Oracle usando o kit de ferramentas de automação do NetApp configura automaticamente o DNFS no NFSv3.
O diagrama a seguir demonstra o benchmark SLOB no Azure NetApp Files com o Oracle DNFS.
Outros fatores a considerar:
-
As tabelas de slot TCP são o equivalente NFS à profundidade da fila do adaptador de barramento de host (HBA). Essas tabelas controlam o número de operações NFS que podem ficar pendentes de uma só vez. O valor padrão é geralmente 16, o que é muito baixo para um desempenho ideal. O problema oposto ocorre em kernels Linux mais recentes, que podem aumentar automaticamente o limite da tabela de slots TCP para um nível que satura o servidor NFS com solicitações.
Para um desempenho ideal e para evitar problemas de desempenho, ajuste os parâmetros do kernel que controlam as tabelas de slots TCP para 128.
sysctl -a | grep tcp.*.slot_table
-
A tabela a seguir fornece opções de montagem NFS recomendadas para uma única instância do Linux NFSv3.
Antes de usar o DNFS, verifique se os patches descritos no Oracle Doc 1495104,1 estão instalados. A matriz de suporte NetApp para NFSv3 e NFSv4 não inclui sistemas operacionais específicos. Todos os sistemas operacionais que obedeçam ao RFC são suportados. Ao pesquisar no IMT on-line para suporte a NFSv3 ou NFSv4, não selecione um sistema operacional específico porque não serão exibidas correspondências. Todos os SO são implicitamente suportados pela política geral. |