✅ ISSUE
형상관리 부서에서 현재 우리 부서에서 관리하고 있는 프로그램 DB들에 대한 데이터 저장 현황을 요청해서 조사해야 할 일이 있었다.
조사해야할 내용은, 테이블 이름, ROW 수, 데이터 크기(MB, GB)였다.
✔ 작성 쿼리
SELECT
TABLE_NAME, /* 테이블 명 */
NUM_ROWS, /* ROW 개수 */
NUM_ROWS * AVG_ROW_LEN as BYTE,
/* 행 갯수와 로우 평균 데이터(avg_row_len)을 곱하여 전체 용량(byte) 계산 */
ROUND((NUM_ROWS * AVG_ROW_LEN / 1024 / 1024), 2) AS MB,
/* mb 계산 */
ROUND((NUM_ROWS * AVG_ROW_LEN / 1024 / 1024 / 1024), 2) AS GB
/* gb 계산 */
FROM USER_TABLES
WHERE TABLE_NAME LIKE '%테이블명%'; /* 찾고자 하는 테이블명 */
✅ Result
TABLE_NAME | NUM_ROWS | BYTE | MB | GB |
table_a | 415,320 | 13079233.8619.... | 12.47 | 0.01 |
table_b | 19.595 | 2118678.623608... | 2.02 | 0 |
table_c | 4,376 | 91,754 | 0.09 | 0 |
✅ 작업 후기
내가 관리하고 있는 프로젝트가 6개 정도 됐었는데, 이번 데이터 조사를 하면서 프로그램에 대한 정리가 필요할 것 같다는 생각이 들었다.
일례로 10년전에 만든 프로젝트인데도 데이터가 1gb도 안쌓인 것이 있는가 하면, 1년도 안된 프로젝트지만 사람들에게 홍보가 잘되고 효능감이 커서 데이터가 훨씬 많이 쌓인 경우도 있었다.
난 컴퓨터 프로그램이 사람들의 문제를 해결해주고, 효능감을 주어야 그 가치가 있다고 생각한다. 그래서 사람들에게 많이 쓰이게 하려면 필요가 있게 끔 프로그램을 잘 구성하고 만들어야겠다는 것을 오늘도 깨닫고 간다.
'개발 > DB' 카테고리의 다른 글
[DB / SQL / 다중 행 가로 출력] (0) | 2022.12.04 |
---|---|
[DB / Tibero / JDBC-5072 / Failure converting NUMBER to or from a native Type] (0) | 2022.07.15 |