로깅되지 않은 테이블이라고 정상 및 임시 테이블을 사이에 테이블 PostgreSQL을, 하나 개의 유형, 테이블도 로깅되지 않은 새로운 인덱스에 속하는 영구 데이터에 데이터를 기록하지 않습니다 테이블이 때 쓰기 - 기록 데이터베이스가 비정상적으로 종료되거나 충돌 이상 데이터 테이블이 잘라 내기를 할 것이다 (으), 로그 파일,하지만 몇 배 빠른 테이블에 정상 쓰기 성능보다됩니다.
표 정상 데이터 삽입 속도 차이가 로깅되지 않은 시험 하였다
uber_geocoder = # \ DT + 목록 의 관계 스키마 | 이름 | 입력 | 소유자 | 크기 | 설명 - ------------------------ + ---------------------- - + ------- + ---------- + -------- + ------------- uber_geocoder_tw_15q3_v2 | compiling_info | 표 | 포스트 그레스 | 16 킬로바이트 | uber_geocoder_tw_15q3_v2 | data_process_reports | 표 | 포스트 그레스 | 16 킬로바이트 | uber_geocoder_tw_15q3_v2 | 정보 | 표 | 포스트 그레스 | 16 킬로바이트 | uber_geocoder_tw_15q3_v2 | twn_addr_compact | 표 | 포스트 그레스 | (774) MB | ( 4 행) uber_geocoder = # 타이밍 \ 타이밍 이다 에 .
uber_geocoder = # 작성 테이블 twn_addr_compact_loggod을 같은 선택 * 에서 twn_addr_compact; SELECT 258,902 시간 : 977250.581 밀리
일반 테이블의 경우에서 볼 수와 770M의 새로운 보간 데이터는 거의 16분했습니다 수 있습니다
로깅되지 않은 새 테이블 및 삽입 테스트 데이터 770M
uber_geocoder = # 생성 로깅되지 않은 테이블 twn_addr_compact_unloggod을 같은 선택 * 에서 twn_addr_compact; SELECT 258,902 시간 : 300683.321 밀리
이 5 분, 세번의 성능 향상과 동일한 조건 로깅되지 않은 테이블 삽입 속도에 따라 알 수있다.
이자 포스트 그레스 프로세스를 죽일하고 데이터베이스를 시작할 수 있습니다, 당신은 방금 만든 우리가 손실 로깅되지 않은 데이터 테이블을 찾을 수 있습니다.
데이터베이스에있는 모든 현재 로깅되지 않은 테이블을 보는 방법
uber_geocoder = # 선택 n.nspname 로 SCHEMA_NAME, c.relname 같은 TABLE_NAME 에서 pg_catalog.pg_namespace의 N, C pg_catalog.pg_class 여기서 c.relnamespace = n.oid 및 n.nspname ! = ' pg_toast ' 및 c.relpersistence = ' U ' ; SCHEMA_NAME | TABLE_NAME - ------------------------ + ---------------------- ----- edbstore | EMP uber_geocoder_tw_15q3_v2 | twn_addr_compact_unloggod ( 2 행)
당신이 배치를 수정해야하는 경우 어떻게 다음, 일반 테이블로 테이블을 로깅되지 않은 것
uber_geocoder = # 선택 ' 표를 ALTER ' || ' ' || CONCAT (n.nspname, ' . ' , c.relname) || ' ' || ' LOGGED 설정하고, ' AS convert_logged_sql 에서 pg_catalog.pg_namespace의 N, C pg_catalog.pg_class 여기서 c.relnamespace = n.oid 및 n.nspname ! = ' pg_toast ' 및 c.relpersistence = ' U ' ; convert_logged_sql - ------------------------------------------------ --------------------------- ALTER TABLE의 edbstore.emp의 SET가 LOGGED; ALTER TABLE의 uber_geocoder_tw_15q3_v2.twn_addr_compact_unloggod의 SET LOGGED을; ( 2 행)