데이터베이스에서 가변 길이 레코드를 저장할 때, null bitmap은 테이블의 각 열이 NULL
값을 가지는지 여부를 효율적으로 기록하는 데 사용되는 데이터 구조입니다. 특히, 열들이 NULL
값을 가질 수 있는 테이블에서 레코드를 효율적으로 관리하고 저장 공간을 절약하기 위해 중요한 역할을 합니다.
NULL
값을 가지는지 여부를 기록하는 비트 배열입니다. 각 열에 대해 1비트를 할당하여 해당 열이 NULL
값인 경우 1
, NULL
이 아닌 경우 0
으로 표시합니다.NULL
값을 가진 열에 대해 데이터를 실제로 저장할 필요가 없습니다. null bitmap
을 통해 NULL
값인지 확인하고, NULL
인 열에 대해서는 실제 데이터를 저장하지 않음으로써 공간을 절약할 수 있습니다.null bitmap
을 사용하면, 각 열의 NULL
여부를 빠르게 확인할 수 있습니다. 데이터를 읽거나 쓸 때 해당 비트를 검사하여 값이 있는지, 혹은 NULL
인지 쉽게 확인할 수 있습니다.null bitmap
은 각 레코드의 헤더에 포함되어 있습니다.NULL
상태에 따라 비트 배열을 갱신합니다.만약 테이블에 4개의 열이 있고, 그 중 2번째 열만 NULL
값을 가진다고 가정하면, null bitmap
은 다음과 같이 설정됩니다:
NULL
아님 (비트 0)NULL
(비트 1)NULL
아님 (비트 0)NULL
아님 (비트 0)이 경우 null bitmap
은 0100이라는 비트 배열을 가지게 됩니다.
null bitmap
은 가변 길이 레코드에서 NULL
값 여부를 기록하고, 저장 공간을 절약하며, NULL
값을 빠르게 확인할 수 있도록 돕는 중요한 데이터 구조입니다.