데이터 전처리: 데이터 소스 및 저장소 – SQLite)

ㅁ 데이터 소스 및 저장소

1. SQLite)

ㅇ 정의:
– 경량화된 관계형 데이터베이스 관리 시스템(RDBMS)으로, 서버 없이 로컬 파일 기반으로 동작하는 DB.
– ANSI-SQL을 지원하며, 단일 파일로 데이터베이스를 관리.

ㅇ 특징:
– 설치와 설정이 필요 없고, 응용 프로그램에 내장 가능.
– 트랜잭션을 지원하며, ACID 규격 준수.
– 동시 접속 처리 능력이 제한적이며, 대규모 트래픽 환경에는 부적합.
– 파일 크기가 제한(기본 140TB)되지만, 일반적인 로컬 데이터 처리에는 충분.

ㅇ 적합한 경우:
– 모바일 앱, 데스크톱 앱, 임베디드 시스템 등 경량 데이터 저장.
– 단일 사용자 또는 소규모 동시 접속 환경.
– 테스트 및 프로토타입 개발 시 빠른 데이터베이스 구축이 필요한 경우.

ㅇ 시험 함정:
– 서버 기반 DBMS(MySQL, PostgreSQL 등)와 혼동.
– ‘네트워크 기반’이라고 잘못 표기된 경우 오답.
– ‘트랜잭션 미지원’이라고 하면 틀린 설명.

ㅇ 시험 대비 “패턴 보기” 예시:
– (O) SQLite는 서버 없이 동작하며 단일 파일로 DB를 관리한다.
– (O) SQLite는 ACID를 준수하는 트랜잭션을 지원한다.
– (X) SQLite는 대규모 동시 접속 처리를 위해 설계되었다.
– (X) SQLite는 반드시 서버 설치가 필요하다.

ㅁ 추가 학습 내용

SQLite는 오픈소스이며 C언어로 작성되어 다양한 플랫폼에서 동작 가능하다. 데이터 타입은 동적 타이핑(Dynamic Typing)을 사용하여 동일 컬럼에 서로 다른 타입의 데이터를 저장할 수 있다. WAL(Write-Ahead Logging) 모드, 인덱스 지원 여부, 외래키 제약 조건 지원 여부(기본 비활성화)가 중요한 시험 포인트이다. 파일 기반 구조로 백업과 복원이 단순하다는 장점이 있지만, 파일 잠금 방식으로 인해 높은 동시성 작업에는 부적합하다.

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*