일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- SQLP
- 클린 코드
- leetcode215
- 로버트C마틴
- B*Tree인덱스구조
- db
- B*Tree
- 파이썬
- Oracle
- 조인
- SQL튜닝의시작
- heapq
- B*Tree인덱스
- 친절한SQL튜닝
- index fast full scan
- 클린코드
- 오라클튜닝
- clean code
- database
- intellij
- table full scan
- 결합인덱스구조
- join
- 리눅스
- SQLD
- 데이터모델링
- RAC
- 오라클
- 알고리즘
- 리트코드215
- Today
- Total
목록오라클 (14)
개발노트
PGA 오라클 서버 프로세스는 SGA 에 공유된 데이터를 읽고 쓰면서, 동시에 자신만의 고유 메모리 영역 PGA 를 갖는다. PGA 는 프로세스에 종속적인 고유 데이터를 저장하는 용도로 사용한다. 할당받은 PGA 공간이 작아 데이터를 모두 저장할 수 없을 때는 Temp 테이블스페이스를 이용한다. * temp tbs 는 물리적 disk 형태로 존재한다. PGA 는 다른 프로세스와 공유하지 않는 메모리 공간으로, 래치 메커니즘이 불필요하다. → 같은 양의 데이터를 읽더라도 SGA 버퍼캐시에서 읽을 때보다 훨씬 빠르다. Sort Merge Join 기본 메커니즘 이름이 의미하는 것처럼 2단계로 진행한다. 1. 소트 단계 : 양쪽 집합을 조인 컬럼 기준으로 정렬한다. 2. 머지 단계 : 정렬한 양쪽 집합을 서로..
NL 조인 특징 요약 1. 랜덤 액세스 위주의 조인 방식 *랜덤 액세스는 레코드 하나를 읽기 위해 블록을 통째로 읽는다. 2. 조인을 한 레코드씩 순차적으로 진행 → 부분범위 처리가 가능, Driving 테이블 처리 범위에 따라 전체 일량 결정 3. 인덱스 구성 전략이 중요 따라서, NL 조인은 소량 데이터를 주로 처리하거나, 부분범위 처리가 가능한 온라인 트랜잭션 처리(OLTP) 시스템에 적합한 조인 방식이라고 할 수 있다. 기본 메커니즘 NL JOIN = Nested Loop Join SELECT E.사원명, C.고객명, C.전화번호 FROM 사원 E, 고객 C WHERE E.입사일자 >= '19960101' AND C.관리사원번호 = E.사원번호 사원 : Outer Table, Driving Tab..
Oracle RAC(Real Applications Cluster) RAC 데이터베이스에는 일반적으로 여러 개별 서버에 동일 공유 데이터베이스에 대한 여러 Instance 가 포함된다. 대부분의 회사들은 oracle 서버를 사용할 때 RAC 구조로 서버를 구성한다. RAC으로 연결된 N개의 Instance는 동일한 Datafile을 공유(사실 같은 파일을 공유한다기보다는.. 동기화 작업으로? 내용은 같으나 물리적 위치는 다르지 않나?)하여 사용하지만, 데이터베이스 작업에 사용할 수 있는 CPU나 메모리 등의 Resouce 는 서로 공유하지 않고 해당 Node의 Resource만 사용한다. 아래와 같은 이미지로 RAC 을 구성할 때, tnsnames.ora 는 다음과 같이 구성 TNS_I1 = (DESCR..
Instance 란? 공유 메모리 영역(SGA) 와 Backgroud Process 를 의미한다. 오라클 데이터베이스 서버가 Shutdown 상태에서 No Mount 상태로 변경될때, Instance 가 시작된다. 이는 SGA 영역이 할당되고, Backgroud process 가 시작되는 것을 의미한다. Single Instance System(=단일 인스턴스 시스템, 클러스터화되지 않은 시스템) disk 와 insatance 가 1:1 매칭됨 Disk1 ← Instance1 Disk2 ← Instance2 Disk3 ← Instance3 Clustered System(=클러스터화된 시스템, RAC) 하나의 disk를 여러 서버가 공유하는 구조 Server1 → Disk그룹1 ← Instance1(=no..
4가지 기동 상태 Shutdown : Database 와 Instance 가 모두 Close 된 상태이다. 접속 불가 No Mount : Instance(백그라운드 프로세스 + SGA) 는 Start 된 상태이다. 그러나 Database 는 여전히 Close 상태이다. 초기화 Parameter file 을 사용해서 Instance 를 구성하여 시작하는 단계이다. sql*plus 에서 Instance 를 시작하면 SGA에 할당된 메모리 사이즈를 표시해준다. Mount : Database가 Mount 된 상태이다. Instance Start 유지 Control file 을 읽어서 특정 Database 와 Instance 를 연관시키는 단계이다. 데이터파일 이름변경, 아카이브로그모드 변경, 데이터베이스 복구 ..
Tablespace 조회 dba_tablespaces : 모든 tablespace 목록 SQL> get tbs1 1 select tablespace_name, block_size, max_size/1024/1024, status, contents, logging, extent_management, allocation_type, segment_space_management 2* from dba_tablespaces SQL> @tbs1 TABLESPACE_NAME BLOCK_SIZE MAX_SIZE/1024/1024 STATUS CONTENTS LOGGING EXTENT_MANAGEMENT ALLOCATION_TYPE SEGMENT_SPAC -------------------- ---------- -----..