""

Consejo del día - Tabla y tamaño de índice en Oracle

¿Alguna vez quiso averiguar qué tan grandes son las tablas en su almacén de datos o en su área de almacenamiento ETL? Aquí hay una sugerencia rápida.

Puede obtener el tamaño de cada tabla perteneciente a un usuario específico con el código siguiente:

Seleccione la suma (bytes) / 1048576 Size_MB, nombre_siguiente Nombre_table
de user_extents
donde segment_name en (
     select table_name de all_tables
     where owner = 'OWNER_NAME_HERE')
agrupar por segment_name
ordenar por 1 desc;

Para obtener el tamaño de los índices con los nombres de tabla correspondientes (útiles cuando los índices tienen nombres generados por el sistema), necesitamos otra consulta:

Seleccione suma (u.bytes) / 1048576 Size_MB, u.segment_name index_name, i.table_name
de user_extents u
join all_ind_columns i
     on u.segment_name = i.nombre_index
     y i.column_position = 1
where i.index_owner = 'OWNER_NAME_HERE'
group por u.segment_name, i.table_name
ordenar por 1 desc;
Si tiene alguna duda o sugerencia, deje un comentario a continuación.
EspañolEnglish