PostgreSQL 데이터베이스 압축


13

500GB가 넘는 큰 PostgreSQL 데이터베이스가 너무 큽니다. 어쨌든 데이터베이스를보다 관리하기 쉬운 크기로 압축해야합니까? SquashFS로이 작업을 시도했지만 데이터베이스가 177GB로 압축되었지만 PostgreSQL을 사용하려면 데이터베이스에 쓰기 권한이 있고 Squashed 시스템은 읽기 전용이어야합니다. 보다 숙련 된 데이터베이스 사용자가이 목표를 달성하기위한 제안이 있습니까?

데이터베이스는 지구에 대한 GIS 데이터를 보유하며 배치 된 시스템에서 로컬로 사용됩니다. 현재 1TB SSD에 있지만 대용량 데이터베이스를 수용하기 위해 추가 하드 드라이브에 두드리는 것을 피하려고합니다. 데이터베이스는 문제없이 원하는대로 작동합니다. 관리하기 쉬운 크기로 압축하고 별도의 드라이브에 배치하지 않기를 원합니다.


왜 너무 큽니까? 디스크 공간이 부족한 경우 시스템에 디스크를 추가해야합니다. 더 이상 필요없는 데이터가 있으면이를 보관할 방법을 찾아야합니다. 그렇지 않으면, 더 작은 DB로 도움을 받거나 얻지 못할 수있는 성능 문제가있을 수 있습니다.
— RDFozz 2019

2
데이터베이스는 지구에 대한 GIS 데이터를 보유하며 배치 된 시스템에서 로컬로 사용됩니다. 현재 1TB SSD에 있지만 대용량 데이터베이스를 수용하기 위해 추가 하드 드라이브에 두드리는 것을 피하려고합니다. 데이터베이스는 문제없이 원하는대로 작동합니다. 관리하기 쉬운 크기로 압축하고 별도의 드라이브에 배치하지 않기를 원합니다.
— MH21209 2019

4
이것은 꽤 합리적인 질문입니다. 닫혀서는 안됩니다.
— Evan Carroll

답변:


10

파일 시스템

아주 이 일의 인기있는 방법은 파일 시스템이다. BTRFS 및 ZFS는 파일 시스템 수준의 데이터베이스에서 작동합니다. 둘 다 루프백 장치에서 사용될 수 있으므로 다른 파티션없이 압축 된 테이블 스페이스를 제공 할 수 있습니다. 이것에 대한주의 사항이 있습니다. 테이블 공간이 실패하면 클러스터도 걸릴 수 있습니다.

ZFS

ZFS가 가장 큰 것입니다. 내가 갈 것입니다.

또한보십시오

Btrfs

Btrfs는 강력한 경쟁자이지만 오랫동안 활발히 개발되어 왔으며 기본 배포판으로 기본 배포판을 선택하지 않으면 많은 사람들이 "프라임 타임"에 대한 준비가되었는지 묻습니다.

PostgreSQL

GIS 방법 (PostGIS)

  • 다각형의 경우 한 가지 방법은로 정점을 드롭하여 다각형을 단순화하는 것 ST_Simplify입니다.

  • 포인트의 경우 한 가지 방법은 공간 클러스터링 입니다.

이 두 가지 모두 정보 손실로 이어집니다. PostGIS는 데이터베이스의 대부분의 기능과 마찬가지로 투명한 "매직 압축"옵션이 없습니다.

cstore_fdw

cstore_fdw압축을 제공하는 원주 저장소 도 있습니다 . 다른 성능 프로파일이 있으므로 ymmv입니다.


2
이것은 내가 찾던 것입니다. 현재 ZFS 위에 데이터베이스를 다시 배포하고 있습니다. 감사합니다.
— MH21209
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.