기출문제/정보처리기사

2021년 3회 정보처리기사 기출문제 51번

엉클지니 2025. 3. 17. 18:30

51. 로킹 단위(Locking Granularity)에 대한 설명으로 옳은 것은?

 로킹 단위가 크면 병행성 수준이 낮아진다.

로킹 단위가 크면 병행 제어 기법이 복잡해진다.

로킹 단위가 작으면 로크(lock)의 수가 적어진다.

로킹은 파일 단위로 이루어지며, 레코드와 필드는 로킹 단위가 될 수 없다.

 

 

문제 분석 및 해설

주어진 문제는 "로킹 단위(Locking Granularity)"에 대한 설명을 묻고 있습니다. 각 선택지를 하나씩 분석해보겠습니다.

1. 로킹 단위(Locking Granularity)의 개념

로킹 단위는 데이터베이스에서 트랜잭션 간의 충돌을 방지하기 위해 데이터베이스 객체를 잠그는 범위를 의미합니다. 데이터베이스에서 로킹을 사용할 때, 이 로킹이 적용되는 범위가 바로 "로킹 단위"입니다. 로킹 단위는 크게 파일 단위, 페이지 단위, 레코드 단위, 필드 단위 등이 있을 수 있습니다.

  • 로킹 단위가 크면 데이터베이스의 전체 범위에서 잠금이 걸리므로 동시에 접근할 수 있는 트랜잭션 수가 적어져 병행성(Concurrency)이 낮아집니다.
  • 로킹 단위가 작으면 잠금 범위가 작아 여러 트랜잭션이 동시에 실행될 수 있으므로 병행성이 높아집니다. 그러나 잠금 수가 많아지기 때문에 잠금의 관리가 복잡해질 수 있습니다.

각 선택지 분석

❶ 로킹 단위가 크면 병행성 수준이 낮아진다.

  • 옳은 설명입니다. 로킹 단위가 크면 더 많은 데이터가 잠금에 걸리므로 동시에 여러 트랜잭션이 수행될 수 없게 되어 병행성이 낮아집니다. 예를 들어, 한 번에 파일 전체를 잠그는 것보다는 레코드 단위로 잠그는 것이 더 많은 트랜잭션을 동시에 실행할 수 있습니다.

② 로킹 단위가 크면 병행 제어 기법이 복잡해진다.

  • 틀린 설명입니다. 로킹 단위가 크면 병행 제어 기법이 단순해집니다. 예를 들어, 파일 단위로 잠그는 경우, 관리해야 할 잠금의 수가 적어서 병행 제어가 비교적 간단해집니다. 반면, 로킹 단위가 작으면 잠금을 많이 관리해야 하므로 병행 제어가 복잡해질 수 있습니다.

③ 로킹 단위가 작으면 로크(lock)의 수가 적어진다.

  • 틀린 설명입니다. 로킹 단위가 작으면 로크의 수는 많아집니다. 예를 들어, 페이지 단위로 잠그는 것보다 레코드 단위로 잠그면 각 트랜잭션마다 더 많은 잠금을 획득해야 하므로 로크의 수가 증가합니다.

④ 로킹은 파일 단위로 이루어지며, 레코드와 필드는 로킹 단위가 될 수 없다.

  • 틀린 설명입니다. 로킹은 다양한 단위로 이루어질 수 있습니다. 파일 단위뿐만 아니라, 레코드 단위나 필드 단위로도 로킹을 설정할 수 있습니다. 즉, 레코드나 필드가 로킹 단위가 될 수 있습니다.

결론

따라서 정답은 ❶입니다. 로킹 단위가 크면 병행성 수준이 낮아진다는 설명이 옳습니다.