PostgreSQL VS MySQL Json타입에서의 성능비교 및 차이점(PostgreSQL win!)

박두팔이·2023년 11월 18일
0

데이터베이스

목록 보기
3/5

데이터베이스란?

  • 구조화된 형태로 데이터가 저장되어있는 형태이다.
  • 데이터에는 단어, 숫자, 이미지, 비디오 및 파일을 포함한 모든 유형의 데이터가 포함될 수 있다.
  • DBMS(데이터베이스 관리 시스템)라는 소프트웨어를 사용하여 데이터를 저장, 검색 및 편집이 가능하다.

Relational DATABASE(관계형DB)

1. 종류


db-engines에서 db점유율을 살펴보면 RDBMS가 1위부터 4위까지를 차지하는 것을 볼 수 있다.

그 중 우리가 살펴볼 것은 유료버전과 NoSQL을 제외한 무료버전의 MySQL과 PostgreSQL이다.

2. 구조

  • 데이터를 편리하게 저장하기 위해서는 표(table)이 필요하다.
  • 연관된 여러개의 table을 그룹화한 것이 schema라고 한다.
  • schema의 양이 많아지면 이것을 관리하기 위한 도구가 데이터베이스이다.
  • 하나의 컴퓨터에는 여러개의 데이터베이스가 존재할 수 있다. 이러한 database를 그룹화한 것이 클러스터(cluster)라고 하며 데이터베이스 서버라고 한다.

PostgreSQL VS MySQL 성능비교 및 차이점?

1. JSON타입에 관한 성능비교

일반적으로 MySQL이 Read에 강점이 있고, PostgreSQL이 write, update에 강점이 있다고 알고있다.
그렇다면 JSON타입에 관한 성능비교는 어떨까?

성능비교MySQLPostgreSQL
Read49.931.65
Update62.4526.26
Write3501.052279.25

💡 성능비교: 결론

  • JSON타입에서의 성능에 대한 고민을 하고있다면 PostgreSQL을 사용하는 것을 추천
  • MySQL의 장점과 MongoDB장점을 섞은 만큼 여러가지 테스트를 해볼 수 있다는 점에서 좋은 장점을 지녔다.

2. 그 외 다른 비교

  • Data Types은 당연 PostgreSQL의 승리다.
  • UTF-8변환 같은 경우는 my-sql은 필요하지만 postgreSQL은 자동으로 지원한다.
  • 조건문 같은 경우, MySQL에는 IF와 NULLIF가 있지만 PostgreSQL은 CASE WHEN으로 통일되어 있다.
  • 또한, MySQL은 일시적인 테이블을 가지고 있지만 PostgreSQL은 없다. 그래서 drop같은 경우는 서로 장단점이 있기때문에 어떤것이 좋다고 하기에 애매하다.
  • PostgreSQL은 오픈소스에 공헌하는 개발자들이 많기 때문에 커뮤니티가 굉장이 크다. MySQL은 오라클에서 지원하는 만큼 컨트리뷰터들의 차이가 있기 때문에 다양성에 대해선 PostgreSQL이 훨씬 많다고 할 수 있다. 오픈 소스의 장점을 확실하게 보여주고 있는 케이스다.


또한 PostgreSQL가 지원하는 데이터타입을 살펴보면 UUID와 같은 타입이나, Geometric타입도 지원을 해준다.


3. Join기능에서도 PostgreSQL이 더 많은 기능을 지원한다.

MySQLPostgreSQL
INNER JOININNER JOIN
LEFT JOINLEFT JOIN
RIGHT JOINRIGHT JOIN
CROSS JOINCROSS JOIN
✅ FULL OUTER JOIN
✅ INTERSECT and EXCEPT

4. 결론

  • PostgreSQL의 장점이 더 많다.
  • 다만, 버전업이 쉬운만큼 많은 기능을 지원하지만 메이저버전 업데이트 할 때가 조금 어렵다는 단점이 있다.
  • 큰 변화가 없는 데이터베이스를 사용하고싶다면 MySQL을 사용하면 된다. 속도가 느릴뿐..!!
profile
기억을 위한 기록 :>

0개의 댓글