반응형
SQLite 데이터베이스 용량
SQLite는 경량형 데이터베이스로서, 로컬 환경 또는 단일 사용자 애플리케이션에 적합하도록 설계되어 있습니다. 하지만 생각보다 꽤 큰 용량도 감당할 수 있도록 설계되어 있습니다.
✅ SQLite 최대 용량 요약
항목 | 최대값 |
단일 DB 파일 크기 | 281 테라바이트 (TB) |
테이블당 최대 행 수 | 약 26억 개 (2³¹ 개) |
컬럼 수 | 테이블당 최대 2000개 (기본 설정은 200개) |
열당 최대 데이터 크기 | 2GB까지 (BLOB 또는 TEXT 타입 기준) |
트랜잭션 크기 | 전체 DB 파일 크기와 동일 (즉, 수백 GB도 가능) |
✅ 실무 기준에서의 권장 한계
SQLite는 이론상 수백 테라바이트까지 가능하지만, 실제로는 아래와 같은 이유로 수 GB 수준 이하에서 사용하는 것이 일반적입니다:
- 다중 사용자 동시 접근 시 성능 저하
- 대용량 쓰기 작업에 취약 (쓰기 동시성은 낮음)
- 메모리 부족에 따른 성능 하락
- 백업 및 마이그레이션 시간 증가
✅ 실제 예시로 비교
용도 | 용량 예시 | SQLite 적합 여부 |
스마트폰 앱 내 캐시 저장소 | 수십 MB ~ 수백 MB | ✅ 매우 적합 |
데스크톱 프로그램의 내부 DB | 1~5GB | ✅ 일반적으로 적합 |
웹 애플리케이션 로그 DB | 10GB 이상 | ⚠️ PostgreSQL, MySQL 권장 |
수백만 건 이상의 거래 기록 | 50GB 이상 | ❌ SQLite 부적합 |
✅ 결론
- SQLite는 단일 사용자의 중소규모 데이터 처리에 적합합니다.
- 이론적으로 281TB까지 가능하지만, 실무에서는 1~5GB까지가 안정적입니다.
- 동시에 많은 사용자가 읽고 쓰는 환경에는 PostgreSQL, MySQL, MariaDB 등 서버형 DB를 권장합니다.
반응형
'컴퓨터 활용 > 노년에 즐기는 코딩' 카테고리의 다른 글
Django 게시판 코드 설명 (4) | 2025.07.06 |
---|---|
Django에서 MySQL 연결 여부 확인하는 방법 (7) | 2025.07.05 |
[Django] 글쓴이 표시하기 (2) | 2025.07.02 |
[Django] 로그인된 상태에서만 답변이 등록되도록 변경 (7) | 2025.07.01 |
클래스 'User'와 변수 'user'의 차이 (2) | 2025.06.30 |
댓글