worldint
mathengi
worldint
전체 방문자
오늘
어제
  • 분류 전체보기 (152)
    • infra, cloud (4)
      • aws (4)
    • TIL,WIL(일간,주간 회고) (57)
    • 컴퓨터 공학 (5)
      • 정보통신 (3)
      • 컴퓨터 구조 (2)
    • Math (1)
      • linear algebra (0)
      • 명제와 집합 (1)
    • Operating System (8)
      • Linux Ubuntu (1)
    • programming (66)
      • c , c++ (9)
      • c# (0)
      • java (2)
      • javascript (14)
      • Python (4)
      • github (1)
      • programing terms (12)
      • html, css (2)
      • docker (3)
      • algorithm_datastructure (5)
      • database (11)
      • flutter(dart) (2)
    • 항해99 부트캠프 (7)
      • 사전교육 (7)
    • 보안관련 (1)

블로그 메뉴

    공지사항

    인기 글

    태그

    • Javascript
    • EC2
    • MONGOOSE
    • ec2 #코드디플로이 #리눅스
    • docker
    • flutter #provider #error
    • nodejs
    • 디비데드락
    • AWS
    • NVM
    • MongoDB
    • NoSQL
    • db데드락
    • Blue/Green
    • ci/cd
    • node
    • CloudFront

    최근 댓글

    최근 글

    티스토리

    hELLO · Designed By 정상우.
    worldint

    mathengi

    TIL,WIL(일간,주간 회고)

    2023. 01. 09 WIL ORM, noSQL vs SQL

    2023. 1. 9. 01:55

    -ORM

    object relation mapping의 약자이고 

    디비의 데이터를 오브젝트형식으로 바꿔주는 툴이라고 생각하면된다

    내가 알고있는 애는 sequelize이고 몽고디비의 mongoose와 비슷한 역할을 하는 애이다

    sql쿼리문으로 데이터를 넣고 빼고 조작하는것이아닌 자바스크립트로 조작할수있게 해준다

     

     

    noSQLvs SQL

    nosql은 not only SQL의 약자이고 관계형데이터베이스가 아닌 모든 데이터베이스를 noSql이라고 한다

    비관계형 데이터베이스 대표적으로 몽고db가 있고

    관계형 데이터베이스는 대표적으로 mySQL이 있다

     

    관계형

    테이블, 행, 열을 가진 DB에 A데이터와 B데이터가 있다고 가정을 하면, 

    A데이터에 B데이터의 위치를 저장하는 방식으로, 행과 열로 구성된 테이블과의 관계를 나타낼 때 사용합니다.

     

    관계를 맺은 테이블들끼리 데이터를 함부로 지울 수없다 테이블을 삭제하려해도 제약이 있다

     

     

    비관계형

    key = value 형태로 이루어져있다

    테이블들도 막 삭제할수있다. 그래서 유연하게 다룰수있다

    아래는 비관계형에대해 다른 블로그 복사 붙여넣기인데 아직 관계형과 비관계형의 장단점을 잘 느끼지 못하겠다

    그냥 테이블이나 데이터가 지워지고 안지워지고의 차이정도만 체험하고 있다

     

     


    비관계형 DB

    NoSQL이라고도 부르며, Not Only SQL(SQL 뿐만이 아닌. 이라는 뜻)의 줄임말이라고 합니다.

     

    이 말은 곧 SQL뿐만 아니라 다른 여러 장점을 가지고 있다는 소리입니다.

     

    기존의 관계형 데이터베이스의 한계를 뛰어넘기 위해 만들어진 새로운 형태의 데이터베이스라서,

     

    관계형 데이터베이스보다 더 융통성 있는 데이터 모델을 사용하며, 데이터의 저장 및 검색에 특화된 메커니즘을 

     

    제공합니다. NoSQL은 분산 환경에서의 데이터 처리를 더욱 빠르게 하기 위해 개발되었습니다.

     

    대표적으로 MongoDB, CouchDB 등이 있습니다.

     

    특징

     

    - 거대한 Map으로서 key-value 형식을 지원함.

    - 관계형 db와 달리 PK,FK JOIN등 관계를 정의하지 않음.

    - 스키마에 대한 정의가 없다.

     

    장점

     

     - 대용량 데이터 처리를 하는데 효율적임.

     - 읽기 작업보다 쓰기 작업이 더 빠르고 관계형 데이터베이스에 비해 쓰기와 읽기 성능이 빠름.

     - 데이터 모델링이 유연함.

     - 뛰어난 확장성으로 검색에 유리함.

     - 최적화된 키 값 저장 기법을 사용하여 응답속도나 처리효율 등에서 성능이 뛰어남.

     - 복잡한 데이터 구조를 표현할 수 있음.

     

    단점

     

     - 쿼리 처리시 데이터를 파싱 후 연산을 해야해서 큰 크기의 document를 다룰 때는 성능이 저하됨.

     

     

    'TIL,WIL(일간,주간 회고)' 카테고리의 다른 글

    2023.01.12 TIL sequelize-cli 모델 생성할때 주의  (0) 2023.01.12
    2023.01.12 TIL sequelize unknown column 에러 관련  (0) 2023.01.12
    2023.01.02 TIL req.headers관련  (0) 2023.01.02
    22.12.28 TIL mongoose 커넥트 관련  (0) 2022.12.28
    2022.12.28 TIL Array.find 함수 관련  (0) 2022.12.28
      'TIL,WIL(일간,주간 회고)' 카테고리의 다른 글
      • 2023.01.12 TIL sequelize-cli 모델 생성할때 주의
      • 2023.01.12 TIL sequelize unknown column 에러 관련
      • 2023.01.02 TIL req.headers관련
      • 22.12.28 TIL mongoose 커넥트 관련
      worldint
      worldint
      공부한 내용들, 트러블 슈팅 용 블로그

      티스토리툴바