정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 데이터 지역화(locality) — 공간 구역성과 병행제어·회복

지역화(국소성, locality)는 한 번 접근한 데이터 근처나 같은 위치가 다시 접근될 가능성이 높은 접근 패턴을 말한다. 이 세트는 공간 구역성과 시간 구역성을 구분하는 문제에서 출발해, 인덱스·로킹 단위·로그 기반 회복·물리적 설계까지 함께 묻는다.

2026-10-19 기준 · 정보처리기사 대시보드

이 개념을 문제로 확인하고 싶으면 이 개념 문제 10개 풀기 회원용

가입 없이 오늘의 10문제 바로 풀기 →

시험에 이렇게 나온다

출제기준 단원 「데이터 지역화(locality)」의 공개 문제 3개를 묻는 꼴별로 나누면 이렇습니다.

묻는 꼴문제 수무엇을 묻나
로킹 기법1로킹 단위와 기법 설명의 옳고 그름
회복 기법1로그를 활용하는 회복 방식 고르기
물리적 설계의 범위1물리적 설계 설명에서 거리가 먼 것

뜻

메모리 접근 패턴에는 공간적 국소성과 시간적 국소성이 있다. 공간적 국소성(Spatial Locality)은 인접한 메모리 주소가 자주 접근되는 현상이다. 시간적 국소성은 같은 주소가 반복 접근되는 현상이며, 셀(Counting)이나 집계(Totaling)에 쓰이는 변수가 여기에 해당한다. 셀과 집계 변수는 공간 구역성의 예가 아니므로 '공간 구역성에 해당하지 않는 것'을 고르는 문제의 정답이 된다.

데이터베이스 객체도 구분한다. 인덱스는 사용자가 수동으로 생성·수정할 수 있는 객체이므로 자동으로 생성된다는 설명은 틀리다. 물리적 설계는 저장 구조와 접근 경로의 최적화에 중점을 두며, 트랜잭션 인터페이스 설계는 논리적 설계의 영역이다.

병행제어 기법에는 로킹, 타임스탬프, 다중버전 등이 있다. 시분할은 CPU 할당 기법이므로 병행제어 기법이 아니다. 로킹 단위가 작아지면 동시에 접근할 수 있는 범위가 넓어져 병행성(공유도)은 높아지지만, 관리 대상이 늘어나 오버헤드도 증가한다. 반대로 로킹 단위가 크면 한 번에 잠그는 범위가 넓어져 병행성(동시 처리 능력)이 떨어진다.

회복도 함께 본다. 데이터베이스 로그를 필요로 하는 회복 기법은 즉각 갱신 기법으로, 트랜잭션 수행 중 변경 사항을 로그에 기록해 장애가 나면 복구한다. 트랜잭션을 수행하다 장애로 손상된 데이터베이스를 손상 이전의 정상 상태로 복구시키는 작업은 리커버리(Recovery)다. 장애 가운데 트랜잭션 장애는 논리적 오류라 저장 매체 손상이 없어, 복구 과정에서 데이터 무결성을 훼손할 위험이 가장 적다.

예제

선지 판단은 셀·집계 변수를 공간 구역성이 아니라 시간적 국소성으로 돌리는지, 인덱스를 사용자가 수동으로 만들고 고치는 객체로 보는지, 로킹 단위가 작을수록 병행성은 높고 오버헤드는 늘어난다고 읽는지, 병행제어 기법에서 시분할을 빼는지, 로그를 쓰는 회복 기법을 즉각 갱신 기법으로 고르는지, 손상된 데이터베이스를 이전 정상 상태로 되돌리는 작업을 리커버리로 짝지었는지, 물리적 설계의 초점을 저장 구조·접근 경로 최적화로 보는지에서 갈린다.

대표 기출 3문항

병행제어의 로킹(Locking) 단위에 대한 설명으로 옳지 않은 것은?

  1. 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
  2. 로킹 단위가 작아지면 로킹 오버헤드가 감소한다.
  3. 로킹 단위가 작아지면 데이터베이스 공유도가 증가한다.
  4. 한꺼번에 로킹 할 수 있는 객체의 크기를 로킹 단위라고 한다.
정답과 해설 보기

정답 ② · 데이터베이스 병행제어 기법인 로킹의 단위와 그에 따른 특성을 묻는 문제이다. 로킹 단위는 한 번에 잠글 수 있는 객체의 크기를 의미하며, 데이터베이스, 파일, 레코드, 필드 등이 모두 단위가 될 수 있다.

로킹 단위가 작아지면 동시성(공유도)은 증가하지만, 관리 대상이 늘어나 오버헤드는 증가한다.

데이터베이스 로그(log)를 필요로 하는 회복 기법은?

  1. 즉각 갱신 기법
  2. 대수적 코딩 방법
  3. 타임 스탬프 기법
  4. 폴딩 기법
정답과 해설 보기

정답 ① · 데이터베이스 회복 기법 중 트랜잭션 수행 과정의 변경 내용을 로그 파일에 기록해야 하는 기법을 묻고 있다. 즉각 갱신(Immediate Update) 기법은 트랜잭션이 연산을 수행하는 도중에 변경 내용을 실제 데이터베이스에 즉시 반영하는 방식이다.

즉각 갱신 기법은 트랜잭션 중 변경 사항을 로그에 기록하여 장애 시 복구하는 방식이다.

로킹(Locking) 기법에 대한 설명으로 틀린 것은?

  1. 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다.
  2. 로킹 단위가 작아지면 병행성 수준이 낮아진다.
  3. 데이터베이스도 로킹 단위가 될 수 있다.
  4. 로킹 단위가 커지면 로크 수가 작아 로킹 오버헤드가 감소한다.
정답과 해설 보기

정답 ② · 로킹 기법에 대한 설명 중 틀린 것을 찾는 문제이다. 로킹 단위가 작아지면 잠금이 세분화되어 여러 트랜잭션이 동시에 접근할 수 있는 범위가 넓어지므로 병행성 수준은 높아지는데, 2번은 이를 낮아진다고 서술하여 틀렸다.

로킹 단위가 작아지면 동시 접근 가능한 범위가 넓어져 병행성(concurrency) 수준은 높아진다.

자주 묻는 물음

공간 구역성과 시간 구역성은 어떻게 다른가요?
공간 구역성은 인접한 메모리 주소가 자주 접근되는 현상이고, 시간 구역성은 같은 주소가 반복 접근되는 현상입니다. 셀·집계 변수는 시간 구역성에 해당합니다.
로킹 단위가 작아지면 어떻게 되나요?
동시에 접근할 수 있는 범위가 넓어져 병행성(공유도)은 높아지지만, 관리 대상이 늘어나 오버헤드가 증가합니다. 로킹 단위가 크면 병행성은 떨어집니다.
로그를 필요로 하는 회복 기법은 무엇인가요?
즉각 갱신 기법입니다. 트랜잭션 수행 중 변경 사항을 로그에 기록해 두었다가 장애 시 복구에 사용합니다.
이 개념 문제 10개 풀기 회원용

정보처리기사 풀이 세트에서 이 개념의 문제 10개를 바로 풀어 보세요.