Storage Exadata: Protocolo iDB

Salve galera do mal! Eis que estou aqui de volta pra falar mais um assunto da série Storage Exadata. Irei abordar hoje o Intelligent Database Protocol, para os íntimos apenas iDB. Este protocolo é único e somente pode ser encontrado em servidores com storage Exadata e isso não é a toa. O protocolo está implementado no kernel do banco de dados Oracle e foi construído sobre o padrão de indústria RDS (Reliable Datagram Sockets versão 3) e executa sobre a Infiniband ZDP (Zero-Loss Zero-Copy Datagram Protocol) que é uma implementação cópia zero (Zero-Copy) do protocolo RDS, com isso é eliminada a desnecessária cópia de blocos, permitindo maior eficiência na rede.

É graças a este protocolo utilizado em comunicação entre os storage servers e os database nodes que é possível identificar o tipo de I/O que é enviado pelo servidor de banco de dados, por exemplo, seria impossível ter o benefício de cell offloading ou Smart Scan sem este protocolo. Dentro do servidor de storage, estão em execução três principais processos: CELLSRV; Management Server; e Restart Server. Em especial sobre o protocolo iDB, o processo CELLSRV é responsável pelas requisições de I/O efetuadas via iDB para poder efetuar as tratativas inteligentes como o cell offloading.

Foi aqui, no meu ponto de vista, que a Oracle acertou na construção de um hardware que entendesse o que o banco de dados está executando, sem isso nós teríamos apenas servidores ODA (Oracle Database Appliance) no mercado. E é por isso que o Exadata Storage Server é o futuro dos Engineered Systems e será muito difícil novos hardwares tomarem o seu lugar. Pois hardware e inteligência em infraestrutura todo mundo consegue copiar ou aprimorar muito rápido, porém software demora um pouco mais. Galera vou ficando por aqui, aquele abraaaaaaaa.