더북(TheBook)

스키마리스(스키마가 없는 데이터구조)

스키마리스schemaless란 데이터베이스의 논리 모델을 설명하는 용어다. 키-값 데이터베이스에서는 사용하려는 모든 키와 값의 데이터 타입을 데이터베이스에 미리 정의해 만들어 놓을 필요가 없다. 다음과 같이 키를 사용해 고객의 전체 이름(성과 이름)을 저장해둔다고 가정하자.

cust:8983:fullName = 'Jane Anderson'

이렇게 해두면 키에 대한 설명과 값에 대한 데이터 타입이 문자열이라고 별도로 명시할 필요가 없다. 스키마리스 데이터 모델에서는 모든 키와 값의 데이터 타입을 정의해 둔 스키마를 변경하지 않고도 필요할 때 값을 변경할 수 있다(그림 4-6).

▲ 그림 4-6 스키마리스 데이터 모델은 기존에 있는 같은 데이터를 동시에 여러 형태로 표현할 수 있다


예를 들어 고객의 전체 이름을 단일 값으로 저장하는 것은 그리 좋은 생각이 아니다. 성과 이름을 분리해 관리하는 것이 더 좋은 방법이다. 다음과 같이 키와 값을 저장하는 코드만 간단히 수정하면 된다.

전체 이름과 성/이름으로 구분한 키와 값은 아무 문제없이 공존할 수 있다.

Tip 두 가지 방식으로 고객의 이름을 표현하도록 코드를 수정하거나 둘 중 한 형식으로 된 모든 인스턴스를 다른 형식으로 변환하도록 코드를 수정해야 할 경우도 있다.

3부 문서 데이터베이스에서는 스키마리스 데이터베이스의 개념과 다형적 데이터베이스와 관련된 개념을 소개할 것이다. 다형적 데이터베이스는 관계형 데이터베이스의 고정된 스키마와 키-값 데이터베이스에서 사용된 스키마리스 모델 사이에 있는 데이터베이스다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.