>wecode 06 Database

송나은·2021년 2월 22일
0

>wecode [Pre-Course]

목록 보기
23/28

Wecode 2nd week

1. Database by 멘토 소헌님 (오후 세션1)

데이터베이스란?

컴퓨터 시스템에 저장된 정보 또는 데이터의 집합.
오랜 기간 저장 및 보존 하기 위해서 데이터 베이스를 사용한다.

RDBMS란? 왜 관계형 테이블을 쓰는가?

서로 상호관련성을 가진 형태로 표현한 데이터를 말한다. ex) MySQL, Postgres, Oracle DB
1. 데이터는 칼럼과 로우로 표현된 테이블로 표현한다.
2. 각 로우는 저만의 고유 키(Primary Key)가 있다.
3. Primary key를 통해서 해당 로우를 찾거나 인용(reference)한다.
-> 인용한 칼럼은 foreign key라고 한다.

  • One to One
    테이블 A의 로우와 테이블 B의 로우가 정확히 일대일 매칭이 되는 관계
  • One to Many
    테이블 A의 로우가 테이블 B의 여러 로우와 연결이 되는 관계

    -> Customer 테이블과 order 테이블은 1:N 관계에 있다.
    -> Order 테이블의 customer_id 컬럼이 customer 테이블의 primary key를 참조하고 있다.
  • Many to Many
    테이블 A의 여러 로우가 테이블 B의 여러 로우와 연결이 되는 관계
  • normalization 정규화
    중복 데이터를 저장하지 않음으로 디스크를 더 효율적으로 쓰고, 같은 데이터지만 부분적으로 내용이 다른 데이터가 생기지 않도록 한다.
    (참고) Normalization rules

트랜잭션이란? ACID는 무엇인가?

  1. Commit
    모든 작업을 정상적으로 처리하겠다고 확정하는 명령어. 하나의 트랜젝션 과정을 종료한다.
    -> 변경된 내용을 영구 저장할 때 사용한다.
  2. Rollback
    작업 중 문제가 발생했을 때, 트랜젝션의 처리 과정에서 발생한 변경 사항을 취소하고, 트랜젝션 과정을 종료시킨다.
    -> 변경되기 이전 상태로 되돌릴 때 사용한다.
  • ACID (Atomicity, Consistency, Isolation, Durability)
  1. 원자성: 트랜잭션과 관련된 작업들이 부분적으로 실행되다가 중단되지 않도록 보장한다.
  2. 일관성: 트랜잭션이 실행을 성공적으로 완료하면, 언제나 일관성 있는 데이터베이스 상태로 유지한다.
  3. 고립성: 트랙잭션 수행 시 다른 트랜잭션의 작업이 끼어들지 못하도록 한다.
  4. 지속성: 성공적으로 수행된 트랜잭션은 시스템문제, DB일관성 체크를 하더라도 유지되어야 한다.

관계형 데이터베이스와 비관계형 데이터베이스의 차이는?

  • SQL 관계형 데이터베이스
  1. 데이터를 체계적으로 저장, 관리할 수 있다.
  2. 정형화된 데이터, 데이터의 완전성이 중요한 데이터를 저장하는데 유리하다. ex) 전자상거래 정보, 은행 계좌 정보 등
  3. 테이블 구조가 미리 정의되어 있어 단순히 서버를 늘리는것 만으로 확장하기가 쉽지않다.
  • NoSQL 비관계형 데이터베이스
  1. 데이터 구조를 미리 정의하지 않아도 되므로 데이터 구조 변화에 유연하다.
  2. 확장하기가 쉽고, 방대한 양의 데이터를 저장하기에 유리하다. ex) 로그데이터
  3. 트랜잭션이 안되거나 비교적 불안정하다.

2. DOM & Event by 멘토 신영님(오후 세션2)

  • HTML 마크업
    head 문서에 대한 정보, body 브라우저에 보여지는 것을 태그로 표현한 것

DOM

JS에서 HTML에 접근해서 요소를 생성하고, 클래스를 부여하고, 스타일을 수정하고, 내용을 추가한다.

  • querySelector('') 클래스, id, 태그를 모두 가져올 수 있다. 가장 첫번째 요소를 반환한다.
  • getElementsByclassName('') 배열로 가져오기 때문에 인덱스가 필요하다.
  • getElementsByTagName('') 배열로 가져오기 때문에 인덱스가 필요하다.
  • getElementByIdName('') ID는 중복사용할 수 없기 때문에 단수형으로 쓴다.

westagram Project 스타뜨

  • flex를 활용하자
    justify-contentalign-items의 차이 알기!
profile
그때그때 공부한 내용과 생각을 기록하는 블로그입니다.

0개의 댓글