본문 바로가기
지식

SQLite MySQL PostgreSQL 차이 장단점

by Ele(단단) 2023. 3. 17.
반응형

SQLite MySQL PostgreSQL 차이 장단점

 

공통점 : 관계형 데이터베이스

 

SQLite

 

SQLite : 임베디드 관계형 데이터베이스 관리 시스템

  • 응용 프로그램에 넣어 사용하는 가벼운 DB
  • python 기본 패키지로 sqlite를 사용할 수 있음
  • 트랜잭션은 ACID를 준수
  • 오픈 소스이나 압축 및 암호화에 도움이 되는 확장 기능을 제공

데이터 타입

  • null: NULL값을 포함
  • integer: 부호가 있는 정수로 값의 크기에 따라 1, 2, 4, 6, 8 바이트로 저장
  • real: 실수 또는 8바이트 부동 소수점 숫자로 저장되는 값
  • txt: 데이터베이스 인코딩을 사용하여 저장된 텍스트 문자열. UTF-8, UTF-16BE, UTF-16LE
  • blob: 입력된 그대로 저장된 데이터의 blob

장점

  • 가볍다
  • 파일로 저장디므로 이식성이 뛰어나다
  • 초기 설정이 거의 없어서 빠르게 개발이 가능하다

단점

  • 동시성 제한 (주어진 시간에 하나의 프로세스만 DB 변경 가능)
  • 사용자 관리가 존재하지 않음 (파일만 있으면 누구나 볼 수 있음)
  • 보안이 약하다

개인적인 생각

  • 로컬에서 개발하는 경우, 서버를 신경 쓰고 싶지 않을 경우 사용 권장
  • JSON 데이터가 없을 경우 사용 권장
  • 서버가 없다면, 로컬에서 도커로 mysql 컨테이너 띄워서 작업하는 것을 권장

 

돌고래!

 

MySQL : RDBMS

  • 널리 쓰이고 있는 DB
  • 영리 목적일 경우 유료

장점

  • 정보가 풍부함
  • 보안 수준니 높은 레벨
  • 속도가 빠르다
  • 복제 가능

단점

  • 트랜젝션 지원이 완벽하지 않다
  • 사용자 정의 함수의 사용이 쉽지 않고 유연하지 못하다

 

코끼리!

 

PostgreSQL : 오픈 소스 객체-관계형 데이터베이스 시스템(ORDBMS)

  • 객체 관계형(object-relational) 데이터베이스
  • 기본적으로는 관계형 데이터베이스지만 객체 데이터베이스와 연관되는 기능
    (예를 들면 테이블 상속 및 함수 오버로딩)도 포함
  • 동시성, ACID 준수

장점

  • 표준 SQL을 준수
  • 무료
  • 확장성이 뛰어남

단점

  • 메모리 성능이 떨어짐
  • 읽기가 많은 경우 다른 DB보다 성능이 떨어짐
  • 정보 부족

데이터 무결성이 중요하고, 복잡한 연산을 할 경우 권장

반응형

'지식' 카테고리의 다른 글

HTML CSS 기초 웹사이트 표준 접근성 크로스 브라우징  (0) 2023.03.21
정적 타입과 동적 타입 언어의 차이점  (0) 2023.03.21
tsx ts란 차이 다른점  (0) 2023.03.14
객체지향 언어의 특징  (0) 2021.12.30
CSR? SSR?  (0) 2021.12.30

댓글