210413_TIL

seungyeon·2021년 4월 13일
0

TIL

목록 보기
52/64

IM: DAY 51

껍데기는 가라!! 내일은 알맹이를 배우는 날 ㅎㅅㅎ

오늘

  • Toy Problem
  • MongoDB 학습
  • 리뷰 스터디
  • TDD 알아보기
  • 와이어프레임

기억할 것

우분투에 MongoDB 설치하는 방법

벨로그 글 보러가기 👉 [Ubuntu] MongoDB 설치하기 (Ubuntu 20.04)

데이터베이스를 사용하는 이유?

fs(파일 시스템)을 사용하지 않고 데이터를 저장하기 위해

Data redundancy = 백업

DBMS = 데이터베이스 매니지먼트 소프트웨어(시스템)
데이터베이스는 결국 소프트웨어다. 데이터베이스도 결국 서버다.

SEQUEL? NO SEQUEL?

1970년대에 ibm 직원 두명이 SEQUEL (Structured English Query Language), 이라는 걸 만듬. 그게 관계형 데이터 모델.

오라클에서 그와 비슷한 SQL을 만들었는데, 저작권 때문에 이름을 살짝 바꿔서 붙인 것. 그래서 요즘에도 SQL을 아직도 sequel이라고 부르는거다.

NoSQL? MongoDB?

NoSQL은 Not Only SEQUEL의 약자.
일반적으로 relational한 관계형 데이터가 아닌 나머지 전부를 NoSQL이라고 부른다.
종류가 엄청 많다. 가장 많이 사용되는 것이 MongoDB.

몽고디비가 많이 쓰이는 이유

sql이 표준화된건 1980년대 후반. 인터넷은 1990년대에 나옴. 오늘 날 우리가 사용하는 많은 앱들은 전세계에서 서비스를 하고 있는것. 이런걸 분산 시스템이라고 함. 이건 2000년대에 와서 만들어진거. sql이 만들어질 당시에는 전세계인들이 연결되어 수억명이 같이 사용할 줄 몰랐다. 그래서 원래의 sql은 싱글서버용이다. 하나의 컴퓨터에서만 잘 작동하게 만든 것. 그래서 sql은 분산 시스템 용으로는 적합하지 않음. 그래서 2차 솔루션과 함께 사용하는 것이다.
그러나 몽고디비는 애초에 분산시스템을 염두에 두고 만든거라 natively(built-in) support한다. 그래서 몽고디비를 많이 사용하는 것.

replica(복제본)를 사용하는 이유

availability를 유지하기 위해 replica(복제본)를 사용한다.

수직확장(vertical scalability) vs. 수평확장(horizontal scalability)

확장성(scalability) = 규모
어떤 서비스가 scalable 하다는건 요청이 늘어났을 때 버틸 수 있다는 것.
우리가 확장성을 고려해야 하는 이유
웹 서버라는건 요청이 들어오면 요청을 처리해야 한다는 것. 우리의 컴퓨터는 수십만개의 요청을 한번에 처리하지 못한다. capacity(가용성, 수용성)가 한계가 있다.

수직확장은 사이즈를 늘리거나(increase size) 파워를 늘리는 것(add power)
수평확장은 수를 늘리는 것(add number). 수평확장의 장점은 돈이 덜든다는 점이다.

내일

공식일정

  • HTTPS, Hashing, Cookie
  • Session
  • CSRF

개인

  • Typescript 살펴보기
  • Next.js 살펴보기

0개의 댓글