Code Forest
03. DB Lock(Pin) (01) DB Lock 개요래치를 빨리 놓지 않으면 경합이 발생한다DB 버퍼캐시에서 원하는 버퍼블럭을 찾았다면 가급적 빨리 쥐고 있는 래치를 해제해야 한다.그렇지 않으면 하나의 cache buffers chains 래치에는 여러 개의 해시 체인이 달려 있기 때문에 경합 발생 가능성이 증가하게 된다. 그런데 그 버퍼에 먼저 접근한 선행 프로세스가 아직 버퍼를 사용중이라면 어떻게 해야 할까? 블럭에 대해 작업을 수행하려면 Lock을 얻어야 한다아주 짧은 순간이라도 두 개 이상의 프로세스가 동시에 버퍼내용을 읽고 쓴다면 데이터 정합성에 문제가 생길 수 있기 때문에,캐시된 버퍼 블럭을 읽거나 변경하려는 프로세스는 먼저 버퍼헤더에서 버퍼 Lock을 획득해야 한다. 버퍼 Lock은 프..
적어도 군대에서 자격증 하나 둘은 따야겠다고 생각해서 찾은게 SQLD 였다.공부기간은 약 3개월. (상병 1호봉 ~ 상병 3호봉) 책은 공식 수험서로 나왔던 SQLP 전문가가이드, 문제집으로만 공부했고.기초 지식이 없어서 처음부터 세세하게 읽어가면서 공부했다.개인적인 생각으로는 위에 적힌 두가지 책만으로도 충분히 합격은 가능하지만,고득점을 맞으려면 다른 책도 읽어야 한다는 것을 느꼈다. 예를들면 데이터모델링의 이해 과목에서 공식 수험서에는 나오지 않았던"데이터설계를 잘못했을 시 발생할 수 있는 오류" 부분.24회 문제에서는 M:M 관계로 설계하고, 이 데이터모델로 작성한 쿼리에서 발생할 수 있는 트랩의 이름을 물어봤다.
02. DB 버퍼캐시빠른 입출력을 위해 사용되는 부분은 SGA캐시영역 내에 있는 DB버퍼캐시이며,데이터를 쓰거나 읽을 때 반드시 경유되는 영역이다.DB버퍼캐시에는 다음과 같은 4가지 특징이 있다. (01) 블럭단위 I/O일부 컬럼기반 DBMS를 제외한 대부분의 DBMS는 블럭단위로 데이터를 처리한다.블럭단위로 데이터를 처리한다는 것은 블럭내의 한 레코드만 갱신하거나 읽더라도,해당 레코드가 속한 블럭 전체를 읽어야 함을 뜻한다. 가령 수많은 레코드를 읽더라도, 이 레코드 집합이 한 블럭내에 존재한다면한 레코드를 읽었을 때와 비교해도 읽기비용만큼은 같다는 것을 의미한다. 이것은 SQL의 SELECT구문 성능이 읽어야하는 레코드 수가 아닌 읽어야하는 블럭 수로 좌우됨을 의미하고,데이터베이스 I/O 튜닝을 이해..
01. 기본 아키텍쳐 (01) 기본 아키텍쳐 오라클의 기본 아키텍쳐를 간단히 표현하면 다음과 같다. 디스크에 저장된 데이터 집합 (데이터베이스)SGA(System Global Area) 공유 캐시 메모리 영역디스크와 SGA를 액세스하는 프로세스특히 SGA와 프로세스 집합을 합쳐 인스턴스(Instance)라고 부르며,SGA는 여러 프로세스가 동시에 액세스 할 수 있기 때문에, SGA의 자료구조를 보호하고 접근요청을 직렬화하는 래치(Latch)와저장된 자료를 보호하기 위한 락(Lock)이 필요하다. 위의 그림은 오라클 인스턴스를 간략히 표현한 것 인데,그림에서 볼 수 있듯이 프로세스는 다시 서버 프로세스와 백그라운드 프로세스로 나눌 수 있다. 서버 프로세스는 클라이언트를 위한 다음과 같은 일련의 서비스를 제..
모델링 현실세계를 추상화, 단순화, 명확화한 것. 추상화 구현방법을 생략. 단순히 입력/출력만을 설계. 즉, 제한된 표기법을 사용. 단순화 불필요한 속성을 생략함. 명확화 애매모호한 속성의 특징을 정확히 함. 모델링 관점 데이터 관점 데이터 구조, 형식, 제약조건을 모델링. 프로세스 관점 추상화된 트랜잭션를 모델링. 상관 관점 데이터와 트랜잭션의 연관성을 모델링. 즉, 트랜잭션을 구현하는 모델링. 데이터모델링 정보 시스템의 구축을 위하여 현실세계를 정해진 방식을 거쳐 정제한 것. 데이터모델링의 기능 시스템을 원하는 형태로 가시화 함. 시스템의 구조, 행동, 구축과정을 문서화, 명세화 함. 시스템을 구축하는 틀을 제공. 특정 영역에 집중하기 위해 다른 영역을 숨길 수 있음. 특정 목표에 따라 다양한 수준의..
정보 시스템 정보 시스템 조직이 필요한 자료를 수집, 처리, 분배하는 시스템. 자료처리 시스템 정보 시스템이 수집한 자료를 가공하는 정보 시스템의 서브 시스템. 데이터웨어 하우스 자료처리 시스템에서 추출된 정보로 이루어진 데이터베이스. 데이터베이스의 정의 통합된 데이터 중복이 배제될 것. 저장된 데이터 접근 가능한 저장매체에 저장될 것. 운영 데이터 조직이 필요한 데이터여야 할 것. 공용 데이터 여러 사용자가 공동으로 소유할 수 있어야 할 것. 데이터베이스의 특성 실시간 접근성 실시간으로 저장된 데이터에 접근할 수 있음. 지속적 변화 끊임없이 데이터베이스 내 자료가 삽입, 수정, 삭제 됨. 동시 공유 여러명의 사용자가 존재함. 내용에 의한 참조 값을 조건자로 데이터를 검색함. 기존의 자료처리방식(파일처리..