{"id":6320,"date":"2021-09-07T00:23:51","date_gmt":"2021-09-07T00:23:51","guid":{"rendered":"https:\/\/swiv.com.br\/introduction-to-oracle-time-model\/"},"modified":"2026-05-27T20:02:30","modified_gmt":"2026-05-27T19:02:30","slug":"introduction-to-oracle-time-model","status":"publish","type":"post","link":"https:\/\/swiv.com.br\/index.php\/2021\/09\/07\/introduction-to-oracle-time-model\/","title":{"rendered":"Introduction to Oracle Time Model"},"content":{"rendered":"\n<p>No que concerne \u00e0 performance de banco de dados Oracle, a Time Model \u00e9 uma das ferramentas dispon\u00edveis que podemos utilizar durantes nossas investiga\u00e7\u00f5es. O objetivo desse artigo \u00e9 expor o conceito b\u00e1sico dela, de modo que possamos praticar o seu uso nos artigos posteriores.<\/p>\n\n\n\n<p>Quando nosso banco de dados est\u00e1 dispon\u00edvel, e n\u00e3o h\u00e1 nenhuma requisi\u00e7\u00e3o da camada cliente para o banco, dizemos que o mesmo est\u00e1 no estado &#8220;Iddle&#8221;. Obviamente, internamente o banco est\u00e1 operando atrav\u00e9s dos seus processos de background, mas do ponto de vista do usu\u00e1rio final, ele n\u00e3o est\u00e1 fazendo nada. Esse estado \u00e9 registrado no dicion\u00e1rio de dados com uma classe de evento chamada &#8220;Iddle waiting&#8221;, que significa que o banco est\u00e1 aguardando requisi\u00e7\u00f5es da camada cliente:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/swiv.com.br\/wp-content\/uploads\/2022\/07\/iddle.png\" alt=\"\" class=\"wp-image-7422\"\/><\/figure>\n<\/div>\n\n\n<p>Assim que o cliente manda uma requisi\u00e7\u00e3o para o banco de dados, o mesmo come\u00e7a a process\u00e1-la. Quando o banco est\u00e1 servindo a requisi\u00e7\u00e3o, ele pode consumir recursos computacionais, como CPU, mem\u00f3ria, disco, etc. O tempo que o banco investe consumindo o recurso de CPU \u00e9 chamado de &#8220;CPU TIME&#8221; ou &#8220;DB CPU&#8221;.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/swiv.com.br\/wp-content\/uploads\/2022\/07\/cpu.png\" alt=\"\" class=\"wp-image-7423\"\/><\/figure>\n<\/div>\n\n\n<p>Como esses recursos computacionais s\u00e3o compartilhados entre diversos outros processos no ambiente, nem sempre os mesmos est\u00e3o dispon\u00edveis para o banco de dados executar o que foi delegado. Diversas vezes, o banco de dados deseja consumir um recurso, e o mesmo est\u00e1 ocupado, e o banco precisa esperar um tempo para que o recurso fique dispon\u00edvel novamente e possa ser consumido. Este tempo de espera \u00e9 chamado de &#8220;DB WAITS&#8221;. E para cada tipo de recurso ocupado, h\u00e1 o que chamamos de &#8220;Wait Events&#8221;:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/swiv.com.br\/wp-content\/uploads\/2022\/07\/wait.png\" alt=\"\" class=\"wp-image-7425\"\/><\/figure>\n<\/div>\n\n\n<p>O tempo que o banco esteve engajado em atender a requisi\u00e7\u00e3o do cliente (tanto o tempo consumindo os recursos computacionais E o tempo aguardando esses recursos) \u00e9 chamado de &#8220;DB TIME&#8221;:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/swiv.com.br\/wp-content\/uploads\/2022\/07\/dbtime-1.png\" alt=\"\" class=\"wp-image-7426\"\/><\/figure>\n<\/div>\n\n\n<p>O conjunto de estat\u00edsticas que descrevem <strong>ONDE<\/strong> o &#8220;DB TIME&#8221; foi gasto dentro do banco de dados \u00e9 chamado de &#8220;Time Model&#8221;. H\u00e1 uma classifica\u00e7\u00e3o desse tempo em diferentes grupos (como no exemplo abaixo) , que nos ajuda a entender onde o banco de dados precisou investir mais tempo para processar as requisi\u00e7\u00f5es dos clientes:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/swiv.com.br\/wp-content\/uploads\/2022\/07\/time.png\" alt=\"\" class=\"wp-image-7427\"\/><\/figure>\n<\/div>\n\n\n<p> Obs: Este procedimento foi criado pelo senhor Ahmed Baraka (www.ahmedbaraka.com) e foi apenas reproduzido por mim em um laborat\u00f3rio pessoal para fins de aprendizado.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>No que concerne \u00e0 performance de banco de dados Oracle, a Time Model \u00e9 uma das ferramentas dispon\u00edveis que podemos utilizar durantes nossas investiga\u00e7\u00f5es. O objetivo desse artigo \u00e9 expor o conceito b\u00e1sico dela, de modo que possamos praticar o seu uso nos artigos posteriores. Quando nosso banco de dados est\u00e1 dispon\u00edvel, e n\u00e3o h\u00e1 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"class_list":["post-6320","post","type-post","status-publish","format-standard","hentry","category-performance"],"_links":{"self":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/6320","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=6320"}],"version-history":[{"count":1,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/6320\/revisions"}],"predecessor-version":[{"id":9052,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/6320\/revisions\/9052"}],"wp:attachment":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=6320"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=6320"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=6320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}