📄 설명
현재 운영 DB는 데이터 규모가 가장 큰 테이블도 약 3,000건 수준으로, 데이터 양이 부족하여 신뢰성 있는 성능 측정이 어렵습니다.
이에 개발 서버에 수백만 건의 더미 데이터를 구축하여, 향후 예상되는 쿼리 지연 및 부하를 미리 식별하고 선제적으로 개선하고자 합니다.
🖥️ EC2 t2.micro 리소스 현황
현재 개발 서버로 사용 중인 EC2 t2.micro 인스턴스의 리소스 현황을 측정한 결과, 대용량 데이터 처리 작업에 명백한 한계가 있음을 확인했습니다.
- 메모리(RAM) 상태
total used free shared buff/cache available
Mem: 949Mi 623Mi 72Mi 1.0Mi 253Mi 183Mi
Swap: 2.0Gi 568Mi 1.4Gi
전체 물리 메모리(RAM)는 약 1GB에 불과하며, 현재 가용 가능한 메모리(available)는 183MB로 매우 낮습니다.
여기에 메모리를 많이 사용하는 Spring Batch 작업을 실행할 경우, 극심한 성능 저하 또는 시스템 다운으로 이어질 확률이 매우 높습니다.
- 디스크(EBS) 상태
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 475M 0 475M 0% /dev/shm
tmpfs 190M 484K 190M 1% /run
/dev/xvda1 8.0G 6.1G 2.0G 76% /
tmpfs 475M 524K 475M 1% /tmp
/dev/xvda128 10M 1.3M 8.7M 13% /boot/efi
tmpfs 95M 0 95M 0% /run/user/1000
메인 디스크(/dev/xvda1)의 전체 용량은 8GB이며, 현재 사용 가능한 공간은 2.0GB에 불과합니다.
우리가 목표로 하는 수백만 건의 데이터는, 데이터 자체의 크기뿐만 아니라 빠른 조회를 위한 인덱스(Index) 생성 시 상당한 추가 공간을 요구합니다.
✅ TO-DO-LIST
🤔 고민해볼 점
데이터의 평균 크기 및 cpu, 메모리 사용량을 기반으로 수백만 건의 데이터를 삽입하기 위해 업 스케일을 진행해야할지 추후 공유하도록 하겠습니다.
🙋🏻 참고 자료
📄 설명
현재 운영 DB는 데이터 규모가 가장 큰 테이블도 약 3,000건 수준으로, 데이터 양이 부족하여 신뢰성 있는 성능 측정이 어렵습니다.
이에 개발 서버에 수백만 건의 더미 데이터를 구축하여, 향후 예상되는 쿼리 지연 및 부하를 미리 식별하고 선제적으로 개선하고자 합니다.
🖥️ EC2 t2.micro 리소스 현황
현재 개발 서버로 사용 중인 EC2 t2.micro 인스턴스의 리소스 현황을 측정한 결과, 대용량 데이터 처리 작업에 명백한 한계가 있음을 확인했습니다.
전체 물리 메모리(RAM)는 약 1GB에 불과하며, 현재 가용 가능한 메모리(available)는 183MB로 매우 낮습니다.
여기에 메모리를 많이 사용하는 Spring Batch 작업을 실행할 경우, 극심한 성능 저하 또는 시스템 다운으로 이어질 확률이 매우 높습니다.
메인 디스크(/dev/xvda1)의 전체 용량은 8GB이며, 현재 사용 가능한 공간은 2.0GB에 불과합니다.
우리가 목표로 하는 수백만 건의 데이터는, 데이터 자체의 크기뿐만 아니라 빠른 조회를 위한 인덱스(Index) 생성 시 상당한 추가 공간을 요구합니다.
✅ TO-DO-LIST
🤔 고민해볼 점
데이터의 평균 크기 및 cpu, 메모리 사용량을 기반으로 수백만 건의 데이터를 삽입하기 위해 업 스케일을 진행해야할지 추후 공유하도록 하겠습니다.
🙋🏻 참고 자료