SlideShare une entreprise Scribd logo
1  sur  7
Télécharger pour lire hors ligne
WareValley
http://www.WareValley.com
Database Audit and Protection [ DB 접근통제 ]
Database Encryption [ DB 암호화 ]
Database Vulnerability Assessment [ DB 취약점 분석 ]
Database SQL Query Approval [ DB 작업결재 ]
Database Performance Monitoring and Management [ DB 성능관리 및 개발 ]
WareValley
Oracle Architecture
Redo & Undo
오렌지팀 윤석준 선임연구원
Database security and management, WareValley.
http://www.WareValley.com
Redo Log
 Data File과 Control File의 모든 변경 사항을 기록 -> Redo Log
Online Redo 기록
(1개 Active,
나머지 Stand-by)
Log Switching
(기존 Active가 Full,
Stand-by -> Active)
Backup to
Archived Redo
Stand-by
Database security and management, WareValley.
http://www.WareValley.com
Use of Redo Log
Database Recovery : 물리적 Media fail 발생시
Archived Redo Log를 이용하여 복구
Cache Recovery : Cache 변경사항 Disk 기록 전
Instance가 비정상 종료된 경우
Fast Commit : Disk (Random Access)는 느려서, Redo
Log (Append) 에 기록 후 Commit 통보
Database security and management, WareValley.
http://www.WareValley.com
Record of Redo Log
3초마다 DBWR Process로부터 신호를 받을 때
Log Buffer의 1/3이 차거나 1MB이상 기록되었을 때
Commit or Rollback
 LGWR Process가 담당
