SQL

Como obtener la lista de tablas con más movimiento (insert,update) en Oracle

A fin de obtener una lista aproximada de las tablas con más movimientos de la base de datos podemos consultar el contenido de la tabla dba_tables y cruzarlo con el estado actual de cada tabla en la bbdd. Esto puede tener sentido cuando queremos confeccionar una lista de tablas a las que se debe actualizar estadísticas periódicamente o queremos controlar la cantidad de información que genera alguna aplicación en concreto. Los datos que obtenemos por cada tabla son siempre respecto al último analisis de la misma.

La siguiente forma de hacerlo es un poco "rupestre" pero útil a la vez:

El error ORA-30926 como resultado de una operación Merge

El error ORA-30926 suele producirse cuando se realizan operaciones Merge, y lo normal es que nos deje algo descolocados, ya que la descripción del mismo no da demasiada información sobre lo que está pasando:
ORA-30926: unable to get a stable set of rows in the source tables.

Normalmente este error se produce cuando en la operación Merge a una fila destino que hay que actualizar le corresponden más de una fila en la tabla origen. Como el motor no sabe qué registro escoger devuelve un error. Es un problema de duplicidad en la tabla origen...

Libro BI: Business Intelligence, Competir con Información

Business Intelligence. Competir con informaciónLibro Business Intelligence: competir con Información. Esta excelente obra explica en qué consiste el Business Intelligence y puede ser una gran guía para abordar proyectos de BI. Está orientado sobretodo para directivos de pymes que quieran entrar en el mundo BI, y hacer su empresa más competitiva, por lo que el lenguaje es claro y el contenido muy práctico. 

Vistas materializadas de Oracle para optimizar un Datawarehouse

Como las cargas de un Data warehouse se realizan de manera periódica, y además es habitual la creación de tablas agregadas para mejorar la eficiencia y tiempo de respuesta de nuestros informes, un recurso de optimización física que puede aportar grandes mejoras es la utilización de vistas materializadas.

La vista materializada no es más que una vista, definida con una sentencia SQL de Oracle, de la que además de almacenar su definición, se almacenan los datos que retorna, realizando una carga inicial y después cada cierto tiempo un refresco de los mismos..