SQL과 NoSQL

.·2022년 7월 1일
0

blog

목록 보기
27/52

[1] SQL

  • 대표적인 관계형 데이터베이스 MySQL, OracleDB, Mariadb,
    MSSQL, PostgreSQL

  • 데이터를 테이블 구조를 이용하여 보관하고 데이터를 저장,수정,삭제,검색 등을 관리한다.

  • ORM(Object Relation Mapping)으로 hibernate(자바),sequelize(자바스크립트), typeorm(타입스크립트),
    prisma 등을 사용

  • 데이터의 중복을 허용하지 않게해서 정확한 정보를 얻을 수 있고 데이터의 무결성을 보장해서 신뢰성이 있는 데이터를 얻어올 수 있다.

  • 초반에 테이블 설계를 잘못해서 서비스가 확장되고 커진 후에 수정을 하게 된다면 매우 어려워진다.

  • 조인과 같이 테이블의 관계를 지정하여야 하여서 쿼리가 복잡해 질 수 있다.

[2] NoSQL

  • 대표적인 비관계형 데이터베이스 MongoDB, FireBase

  • noSQL에서는 스키마가 존재하지 않아서 생성이나 수정, 확장 등이 용이하다.

  • 데이터를 문서(객체)형식(컬렉션이라고 부른다고 한다)으로 보관한다.

  • ODM(Object Document Mapping)으로 mongoose

  • 데이터가 중복이 되어도 알 수가 없다.

  • 데이터의 형식이 불러와서 바로 사용을 가능하므로 처리속도가 빨라진다.

  • 수정을 하게 될 경우 여러 컬렉션에서 수정을 해주어야 한다.

0개의 댓글