- Redo Log Buffer에 먼저 기록 한 후 특정시점에 Redo Log File에 기록
Database security and management, WareValley.
http://www.WareValley.com
Fast Commit Mechanism
http://bysql.net/index.php?document_srl=22748&mid=w201201O
Database security and management, WareValley.
http://www.WareValley.com
Undo (=Rollback)
Transaction Rollback : Commit 하지 않고
Rollback한 경우
Transaction Recovery : Redo Log Cache
Recovery와 같이 활용
Read Consistency : Oracle의 읽기 일관성 구현
( 다른 DBMS (DB2,SQL Server, Sybase 등)은 Lcok으로 구현 )
Database security and management, WareValley.
http://www.WareValley.com
Undo Segment
http://wiki.gurubee.net/display/STUDY/Undo
Transaction 별로 할당
Transaction ID [ USN# + Slot# + Wrap# ]
Transaction Status
Commit SCN
Last UBA (User Buffer Address)
Etc…
Undo Header
Insert : 추가된 Record의 rowid
Update : 변경된 Column의 before image
Delete : 지워진 Row의 before image
Undo Record

Contenu connexe

Plus de Seok-joon Yun

AWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image Converter
AWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image ConverterAWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image Converter
AWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image ConverterSeok-joon Yun
 
아파트 시세,어쩌다 머신러닝까지
아파트 시세,어쩌다 머신러닝까지아파트 시세,어쩌다 머신러닝까지
아파트 시세,어쩌다 머신러닝까지Seok-joon Yun
 
Pro typescript.ch07.Exception, Memory, Performance
Pro typescript.ch07.Exception, Memory, PerformancePro typescript.ch07.Exception, Memory, Performance
Pro typescript.ch07.Exception, Memory, PerformanceSeok-joon Yun
 
Doing math with python.ch07
Doing math with python.ch07Doing math with python.ch07
Doing math with python.ch07Seok-joon Yun
 
Doing math with python.ch06
Doing math with python.ch06Doing math with python.ch06
Doing math with python.ch06Seok-joon Yun
 
Doing math with python.ch05
Doing math with python.ch05Doing math with python.ch05
Doing math with python.ch05Seok-joon Yun
 
Doing math with python.ch04
Doing math with python.ch04Doing math with python.ch04
Doing math with python.ch04Seok-joon Yun
 
Doing math with python.ch03
Doing math with python.ch03Doing math with python.ch03
Doing math with python.ch03Seok-joon Yun
 
Doing mathwithpython.ch02
Doing mathwithpython.ch02Doing mathwithpython.ch02
Doing mathwithpython.ch02Seok-joon Yun
 
Doing math with python.ch01
Doing math with python.ch01Doing math with python.ch01
Doing math with python.ch01Seok-joon Yun
 
Pro typescript.ch03.Object Orientation in TypeScript
Pro typescript.ch03.Object Orientation in TypeScriptPro typescript.ch03.Object Orientation in TypeScript
Pro typescript.ch03.Object Orientation in TypeScriptSeok-joon Yun
 
C++ Concurrency in Action 9-2 Interrupting threads
C++ Concurrency in Action 9-2 Interrupting threadsC++ Concurrency in Action 9-2 Interrupting threads
C++ Concurrency in Action 9-2 Interrupting threadsSeok-joon Yun
 
Welcome to Modern C++
Welcome to Modern C++Welcome to Modern C++
Welcome to Modern C++Seok-joon Yun
 
[2015-07-20-윤석준] Oracle 성능 관리 2
[2015-07-20-윤석준] Oracle 성능 관리 2[2015-07-20-윤석준] Oracle 성능 관리 2
[2015-07-20-윤석준] Oracle 성능 관리 2Seok-joon Yun
 
[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat
[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat
[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstatSeok-joon Yun
 
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4Seok-joon Yun
 
오렌지6.0 교육자료
오렌지6.0 교육자료오렌지6.0 교육자료
오렌지6.0 교육자료Seok-joon Yun
 

Plus de Seok-joon Yun (20)

Sprint & Jira
Sprint & JiraSprint & Jira
Sprint & Jira
 
Eks.introduce.v2
Eks.introduce.v2Eks.introduce.v2
Eks.introduce.v2
 
Eks.introduce
Eks.introduceEks.introduce
Eks.introduce
 
AWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image Converter
AWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image ConverterAWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image Converter
AWS DEV DAY SEOUL 2017 Buliding Serverless Web App - 직방 Image Converter
 
아파트 시세,어쩌다 머신러닝까지
아파트 시세,어쩌다 머신러닝까지아파트 시세,어쩌다 머신러닝까지
아파트 시세,어쩌다 머신러닝까지
 
Pro typescript.ch07.Exception, Memory, Performance
Pro typescript.ch07.Exception, Memory, PerformancePro typescript.ch07.Exception, Memory, Performance
Pro typescript.ch07.Exception, Memory, Performance
 
Doing math with python.ch07
Doing math with python.ch07Doing math with python.ch07
Doing math with python.ch07
 
Doing math with python.ch06
Doing math with python.ch06Doing math with python.ch06
Doing math with python.ch06
 
Doing math with python.ch05
Doing math with python.ch05Doing math with python.ch05
Doing math with python.ch05
 
Doing math with python.ch04
Doing math with python.ch04Doing math with python.ch04
Doing math with python.ch04
 
Doing math with python.ch03
Doing math with python.ch03Doing math with python.ch03
Doing math with python.ch03
 
Doing mathwithpython.ch02
Doing mathwithpython.ch02Doing mathwithpython.ch02
Doing mathwithpython.ch02
 
Doing math with python.ch01
Doing math with python.ch01Doing math with python.ch01
Doing math with python.ch01
 
Pro typescript.ch03.Object Orientation in TypeScript
Pro typescript.ch03.Object Orientation in TypeScriptPro typescript.ch03.Object Orientation in TypeScript
Pro typescript.ch03.Object Orientation in TypeScript
 
C++ Concurrency in Action 9-2 Interrupting threads
C++ Concurrency in Action 9-2 Interrupting threadsC++ Concurrency in Action 9-2 Interrupting threads
C++ Concurrency in Action 9-2 Interrupting threads
 
Welcome to Modern C++
Welcome to Modern C++Welcome to Modern C++
Welcome to Modern C++
 
[2015-07-20-윤석준] Oracle 성능 관리 2
[2015-07-20-윤석준] Oracle 성능 관리 2[2015-07-20-윤석준] Oracle 성능 관리 2
[2015-07-20-윤석준] Oracle 성능 관리 2
 
[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat
[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat
[2015-07-10-윤석준] Oracle 성능 관리 & v$sysstat
 
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
 
오렌지6.0 교육자료
오렌지6.0 교육자료오렌지6.0 교육자료
오렌지6.0 교육자료
 

[Oracle Architecture][2015 04-03] Redo & Undo

  • 1. WareValley http://www.WareValley.com Database Audit and Protection [ DB 접근통제 ] Database Encryption [ DB 암호화 ] Database Vulnerability Assessment [ DB 취약점 분석 ] Database SQL Query Approval [ DB 작업결재 ] Database Performance Monitoring and Management [ DB 성능관리 및 개발 ] WareValley Oracle Architecture Redo & Undo 오렌지팀 윤석준 선임연구원
  • 2. Database security and management, WareValley. http://www.WareValley.com Redo Log  Data File과 Control File의 모든 변경 사항을 기록 -> Redo Log Online Redo 기록 (1개 Active, 나머지 Stand-by) Log Switching (기존 Active가 Full, Stand-by -> Active) Backup to Archived Redo Stand-by
  • 3. Database security and management, WareValley. http://www.WareValley.com Use of Redo Log Database Recovery : 물리적 Media fail 발생시 Archived Redo Log를 이용하여 복구 Cache Recovery : Cache 변경사항 Disk 기록 전 Instance가 비정상 종료된 경우 Fast Commit : Disk (Random Access)는 느려서, Redo Log (Append) 에 기록 후 Commit 통보
  • 4. Database security and management, WareValley. http://www.WareValley.com Record of Redo Log 3초마다 DBWR Process로부터 신호를 받을 때 Log Buffer의 1/3이 차거나 1MB이상 기록되었을 때 Commit or Rollback  LGWR Process가 담당 - Redo Log Buffer에 먼저 기록 한 후 특정시점에 Redo Log File에 기록
  • 5. Database security and management, WareValley. http://www.WareValley.com Fast Commit Mechanism http://bysql.net/index.php?document_srl=22748&mid=w201201O
  • 6. Database security and management, WareValley. http://www.WareValley.com Undo (=Rollback) Transaction Rollback : Commit 하지 않고 Rollback한 경우 Transaction Recovery : Redo Log Cache Recovery와 같이 활용 Read Consistency : Oracle의 읽기 일관성 구현 ( 다른 DBMS (DB2,SQL Server, Sybase 등)은 Lcok으로 구현 )
  • 7. Database security and management, WareValley. http://www.WareValley.com Undo Segment http://wiki.gurubee.net/display/STUDY/Undo Transaction 별로 할당 Transaction ID [ USN# + Slot# + Wrap# ] Transaction Status Commit SCN Last UBA (User Buffer Address) Etc… Undo Header Insert : 추가된 Record의 rowid Update : 변경된 Column의 before image Delete : 지워진 Row의 before image Undo Record