모든 것을 위한 PostgreSQL

58 minutes ago 1

관계형 데이터베이스를 넘어 전문 검색·문서 저장·큐·시계열·벡터 검색·캐시까지 처리해 별도 시스템 도입과 데이터 동기화, 운영 부담을 줄일 수 있음 1996년 첫 출시 이후 오랜 기간 버그를 다듬었으며, 기존 기능을 유지하면서 JSON·파티셔닝·공통 테이블 표현식 같은 현대적 기능을 꾸준히 추가함 주요 운영체제와 Docker·Testcontainers를 지원하고 AWS·GCP·Azure·Timescale 등에서 배포·확장할 수 있어 운영 선택지가 넓음 SELECT.. FOR UPDATE, SKIP LOCKED, UNLOGGED 테이블과 TimescaleDB·pgvector·LTREE를 조합하면 Kafka·Redis·ClickHouse·MongoDB·그래프 데이터베이스의 일부 용도를 대체할 수 있음 새로운 요구사항마다 전문 시스템부터 도입하기보다 PostgreSQL로 해결 가능한지 먼저 확인하고, 성능이나 기능이 부족해질 때 전용 시스템으로 전환하면 구성을 단순하게 유지할 수 있음 PostgreSQL을 선택한 배경 2003년 연구 프로젝트 ColumbaDB에서 PostgreSQL을 사용하기 시작함 당시 MySQL은 PostgreSQL보다 널리 쓰였고 SQL 표준의 모든 기능을 구현하지 않아 더 빠를 가능성이 있었지만, 프로젝트에 필요했던 전문 검색·강력한 인덱스·SQL 표준 준수 기능은 부족했음 PostgreSQL은 오픈소스이면서 작은 Oracle처럼 느껴지는 본격적인 데이터베이스였음 MySQL과 Lucene 또는 Solr를 함께 사용하면 데이터베이스와 검색 시스템을 따로 운영하고 데이터를 동기화해야 했지만, PostgreSQL의 전문 검색 기능으로 모든 작업을 하나의 시스템에서 처리함 이후 여러 업무에 PostgreSQL을 적용했으며, 최근에는 TimescaleDB를 이용해 대용량 웹 분석 시계열 데이터를 저장함 PostgreSQL의 강점은 세 가지임 오랜 기간 검증된 안정성 쉬운 설치·운영·확장 관계형 데이터베이스 외의 여러 역할까지 맡아 IT 구성을 단순화하는 확장성 오래됐지만 현대적인 데이터베이스 PostgreSQL의 첫 릴리스는 1996년으로 거슬러 올라가며, 오랫동안 널리 사용되면서 데이터베이스 버그를 다듬을 시간을 확보함 활발한 커뮤니티가 기존 기능을 깨뜨리지 않으면서 새로운 기능을 꾸준히 추가함 최근 릴리스에는 JSON 문서 저장, 파티셔닝, 공통 테이블 표현식(CTE) 등 현대적인 기능이 포함됨 ...

Read Entire Article