일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자바 스레드 실행 순서 제어
- JAVA11
- SpringBoot 2
- 수학
- Easy
- 카데인 알고리즘
- array
- 자바 thread 실행 순서 제어
- scanner
- 자바입력
- heroku
- input
- 사칙연산
- Kadane's Algorithm
- hash table
- R
- Today
- Total
목록DB/Theory (6)
DeFacto-Standard IT
Shared Lock(공유잠금) - read연산 가능, write연산 불가, 여러 개의 트랜잭션이 동시에 걸기 가능 읽기는 데이터에 영향을 주지 않아 동시에 접근해도 문제가 안되므로 2개 이상의 트랜잭션이 접근하는 것을 허용. 데이터에 영향을 주지 않지만 lock을 거는 이유는, 읽는 도중에 데이터가 바뀌면 안되므로 lock을 걸어 데이터의 변환을 일으키는 Exclusive Lock을 걸 수 없도록 하기 위함이다. Exclusive Lock(배타잠금) - read, write 연산 둘 다 가능. 한 개의 트랜잭션만 걸 수 있음 쓰기는 데이터에 영향을 주기 때문에 동시에 접근한다면 기존에 수행했던 값은 다른 값으로 덮어씌워져 문제가 발생할 수 있다. 따라서 값을 쓰는 연산이 포함된다면 Exclusive L..
1차 정규형 – 모든 도메인을 원자값만으로 구성 2차 정규형 – 모든 필드가 키에 대해 함수적으로 종속, 부분 집합이 결정자가 되는 부분 종속이 존재하지 않는 경우(좌변최소성, 키가 하나의 필드로 구성되게 한다) 3차 정규형 – 이행적 함수적 종속을 제거 BCNF 정규형 – 모든 함수적 종속에서 결정자가 후보키
갱신이상(수정이상) – 중복된 튜플 중 일부만 수정하여 데이터가 불일치하게 되는 모순이 발생하는 경우. 삽입이상 – 새로운 열 데이터를 적용하여 튜플을 저장하려할 때 저장할 수 없거나, 저장하기 위해 원하지 않는 데이터를 삽입해야만 하는 경우.(주로 PK나 아직 결정되지 않은 나머지 열 데이터) 삭제이상 – 한 튜플을 삭제할 때, 삭제되지 말아야 할 정보까지 동시에 삭제되는 현상. -> 이상현상을 일으키는 열 데이터를 다른 테이블로 분리시키고, 기존 테이블에 FK로서 새로운 테이블의 PK를 제공하여 새로운 테이블만 변경하면 기존의 테이블을 사용해도 자동적으로 변경된 값을 사용할 수 있도록 한다.
관계형 데이터베이스의 설계에서 데이터의 중복이나 이로 인한 각종 연산에 따른 이상 현상을 최소화 하도록 데이터를 구조화 하는 것. 각 정규형의 조건에 맞게 테이블을 나누고 PK나 FK 등으로 제약조건을 걸어 놓아서,한 테이블에서 변경이 일어난다면 이를 참조하는 다른 테이블을 사용할 때도 자동적으로 변경된 데이터를 사용할 수 있다.
- 지연갱신 트랜잭션이 commit될 때 까지 갱신 내용을 디스크에 저장하지 않고 지연시킨다. 트랜잭션이 실행되는 동안에는 갱신된 내용을 주기억장치의 버퍼에 기록하고, 트랜잭션이 commit을 하면 버퍼의 내용을 디스크로 저장하도록 OS에 요청한다. 만약 트랜잭션 수행 도중 에러가 발생할 경우 디스크에 직접적으로 갱신하지 않았으므로 undo연산이 필요가 없다. 따라서 로그에는 이전 값이 필요가 없다. commit이 로그에 정상적으로 적혀 있더라도 디스크에 저장되지 않았을 경우에 대비하여 redo연산만 하면 된다. - 즉시갱신 트랜잭션이 commit할 때 마다 OS에 디스크에 저장할 것을 요구한다. 장애가 발생하여 재가동된다면 완료되지 못한 트랙잭션에 대해서 undo연산으로 값을 되돌려야 한다. commi..