데이터 영속화
데이터 영속화 (Data Persistence)
이 장에서 설명하는 모듈들은 파이썬 데이터를 디스크에 영속적인 형태로 저장하는 것을 지원해요. pickle 과 marshal 모듈은 많은 파이썬 데이터 타입을 바이트 스트림으로 바꾼 뒤 그 바이트에서 객체를 다시 만들 수 있어요. 여러 DBM 관련 모듈들은 문자열을 문자열에 매핑하는 해시 기반 파일 형식을 지원해요.
본문
이 장에서 설명하는 모듈 목록은 다음과 같아요.
pickle— 파이썬 객체 직렬화- 다른 파이썬 모듈과의 관계
marshal과의 비교json과의 비교
- 데이터 스트림 형식
- 모듈 인터페이스
- 피클링·언피클링할 수 있는 것
- 클래스 인스턴스 피클링
- 외부 객체의 영속화
- 디스패치 테이블
- 상태 있는 객체 처리
- 타입·함수·객체의 사용자 정의 리덕션
- 대역외(Out-of-band) 버퍼
- 전역 제한 (Restricting Globals)
- 성능
- 예제
- 커맨드라인 인터페이스
- 다른 파이썬 모듈과의 관계
copyreg—pickle지원 함수 등록- 예제
shelve— 파이썬 객체 영속화- 제한 사항
- 예제
marshal— 내부 파이썬 객체 직렬화dbm— Unix "데이터베이스" 인터페이스dbm.sqlite3— dbm 의 SQLite 백엔드dbm.gnu— GNU 데이터베이스 관리자dbm.ndbm— 새 데이터베이스 관리자dbm.dumb— 이식 가능한 DBM 구현
sqlite3— SQLite 데이터베이스용 DB-API 2.0 인터페이스- 튜토리얼
- 참조
- 모듈 함수
- 모듈 상수
- 커넥션 객체
- 커서 객체
- 행(Row) 객체
- Blob 객체
- PrepareProtocol 객체
- 예외
- SQLite 와 파이썬 타입
- 기본 어댑터·컨버터(비권장)
- 커맨드라인 인터페이스
- 방법 가이드 (How-to guides)
- SQL 쿼리에서 값을 바인딩하기 위해 플레이스홀더 사용
- 사용자 정의 파이썬 타입을 SQLite 값에 어댑트
- SQLite 값을 사용자 정의 파이썬 타입으로 변환
- 어댑터·컨버터 레시피
- 커넥션 편의 메서드 사용
- 커넥션 컨텍스트 매니저 사용
- SQLite URI 다루기
- 행 팩토리 만들기·사용하기
- 비-UTF-8 텍스트 인코딩 처리
- 설명 (Explanation)
- 트랜잭션 제어
autocommit속성을 통한 트랜잭션 제어isolation_level속성을 통한 트랜잭션 제어
- 트랜잭션 제어