본문 바로가기

전체 글291

[Application Layer] DNS record, protocol resource record foramt (RR format) (name, value, type, ttl) type 4가지 A: (hostname, ip address, A) NS : (domain, hostname of authoritative name server, NS) example( ssu.ac.kr, dns.ssu.ac.kr, NS) - 숭실대학교 도메인에서 이름 바꿔주는 dns server이 dns.ssu.ac.kr CNAME: (alias name, canonical name) example( www.naver.com, backup1.naver.com, CNAME) 부하 분산을 위해 naver.com에 대해 여러 개의 서버를 두는데 그 중에 하나의 물리 서버의 이름을 주는 것이다. nave.. 2020. 5. 31.
[Application Layer] DNS architecture 계층 구조에서 1계층인 root에 대해 살펴보자. ROOT(1계층) client에게 TLD를 알려주는 역할을 한다. global하게 root가 복제되어 미국에 10개 유럽에 2개 일본에 1개로 운영된다. root는 직접 이름을 ip로 바꿔주는 것이 아니라 domain의 해당되는 2계층을 알려주게 된다. 단, 실제 서비스는 root로 오는 것 보다는 2계층까지 가는 것으로 운영하려 한다. 기본은 root로 오는 것이다. TLD(top-level domain server)(2계층) client에게 authoritative DNS server를 알려주는 역할을 한다. 2계층의 com 을 관리하는 서버는 com에 해당하는 모든 domain을 관리한다. 이런 방식으로 org, edu 와 같은 부류로 나누어 해당되.. 2020. 5. 31.
[Transaction] Concurrency Control concurrency control은 두 가지 조건을 만족시켜야한다. 1. conflict or view serializable 2. recoverable and preferably cascadeless 현실적으로 스케줄을 수행하고 serializability를 체크하는 것은 오래 걸린다. 자동적으로 concurrency control을 할 수 있는 방법은 없을까? 답은 database system에 concurrency control protocol이 들어있다. protocol대로 처리하면 자동적으로 serializable 해지고 recoverable해진다. lock이나 multiversion, timestamp 을 사용하여 concurrency control을 보장하며 장단점이 존재한다. concur.. 2020. 5. 30.
[Transaction] Recoverability serializability를 확인하는 이유는 database의 consistency를 concurrent execution 하에서 보장하기 위함이었다. transaction 수행시 failure 발생할 때 회복 가능하도록 하는 것과 관련되어 살펴보겠다. RC database의 consistency를 위해서는 스케줄이 recoverable해야한다. recoverable schedule의 핵심은 commit의 순서를 규칙에 따라 조정하는 것이다. 규칙은 서로 다른 트랜잭션이 같은 데이터를 read와 write 하면 read하는 트랜잭션을 더 늦게 commit하는 것이다. 아래와 같이 처리하는 것이다. Tj Ti W(x) R(x) commit commit cascading rollback: 하나의 트랜잭션에.. 2020. 5. 30.