Carreira Dev

20 ago, 2014

Prepare-se para a entrevista do Oracle Real Application Clusters

Publicidade

Veja neste artigo como se preparar para a entrevista do RAC – Oracle Real Application Clusters.

***

O que é cache de fusão?

Em um ambiente RAC (Real Application Clusters ou clusters de aplicação real), um cache de fusão é a combinação dos blocos de dados que são enviados através da interconexão de caches dos banco de dados remotos (SGA – System Global Area) para o nó local, com a finalidade de cumprir os requisitos para uma determinada transação (DML, Consulta de Dicionário de Dados).

O que é split brain?

Quando os nós em um cluster de banco de dados não são capazes de comunicar-se uns com os outros, podem continuar a processar informações e modificar os blocos de dados de forma independente. Se o mesmo bloco for modificado por mais de uma instância, a sincronização ou o bloqueio dos blocos de dados não ocorre, e os blocos podem ser substituídos por outros que estiverem disponíveis no cluster. Esse estado é chamado de split brain (algo como inteligência dividida).

Qual é a diferença entre uma recuperação de falha (crash recovery) e uma recuperação de instância (instance recovery)?

Quando uma instância falha em um único nó de banco de dados no momento de sua inicialização, ocorre uma recuperação de falha. Em um ambiente RAC, a recuperação de uma instância é realizada pelos nós sobreviventes a essa inicialização, e esse procedimento interno do nó de banco de dados é chamado de recuperação de instância.

Para que serve a interconexão?

A interconexão é uma rede privada, utilizada para transportar os blocos de dados de uma instância para outra através do cache de fusão. Os blocos de dados físicos, bem como os blocos dos dicionário de dados, são compartilhados por meio dessa interconexão.

Como podemos determinar o protocolo que está sendo usado para o tráfego de interconexão?

Uma das maneiras de se determinar o tipo de protocolo utilizado no tráfego de uma interconexão é analisar o log de erros do banco de dados filtrando os resultados pelo período de tempo em que o banco de dados foi iniciado.

Quais métodos estão disponíveis para manter o horário sincronizado em todos os nós do cluster?

O Network Time Protocol (NTP) pode ser configurado para manter os horários atualizados, ou então, na versão 11gR2 do Oracle, é possível utilizar o Cluster Time Synchronization Service (CTSS).

Quais arquivos em um ambiente RAC devem residir no armazenamento compartilhado?

Spfiles (arquivos de parâmetros de servidor), ControlFile (arquivos de controle), DataFiles (arquivos de dados) e Redolog (arquivos de transações que podem ser desfeitas) devem ser mantidos no armazenamento compartilhado.

Em que local o Clusterware escreve quando é perdida a conexão com a rede ou com o sistema de armazenamento?

As falhas de rede e conexão com sistema de armazenamento são escritas em $CRS_HOME/log.

Como é possível saber quais backups OCR (Oracle Cluster Registry) estão disponíveis?

O comando ocrconfig-showbackup pode ser executado para descobrir quais são os backups automáticos ou manuais existentes.

Se o backup OCR estiver corrompido, quais opções podem auxiliá-lo a resolver isso?

É possível usar a lógica ou uma cópia de um backup OCR físico para restaurar o repositório.

Como descobrir qual objeto está enviando dados excedentes para a instância?

É possível usar o comando dba_hist_seg_stats.

O que é um VIP em um ambiente RAC e para que serve?

Um VIP (Virtual IP) é um endereço IP virtual alternativo atribuído a cada nó em um cluster. Durante a falha de um nó, o VIP dos nós que falharam serão movidos para outro nó que não tenha falhado, e esse dado será replicado em tempo real para o aplicativo cujo nó falhou. Sem o VIP, o aplicativo irá esperar até o tempo limite do protocolo TCP e então descobrir que a sessão não está mais ativa, devido à falha.

Como saber quais instâncias do banco de dados são parte de um cluster RAC?

É possível consultar o parâmetro V$ACTIVE_INSTANCES para determinar quais instâncias são de membros do cluster RAC.

Para que o OCLUMON é utilizado em um ambiente de cluster?

O Cluster Health Monitor (CHM) armazena métricas do sistema operacional no repositório CHM para todos os nós em um cluster RAC. São armazenadas informações sobre a CPU, memória, processos e outros dados do sistema operacional e de rede. Essa informação pode ser recuperada posteriormente e utilizada para solucionar problemas e identificar eventuais falhas em um determinado cluster. É um componente instalado por padrão na versão 11gR2. Os dados são armazenados no repositório mestre e replicados para um repositório reserva em um nó diferente.

Qual seria o impacto de desempenho em um cluster caso um nó menos potente (por exemplo, uma CPU lenta) seja adicionado ao cluster?

Todo o processamento será mais lento, chegando somente até a velocidade da CPU adicionada.

Qual é o propósito do OLR?

O ORL (repositório Oracle local) contém informações que permitem que os processos do cluster sejam iniciados em conjunto com os backups OCR e permaneçam presentes no sistema de armazenamento ASM. Caso o sistema ASM esteja indisponível, será inicializada uma cópia local do conteúdo do backup OCR, que será armazenado no ORL.

Qual é a alocação de memória padrão para um ASM?

Na versão Oracle 10g, o tamanho padrão SGA é de 1GB e, no Oracle 11g, o tamanho padrão é de 256MB. No Oracle 12c, o tamanho de memória voltou a ser de 1GB.

Como é feito o backup dos metadados ASM?

É possível utilizar o comando md_backup para restaurar a configuração do grupo de discos ASM em caso de perda da conexão com o sistema de armazenamento.

Quais arquivos podem ser armazenados no grupo de discos ASM?

No Oracle 11g, os seguintes arquivos podem ser armazenados nos grupos de discos ASM:

  • Datafiles (arquivos de dados)
  • Redologs (arquivos de transações que podem ser desfeitas)
  • Spfiles (arquivos de parâmetros de servidor)

 

No Oracle 12c, os Password files (arquivos de senhas) também podem ser armazenados no grupo de discos ASM.

O que é o POWER_LIMIT em sistemas ASM?

Este é o parâmetro que controla o número de unidades de alocação de uma instância ASM para reequilibrar as instâncias a qualquer momento. Nas versões do sistema ASM menores do que 11.2.0.3, o valor padrão é de 11 unidades de alocação. No entanto, esse valor foi alterado para ilimitado nas versões posteriores.

O que é uma atualização sem interrupção (rolling upgrade)?

O caminho físico de um repositório pode ser considerado como um local para atualização sem interrupção caso os arquivos de atualização possam ser aplicados à instância sem ter de desligar o banco de dados em um ambiente RAC. Todos os nós do cluster são atualizados de uma só vez, um após o outro, permanecendo indisponível apenas o nó que está sendo corrigido enquanto todos os outros nós da instância continuam ativos.

Quais são alguns dos parâmetros específicos de um ambiente RAC?

Alguns dos parâmetros RAC são:

  • CLUSTER_DATABASE
  • CLUSTER_DATABASE_INSTANCE
  • INSTANCE_TYPE (RDBMS ou ASM)
  • ACTIVE_INSTANCE_COUNT
  • UNDO_MANAGEMENT

***

Artigo traduzido pela Redação iMasters com autorização do autor. Publicado originalmente em http://www.vitalsofttech.com/careers/rac-interview-questions/