Teste de desempenho entre PDB e CDB

Olá pessoal, eu já estava para fazer esse teste há um bom tempo. Há mais de um ano que tinha um rascunho salvo aqui para escrever algo a repeito. Então finalmente vamos tirar a prova se há diferença de desempenho em usar um PDB para armazenar nossos dados.

Para realizar este teste estou usando uma VM no VirtualBox com 8GB de RAM e 2 cores de CPU, entreguei um disco SSD de tamanho fixo exclusivo para o datafile da tablespace SOE num filesystem XFS. O sistema operacional utlilizado no teste é o Oracle Enterprise Linux 6.8 e o banco de dados é o Oracle Database 12.1.0.2. Estou utilizando o Swingbench para realizar o teste de carga. Os parâmetros estão todos nos valores default e não há diferença de parâmetros do CDB para o PDB. A SGA está com 1GB e a PGA com 120MB, o banco de dados não está com Archivelog e nem Flashback habilitado. São 5 grupos de redolog com 500MB cada um e somente um membro em cada grupo. Antes de cada iniciar cada um dos testes efetuo flush da shared pool e do buffer cache.

Teste 1: Desempenho PDB

No primeiro teste crio o schema SOE no SOEPDB e armazeno os dados na tablespace SOE. Após criar o schema SOE e popular inicialmente 1GB de dados disparo a aplicação, que fica em execução durante 10 minutos com 4 usuários realizando operações simultaneamente.

desempenho PDB

32779 TPM / 552 TPS

Teste 2: Desempenho CDB

No segundo teste crio o schema SOE diretamente no CDB1 e armazeno os dados na tablespace SOE. Após criar o schema SOE e popular inicialmente 1GB de dados disparo a aplicação, que fica em execução durante 10 minutos com 4 usuários realizando operações simultaneamente.

desempenho CDB

33070 TPM / 565 TPS

O teste foi bastante simples e comprovou que não há perda ou ganho significativos de desempenho na nova arquitetura Multitenant. A principal razão para utilizá-la é realmente para facilitar a consolidação e o gerenciamento de bancos de dados, onde podemos isolá-los em PDBs e tratá-los de maneira individualizada.

Espero que tenham gostado e que possam defender o uso do Multitenant sem se preocupar com o desempenho.

Abraços e até mais,

Franky