PostgreSQL

이상해씨·2023년 9월 13일
0

PostgreSQL

목록 보기
1/9
post-custom-banner

PostgreSSQL

  • The PostgreSQL Global Development Group에서 1996에 출시
  • 객체 관계형 데이터베이스 관리 시스템
  • ✨ 오픈 소스 ✨
  • DB 점유율 4위이며, 상승세

    (출처 - https://db-engines.com/en/ranking)

장점

  • 관계형, 비관계형 모두 지원
  • 오픈 소스 (무료)
  • 넓은 ANSI SQL
  • 표준 SQL 사용
  • 대부분의 OS와 머신에서 운용가능
  • 객체 관계형 DBMS
  • 비정형 데이터 유형 지원 (구조화되지 않은 영상, 이미지, 음성 데이터)
  • 확장성 뛰어남(커스텀 함수 생성 가능)
  • 동시처리, 트랜잭션 속도가 빠른 MVCC
  • 교착상태가 거의 발생하지 않음
  • 고가용성 및 서버 장애 복구
  • 고급 보안 기능 제공(데이터 암호화, SSL 인증서, 고급 인증 방법)
  • 활발한 커뮤니티, 지속적인 솔루션 개선

📌 다중버전 동시성 제어 (MVCC : Multi-Version Concurrency Control)
: 동시성 제어를 위한 방법 중 하나로 매우 빠른 작동이 특징.

  • MYSQL에 비래 SQL 표준 지원이 뛰어남
  • 복잡한 쿼리일수록 성능이 좋음
  • Geospatial qurey는 Oracle 보다 뛰어남
  • Citus extension을 통해 병렬 인덱싱 처리가능
  • MYSQL간의 Migration이 쉬움

단점

  • 다른 DBMS에 비해 성능이 느림

  • 속도가 느림.

  • Update 쿼리에 약하여 업데이트가 불안정

  • 메모리성능이 떨어짐

  • MYSQL 보다 CRUD 성능이 떨어짐(scalability 문제)

  • 설정 및 관리 복잡 : 초기 설정. 특히, 대규모, 고가용성 환경에서 설정이 복잡

  • 성능 조정 : 기본 설정에서 최적의 성능을 제공하지 않을 수도 있어 최적화하는 과정이 필요

  • 대규모 커뮤니티에 비해 상대적으로 소규모의 커뮤니티 : MySQL, Oracle과 같은 RDBMS에 비래 상대적으로 적은 개발자 생태계.

  • 호스팅 서비스 : 상대적으로 hosting 서비스가 적을 수 있고 옵션이 제한될 수 있다.

사용이유

  • 데이터 무결성: 데이터 무결성을 엄격하게 유지하여 신뢰성 향상
  • 데이터 복잡성 처리 : 복잡한 데이터 모델과 쿼리 처리에 적합
  • 비용 절감 : 오픈 소스로 비용이 없음
  • 확장성과 고가용성 : 대규모 어플리케이션과 클러스터 지원
  • 고급기능 : 고급기능, 사용자 정의 함수, 프로시저, 트리거, 전문검색 사용 가능.


참고

MVCC

profile
공부에는 끝이 없다
post-custom-banner

0개의 댓글