
데이터베이스 설계(1)

데이터베이스 설계(2)
데이터베이스 설계(3)
관계 데이터베이스란? 관계의 집합이다. 테이블 간의 관계들이 모인 것이다. 릴레이션의 구성요소는 아래와 같다. 스키마 릴레이션의 이름을 명세한다. 각 컬럼의 타입과 이름 그리고 제약 조건들을 통합한다. 인스턴스 테이블이다. 열과 행으로 이루어져 있다. 튜플의 집합이
Selection(σ)조건을 만족하는 튜플을 고른다.Projection(π)원하는 속성만을 가져온다.Cartesian(Cross)-product(×)두 개의 릴레이션을 곱한다.Set-difference(−)A 릴레이션에서 B릴레이션을 뺀 것이다.Union(∪)A 릴레이

Basic SQL Query SELECT절 관계 대수의 projection 연산에 해당 DISTINCT는 선택적인 키워드로 중복된 데이터 없이 결과를 출력합니다. 기본적으로 적용되지 않기에 명시적으로 적용해야 합니다. FROM절 관계 대수의 cartesian prod

현실세계의 값이나 사실을 추상화하는 개념적 모델링을 하면 개념적 구조가 만들어진다.개념적 구조를 데이터 모델링해서 변환하면 논리적 구조(데이터 모델)개념적 설계에서 산출되는 것이 ER다이어그램이다.ER다이어그램을 통해 테이블을 만든다.데이터 모델이란?어떤 데이터를 기술
데이터베이스 디자인 정의사용자의 요구사항으로부터 현실세계를 반영한 데이터베이스 구조를 도출해내는 과정데이터베이스 생명 주기요구조건 분석 -> 설계 -> 구현 -> 운영 -> 감시 및 개선데이터베이스 디자인 단계요구 사항 분석 -> 개념적 설계 -> 논리적 설계 -> 물

관계 모델을 이용하여 어떻게 실세계를 정확히 표현할 것인가?애트리뷰트, 엔티티, 관계성을 파악관련된 애트리뷰트들을 릴레이션으로 묶음데이터 종속성: 애트리뷰트들 간의 관계성효율적인 데이터 조작데이터의 중복성 감소변칙적 성질인 이상예방애트리뷰들 간에 존재하는 여러 종속관계

데이터베이스에서의 일의 단위흔한 예시: 계좌 이체위에서 순서는 중요하지 않다 그러나 모두 다 실행되거나 모두 다 실행되지 말아야 한다.일부만 실행되는 것은 옳은 작동이 아니다.이를 위해 하나의 트랜잭션(단위)로 DBMS가 처리하도록 보장해야 한다.한 트랜잭션 내의 모든
데이터베이스를 장애발생 이전의 일관된 상태로 복원시키는 것데이터베이스에 오류가 없는 상태, 데이터베이스의 내용에 모순이 없는 상태시스템이 정해진 명세대로 작동하지 않는 상태트랜잭션 장애시스템 장애미디어 장애DBMS의 서브 시스템으로 신뢰성 있는 회복을 책임중복덤프: 다

1주차 안 들어서 정확히 뭔 내용인지도 모름.명령어를 처리할 때, 각 단계(Fetch, Decode, Execute 등)를 분리하여 여러 명령어를 동시에 처리하는 방식파이프라이닝 설계는 분기를 미리 예측에서 예측 실행함.CPU가 한 사이클에 여러 개의 명령어를 동시에

사람이 자연스럽게 사용하기 좋은 언어는 자연어그러나 자연어로 프로그래밍 하기에는 컴퓨터 시스템이 그렇게까지 발전하지 않았음.언젠간 자연어만으로 프로그래밍 되는 날이 올 것임.자연어 대신에 이에 가까운 언어들을 사용함. 이를 고수준 언어라고 한다.고수준 언어에는 impe

function 또는 Procedure Call에 들어가는 머신 인스터럭션에 어떤 절차가 들어갈까?어떤 main이라는 function에서 A라는 function을 호출하면 main이 caller이 된다.A는 callee가 된다.caller는 callee에게 파라미터를

아스키로 이루어진 소스 파일은 기계어로 번역되어야 컴퓨터가 실행할 수 있다.프로그램을 컴파일 했을 때 하나의 큰 파일로 만들게 되면 불편함이 있다.프로그램의 일부만 바꿔도 모두 바꿔야 한다.프로그램의 일부 기능만 재 사용하고 싶을때도 큰 파일을 다 가져와야 한다.그래서

컴파일러가 Symbol Table을 만든다.컴파일러가 각각의 소스파일을 컴파일해서 오브젝트 파일을 만든다. 거기서 정의된 함수 이름 글로별 변수들을 심볼테이블에 저장한다.링커는 크게 두 가지 일을 한다. Symbol resolution코드에 있는 모든 함수를 가르키는

컴퓨터 구조(6)

Division 나눗셈은 빼기와 쉬프트로 구현이 가능하다. 곱셈에 쓰였던 하드웨어가 그대로 나눗셈에 사용될 수 있다. Dvidend = Quotient*Divisor+Reminder division of unsigned binary integers Signed Di

두 개의 값 중에 하나가 0인지 체크한다. 하나가 0이면 하나의 값과 같기 때문이다.작은 수의 유효자리를 큰 수에 맞춘다.더한다.정규화를 한다.두 개의 값 중 하나가 0인지 확인한다.곱셈은 지수는 더하고 유효자리는 곱하면 된다.나눗셈은 지수는 빼고 유효자리는 나눠주면