일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- JavaScript
- 깃헙
- 속성 선택자
- nth-of-type()
- optgroup
- 상속
- nth-child()
- 즐거운자바
- 웹개발
- 소스트리
- 자바
- 즐거운 자바
- 부정 선택자
- 가상클래스 선택자
- 다시보자
- ES6
- spring
- datalist
- HTML Templating
- 다시볼 것
- vmin
- 서블릿
- jsp
- 가상요소 선택자
- vmax
- 부스트코스
- 김성박
- 보충필요
- EDWITH
- 복합 선택자
Archives
- Today
- Total
기억의 DataBase
ORACLE의 기본구조3 본문
-
ORACLE과 네트워크
-
네트워크 7계층
L1(Physical) > port와 같은 실제 하드웨어 차원의 계층 (실제 물리적 라인)
L2(Link) > 인접한 Server간의 연결 >> LAN
L3(Network) > Link간에 라우터(주소 분류)를 해줌 >> IP
L4(Transport) > 도착한 패킷의 이상유무 확인 >> TCP
L5(Session) > 두 통신주체간의 확인
L6(Presentation) > 받은 Data를 OS에 맞게 번역(OS간 문자코드가 다름)
L7(Application) > 변역된 Data를 Application이 사용
※각 계층별 보안과 튜닝문제 존재
-
Lock
-
Shared Lock(Read Lock) - Table
간략히 말해 Select에서 해당되는 내용으로 다수의 사용자가 동일한 Data를 볼 수 있도록,
읽기(Select) 상태에서는 Insert,Delete, Update를 할 수 없도록 Lock을 거는 것
(다수의 사용자가 접근하여 읽기는 가능)
-
Exclusive Lock(Write Lock) - Column
Data의 일관성을 위해서Insert,Delete, Update를 하는 경우 Lock을 걸어,
한 사용자에게만 데이터 접근권한을 주고 다른 사용자가 Data 변경을 하지 못하게 하는 것
※DDL문의 경우 Auto Commit을 실행함(Exclusive Lock 상태)
※Exclusive Lock이 일정 비율이 넘어가면 Shared Lock으로 자동전환( 락 확대-Lock Escalation)
※DIRTY READS : 하나의 트랜잭션이 또 다른 트랜잭션이 만든 커미트되지 않은
변화를 읽을 때 Dirty Read가 발생
※LOST UPDATE : 한 업데이트는 다른 업데이트를 덮어 씀으로서 하나가 없어지도록하는 파괴적 충돌
-
Dead Lock
교착 상태로 인하여 상호 Transaction이 Waiting 상태에 빠짐
해결방법 : 1. 작업 순서를 정해줌
2. ORACLE의 경우 일정시간 DeadLock이 발생시 RollBack을 실행한다.
-
Latch
System Lock이라고 할 수 있는데, DBMS 내의 백서버내의 Process 간의 Lock을 통해 Data 일관성을 유지
-
MultiVersioning / SCN
MultiVersioning : SCN을 기준으로 요청을 순서있게 처리함
SCN( System Change Number) : Commit는 시스템 변화수(SCN)를 증가시킴
SCN을 트랜잭션의 유일한 식별자로 인식
ex ) 1 > 2 > 5 > 3???
★기준은 Commit
1)Commit이 된 경우 : Commit 상태의 Data를 줌
1)Commit이 안된 경우 : RollbackSegment의 Data를 줌
※ SnapShot Too Old 에러 메시지
>> RollbackSegment에 담긴 내용을 불러올 수 없을 만큼 지난 Data라 RollBack할 수 없다는 메시지
>> 해결방법 : RollbackSegment 공간 확장
-
분산 DataBase >> 보안문제로 현실 사용↓
-
DB link(URL) : 원격 DB를 Local처럼 사용
-
DB 복제 : 성능을 위해 원격 DB를 Copy해서 가져옴
-
페러렐 프로세싱 옵션(Oracle Parallel Processing Options)
가) 공유 메모리 시스템
나) 공유 디스크 시스템
※PC H/W + 업무파악(도메인) = 좋은 설계(Modeling) - 고정된 것이 없어서 편차가 큰 영역
'DB' 카테고리의 다른 글
PL(Procedural Language)/SQL (0) | 2019.01.17 |
---|---|
SQL (0) | 2019.01.08 |
DW (0) | 2019.01.08 |
ORACLE의 기본구조2 (0) | 2019.01.02 |
ORACLE의 기본구조 (0) | 2018.12.31 |
Comments