{"id":6568,"date":"2025-10-17T09:03:58","date_gmt":"2025-10-17T07:03:58","guid":{"rendered":"http:\/\/rootfan.com\/?p=6568"},"modified":"2025-10-17T09:06:41","modified_gmt":"2025-10-17T07:06:41","slug":"como-leer-un-informe-awr-en-oracle","status":"publish","type":"post","link":"https:\/\/rootfan.com\/es\/how-to-read-awr-report-in-oracle\/","title":{"rendered":"C\u00f3mo leer un informe AWR en Oracle"},"content":{"rendered":"<p>Cuando una base de datos Oracle se ralentiza, el primer lugar donde un DBA debe mirar es el <strong>Informe AWR<\/strong> - una instant\u00e1nea detallada de lo que ocurre dentro del sistema. <\/p>\n\n\n\n<p>Revela d\u00f3nde se invierte el tiempo, qu\u00e9 consultas consumen recursos y si la base de datos goza de buena salud o tiene problemas. <\/p>\n\n\n\n<p>En este art\u00edculo, repasaremos las secciones clave que hay que comprobar para saber r\u00e1pidamente si la base de datos funciona bien y d\u00f3nde hay que centrar los esfuerzos de ajuste.<\/p>\n\n\n\n<p>A continuaci\u00f3n se muestra el orden que yo (y la mayor\u00eda de los DBA senior) seguimos al analizar un informe AWR:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd0e An\u00e1lisis AWR: Lista de comprobaci\u00f3n paso a paso<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. \ud83d\udcca Resumen del informe (secci\u00f3n superior)<\/h3>\n\n\n\n<p>Esto le da una <strong>resumen r\u00e1pido<\/strong> de la salud de la base de datos.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Tiempo de BD frente a tiempo transcurrido<\/strong>\n<ul class=\"wp-block-list\">\n<li>Muestra el tiempo total dedicado a la actividad de la base de datos.<\/li>\n\n\n\n<li>\ud83d\udd0d Si <strong>DB Tiempo \u2248 Tiempo transcurrido \u00d7 #CPU n\u00facleos<\/strong>La carga de la base de datos es pesada.<\/li>\n\n\n\n<li>Regla de oro:\n<ul class=\"wp-block-list\">\n<li>\u2705 <strong>Saludable:<\/strong> El tiempo de BD por segundo es similar al n\u00famero de CPU (por ejemplo, ~8 s\/s para 8 CPU)<\/li>\n\n\n\n<li>\u274c <strong>Malo:<\/strong> Un \u2192 mucho m\u00e1s alto indica cuellos de botella.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Sesiones activas medias (AAS)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Tiempo DB \/ Tiempo transcurrido<\/li>\n\n\n\n<li>\u2705 <strong>Saludable:<\/strong> AAS \u2264 n\u00famero de n\u00facleos de CPU.<\/li>\n\n\n\n<li>\u274c <strong>Malo:<\/strong> AAS &gt; CPUs \u2192 el sistema est\u00e1 CPU-bound o esperando algo.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>%DB CPU<\/strong>\n<ul class=\"wp-block-list\">\n<li>Porcentaje de tiempo de la BD dedicado a la CPU.<\/li>\n\n\n\n<li>\u2705 60-90% significa que la mayor parte del tiempo se dedica a hacer un trabajo \u00fatil.<\/li>\n\n\n\n<li>\u274c Demasiado bajo \u2192 mayor tiempo de espera (IO, bloqueos, latches, etc.).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u2699\ufe0f Perfil de carga<\/h3>\n\n\n\n<p>Esto le indica lo \"ocupada\" que est\u00e1 su base de datos.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Llamadas a BD \/ Transacciones \/ Ejecuciones por segundo<\/strong> - Da idea de la carga de trabajo.<\/li>\n\n\n\n<li><strong>Tama\u00f1o de repetici\u00f3n por segundo<\/strong> - Alto redo = DML pesado.<\/li>\n\n\n\n<li><strong>Lecturas l\u00f3gicas por segundo<\/strong> - Refleja la actividad de la cach\u00e9 del b\u00fafer.<\/li>\n\n\n\n<li><strong>Lecturas f\u00edsicas por segundo<\/strong> - Los valores altos pueden significar un almacenamiento en cach\u00e9 deficiente o exploraciones completas.<\/li>\n\n\n\n<li><strong>An\u00e1lisis por segundo<\/strong> - Demasiados parses = mala compartici\u00f3n del cursor (busque % alto de parses duros).<\/li>\n<\/ul>\n\n\n\n<p>\u2705 <strong>Signos saludables:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Baja tasa de an\u00e1lisis sint\u00e1ctico (&lt;5%)<\/li>\n\n\n\n<li>Lecturas l\u00f3gicas &gt;&gt; lecturas f\u00edsicas<\/li>\n\n\n\n<li>An\u00e1lisis por ejecuci\u00f3n &lt; 0,1 (lo que significa que la mayor\u00eda de las sentencias se reutilizan)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">3. \ud83d\udd25 Los 5 principales eventos en primer plano cronometrados<\/h3>\n\n\n\n<p>Esto es <strong>el coraz\u00f3n del an\u00e1lisis AWR<\/strong>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Muestra <strong>d\u00f3nde se pasa la mayor parte del tiempo de la base de datos<\/strong>.<\/li>\n\n\n\n<li>Busque los principales eventos de espera y compruebe su naturaleza:<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Tipo de evento<\/th><th>Significado<\/th><th>Qu\u00e9 pensar<\/th><\/tr><\/thead><tbody><tr><td><code>Tiempo de CPU<\/code><\/td><td>Buena se\u00f1al si top<\/td><td>La base de datos est\u00e1 limitada por la CPU (compruebe el AAS y la CPU)<\/td><\/tr><tr><td><code>archivo db lectura secuencial<\/code><\/td><td>E\/S de un solo bloque (b\u00fasqueda de \u00edndices)<\/td><td>OK si es bajo, pero alto \u2192 E\/S lenta o acceso excesivo al \u00edndice.<\/td><\/tr><tr><td><code>archivo db lectura dispersa<\/code><\/td><td>Escaneado completo de tablas<\/td><td>Posibles \u00edndices que faltan<\/td><\/tr><tr><td><code>sincronizaci\u00f3n de archivos de registro<\/code><\/td><td>Compromete esperas<\/td><td>Confirmar con demasiada frecuencia o redo lento I\/O<\/td><\/tr><tr><td><code>enq: TX - contenci\u00f3n de bloqueo de fila<\/code><\/td><td>Contenci\u00f3n de bloqueo<\/td><td>Problemas de concurrencia de aplicaciones<\/td><\/tr><tr><td><code>latch: cadenas de memorias cach\u00e9<\/code><\/td><td>Contenci\u00f3n de bloques en caliente<\/td><td>Ajuste de la cach\u00e9 o las consultas<\/td><\/tr><tr><td><code>buffer ocupado espera<\/code><\/td><td>Contenci\u00f3n por bloques<\/td><td>Posiblemente un problema de almacenamiento o de patr\u00f3n de acceso a los datos<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\u2705 <strong>Saludable:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tiempo de CPU en la cima o cerca de ella<\/li>\n\n\n\n<li>Los eventos de espera son bajos en tiempo total (&lt;20% tiempo total BD)<\/li>\n<\/ul>\n\n\n\n<p>\u274c <strong>Malo:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Las esperas sin CPU dominan<\/li>\n\n\n\n<li>Un evento de espera utiliza &gt;30-40% de tiempo de BD \u2192 investigar la causa ra\u00edz.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">4. \ud83e\udde0 Porcentajes de eficiencia de las instancias<\/h3>\n\n\n\n<p>Esta secci\u00f3n suele malinterpretarse, pero algunas m\u00e9tricas clave son \u00fatiles:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Buffer Hit %:<\/strong> Deber\u00eda ser &gt; 90%<\/li>\n\n\n\n<li><strong>Biblioteca Hit %:<\/strong> Deber\u00eda ser &gt; 95%<\/li>\n\n\n\n<li><strong>Soft Parse %:<\/strong> &gt; 95% (si es bajo \u2192 compruebe el pool compartido o el cursor compartido)<\/li>\n\n\n\n<li><strong>Picaporte Hit %:<\/strong> &gt; 99%<\/li>\n<\/ul>\n\n\n\n<p>Se trata de directrices generales: unos n\u00fameros malos significan un uso ineficiente de la memoria o problemas de reutilizaci\u00f3n de SQL.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">5. Las mejores sentencias SQL<\/h3>\n\n\n\n<p>Compruebe el <strong>Top SQL por:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tiempo transcurrido<\/li>\n\n\n\n<li>Tiempo de CPU<\/li>\n\n\n\n<li>Buffer recibe<\/li>\n\n\n\n<li>Lecturas f\u00edsicas<\/li>\n\n\n\n<li>Ejecuciones<\/li>\n<\/ul>\n\n\n\n<p>\u2705 Saludable:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ning\u00fan SQL domina &gt;30-40% del tiempo de BD.<\/li>\n<\/ul>\n\n\n\n<p>\u274c Problema:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Una o dos sentencias SQL consumen la mayor\u00eda de los recursos \u2192 centrarse primero en afinar aqu\u00ed.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">6. \ud83e\uddf0 Estad\u00edsticas de E\/S y archivos<\/h3>\n\n\n\n<p>Consulte <strong>Espacio de tablas IO<\/strong>, <strong>Archivo IO<\/strong>y <strong>Segmentos por lecturas f\u00edsicas<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Busque desequilibrios: un archivo de datos o tablespace haciendo 90% de IO \u2192 posible hotspot.<\/li>\n\n\n\n<li>Tiempos de lectura elevados (ms por lectura &gt; 10 ms) \u2192 El subsistema IO es lento.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">7. \ud83e\uddf5 Desglose de la clase de espera<\/h3>\n\n\n\n<p>Esto ofrece una visi\u00f3n de alto nivel de <strong>hacia d\u00f3nde va el tiempo<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CPU + E\/S de usuario:<\/strong> Normalmente OK (carga de trabajo normal)<\/li>\n\n\n\n<li><strong>Concurrencia, Compromiso, Configuraci\u00f3n:<\/strong> Posible ajuste necesario<\/li>\n\n\n\n<li><strong>Sistema E\/S o Red:<\/strong> Posibles problemas de infraestructura<\/li>\n<\/ul>\n\n\n\n<p>\u2705 Saludable:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>La mayor parte del tiempo se pasa en la CPU o en E\/S de usuario.<\/li>\n<\/ul>\n\n\n\n<p>\u274c Malo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Porcentajes elevados en las clases de espera de Concurrencia, Compromiso o Configuraci\u00f3n.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">8. \ud83d\udcc8 Estad\u00edsticas del SO<\/h3>\n\n\n\n<p>Compruebe la utilizaci\u00f3n de la CPU y la cola de ejecuci\u00f3n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>%Usuario + %Sys CPU &lt; 90%<\/strong> \u2192 CPU OK<\/li>\n\n\n\n<li>Si <strong>Cola de ejecuci\u00f3n &gt; #CPUs<\/strong> \u2192 Saturaci\u00f3n de la CPU<\/li>\n<\/ul>\n\n\n\n<p>Comprueba tambi\u00e9n el uso de memoria y swap.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 Lista de comprobaci\u00f3n r\u00e1pida de salud final (atajo de DBA)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Consulte<\/th><th>Buena se\u00f1al<\/th><th>Mala se\u00f1al<\/th><\/tr><\/thead><tbody><tr><td>DB Tiempo \/ seg<\/td><td>\u2248 N\u00facleos de CPU<\/td><td>&gt;&gt; n\u00facleos de CPU<\/td><\/tr><tr><td>AAS<\/td><td>\u2264 N\u00facleos de CPU<\/td><td>&gt;&gt; n\u00facleos de CPU<\/td><\/tr><tr><td>CPU time top event<\/td><td>S\u00ed<\/td><td>No<\/td><\/tr><tr><td>Tasa de \u00e9xito del b\u00fafer<\/td><td>&gt; 90%<\/td><td>&lt; 85%<\/td><\/tr><tr><td>Ratio de an\u00e1lisis sint\u00e1ctico<\/td><td>&gt; 95%<\/td><td>&lt; 80%<\/td><\/tr><tr><td>Top SQL<\/td><td>Equilibrado<\/td><td>1-2 SQL dominan<\/td><\/tr><tr><td>Latencia de lectura IO<\/td><td>&lt; 10 ms<\/td><td>&gt; 20 ms<\/td><\/tr><tr><td>Clases de espera<\/td><td>Principalmente CPU\/Usuario E\/S<\/td><td>Concurrencia, Commit, Config alta<\/td><\/tr><tr><td>An\u00e1lisis sint\u00e1ctico %<\/td><td>&lt; 5%<\/td><td>&gt; 10%<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>\u2705 <strong>En resumen:<\/strong><br>Una base de datos es <strong>haciendo bien<\/strong> si:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>El tiempo de BD y el AAS est\u00e1n alineados con la capacidad de la CPU.<\/li>\n\n\n\n<li>La CPU es la principal \"espera\".<\/li>\n\n\n\n<li>No predomina ning\u00fan evento SQL o de espera.<\/li>\n\n\n\n<li>Los porcentajes de aciertos son altos y los de an\u00e1lisis sint\u00e1ctico, bajos.<\/li>\n\n\n\n<li>La latencia y la contenci\u00f3n son m\u00ednimas.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>","protected":false},"excerpt":{"rendered":"<p>Cuando una base de datos Oracle se ralentiza, el primer lugar donde un DBA debe mirar es el informe AWR - una instant\u00e1nea detallada de lo que est\u00e1 sucediendo dentro del sistema. Revela d\u00f3nde se gasta el tiempo, qu\u00e9 consultas consumen recursos y si la base de datos est\u00e1 bien o tiene problemas. En este art\u00edculo, repasaremos las secciones clave ... <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/rootfan.com\/es\/how-to-read-awr-report-in-oracle\/\" class=\"more-link\">Seguir leyendo<span class=\"screen-reader-text\"> \"C\u00f3mo leer un informe AWR en Oracle\"<\/span><\/a><\/p>","protected":false},"author":1,"featured_media":6572,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_focus_keyword":"","rank_math_title":"","rank_math_description":"","rank_math_robots":"","rank_math_og_title":"","rank_math_og_description":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[31],"tags":[57,109],"class_list":["post-6568","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-oracle","tag-awr","tag-performance"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/rootfan.com\/wp-content\/uploads\/pexels-photo-673020.jpeg?fit=1880%2C1253&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts\/6568","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/comments?post=6568"}],"version-history":[{"count":6,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts\/6568\/revisions"}],"predecessor-version":[{"id":6576,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts\/6568\/revisions\/6576"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/media\/6572"}],"wp:attachment":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/media?parent=6568"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/categories?post=6568"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/tags?post=6568"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}