Al trabajar o desarrollar aplicaciones que involucren bases de datos, siempre tenemos una cantidad limitada de memoria e intentamos utilizar la menor cantidad de espacio en disco. Aunque sabemos que no hay limitación de memoria en los servicios en la nube, aún tenemos que pagar la cantidad de espacio que consumimos. Entonces, ¿alguna vez has pensado en verificar cuánto disco ocupan las tablas de su base de datos?? Si no, entonces no necesita preocuparse porque está en el lugar correcto.
En este artículo, aprenderemos cómo obtener el tamaño de la mesa en Amazon Redshift.
Como hacemos eso?
Cuando se crea una nueva base de datos en RedShift, crea automáticamente algunas tablas y vistas en segundo plano donde se registra toda la información necesaria sobre la base de datos. Estos incluyen vistas y registros de STV, SVC, SVL y vistas SVV. Aunque hay un montón de cosas e información en ellas que están fuera de alcance para este artículo, aquí solo exploraremos un poco sobre las opiniones de SVV.
Las vistas SVV contienen las vistas del sistema que tienen referencia a las tablas STV. Hay una mesa llamada Svv_table_info donde el desplazamiento al rojo almacena el tamaño de la mesa. Puede consultar datos de estas tablas al igual que las tablas de base de datos normales. Solo recuerde que svv_table_info devolverá los datos informativos solo para las tablas no vacías.
Permisos de superusuario
Como saben, las tablas y vistas del sistema de bases de datos contienen información muy crítica que debe mantenerse en privado, por eso el SVV_TABLE_INFO no está disponible para todos los usuarios de la base de datos. Solo los superusadores pueden acceder a esta información. Antes de obtener el tamaño de la tabla de esto, debe obtener los permisos y los derechos del superusor o administrador. Para crear un Superuser en su base de datos RedShift, simplemente necesita usar la palabra clave Crear usuario cuando crea un nuevo usuario.
CREAR USUARIOCREATEUSER PASSAWN 'PASSACIÓN DEL USUARIO';
Entonces, ha creado con éxito un superusor en su base de datos
Tamaño de la mesa de desplazamiento al rojo
Supongamos que su líder de equipo le asignó una tarea para ver los tamaños de todas las tablas de su base de datos en Amazon Redshift. Para llevar a cabo este trabajo, usará la siguiente consulta.
Seleccione "Tabla", tamaño de SVV_Table_Info;
Entonces, necesitamos consultar dos columnas de la tabla llamada SVV_Table_Info. La columna nombrada mesa contiene los nombres de todas las tablas presentes en ese esquema de base de datos, y la columna nombrada tamaño almacena el tamaño de cada tabla de base de datos en MBS.
Probemos esta consulta de desplazamiento al rojo en la base de datos de muestra proporcionada con el desplazamiento al rojo. Aquí tenemos un esquema llamado tickit y varias tablas con una gran cantidad de datos. Como se muestra en la siguiente captura de pantalla, tenemos siete tablas aquí, y el tamaño de cada tabla en MBS se menciona frente a cada uno:
Otra información que puede obtener sobre el tamaño de la tabla del svv_table_info puede ser el número total de filas en una tabla, que puede obtener de la TBL_ROWS columna, y el porcentaje de memoria total consumido por cada tabla de la base de datos de la pct_used columna.
De esta manera, puede ver todas las columnas y su espacio ocupado en su base de datos.
Modificar los nombres de la columna para la presentación
Para representar los datos de una manera más sofisticada, también podemos cambiar el nombre de las columnas de svv_table_info Como queremos. Verá cómo hacer esto en el siguiente ejemplo:
Seleccione "Tabla" como table_name,
tamaño como size_in_mbs,
TBL_ROWS como NO_OF_ROWS
de svv_table_info
Aquí, cada columna se representa con un nombre diferente al que su nombre original.
De esta manera, puede hacer que las cosas sean más comprensibles para alguien con menos conocimiento y experiencia con bases de datos.
Encuentre tablas más grandes que el tamaño especificado
Si está trabajando en una gran empresa de TI y se le da un trabajo para averiguar cuántas tablas en su base de datos son mayores que 3000 MBS. Para esto, debe escribir la siguiente consulta:
Seleccione "Tabla", tamaño
de svv_table_info
Donde tamaño> 3000
Puedes ver aquí que hemos puesto un mas grande que condición en el tamaño columna.
Se puede ver que acabamos de obtener esas columnas en la salida que fueron más grandes que nuestro valor límite establecido. Del mismo modo, puede generar muchas otras consultas aplicando condiciones en diferentes columnas de la tabla svv_table_info.
Conclusión
Así que aquí, has visto cómo encontrar el tamaño de la tabla y el número de filas en una tabla en Amazon Redshift. Es útil cuando desea determinar la carga en su base de datos y proporcionará una estimación si se está quedando sin memoria, espacio en disco o energía informática. Además del tamaño de la tabla, hay otra información disponible que puede ayudarlo a diseñar una base de datos más eficiente y productiva para su aplicación.