기본 개념

Freebase를 처음 접하는 경우 이 섹션에서는 Freebase의 작동 방식을 이해하는 데 필요한 기본 용어와 개념을 다룹니다.

  1. 그래프
  2. 주제
  3. 유형 및 속성
  4. 도메인 및 ID
  5. 복합 값 유형
  6. 주제 MID
  7. 네임스페이스, 키, 주제 ID
  8. 숙박 시설에 대한 추가 정보
  9. 요약

그래프

Freebase 데이터는 그래프라는 데이터 구조에 저장됩니다. 그래프는 에지로 연결된 노드로 구성됩니다. Freebase에서 노드는 /type/object로 정의되며 에지는 /type/link를 사용하여 정의됩니다. Freebase는 데이터를 그래프로 저장하여 주제 간의 임의 연결을 빠르게 순회하고 데이터 구조를 변경하지 않고도 새 스키마를 쉽게 추가할 수 있습니다.

주제

Freebase는 3,900만 개가 넘는 주제를 인물, 장소, 사물 등의 실제 사물에 대해 다루고 있습니다. Freebase 데이터는 그래프로 표현되므로 이러한 주제는 그래프의 노드에 해당합니다. 그러나 모든 노드가 주제인 것은 아닙니다. 주제가 아닌 노드의 예는 CVT 섹션을 참조하세요.

Freebase에 포함된 주제 유형의 예는 다음과 같습니다.

많은 주제 (예: Wal-Mart)의 사례를 들 수 있습니다. 그중 일부는 여러 가지 다른 주제 도메인(다른 정보 영역)에 링크되어 있어 주목할 만합니다. 예를 들어 사랑, 가난, 기사와 같은 추상적인 주제는 그와 관련된 속성이 많지 않지만 책 주제, 시 과목, 영화 주제 등으로 자주 등장하여 더 주목할 수 있습니다.

유형 및 속성

주어진 주제는 다음과 같이 다양한 관점에서 볼 수 있습니다.

  • 밥 딜런은 작곡가, 가수, 연기자, 작가, 영화배우였습니다.
  • 레오나르도 다 빈치는 화가, 조각가, 해부학자, 건축가, 엔지니어였습니다.
  • 사랑은 책 주제, 영화 주제, 놀이 주제, 시 과목, ...
  • 모든 도시는 위치이며, 잠재적으로 관광지이자 공무원의 고용주입니다.

다양한 주제의 이러한 다면적 특성을 포착하기 위해 Freebase에 유형이라는 개념을 도입합니다. Freebase의 주제에는 여러 유형이 할당될 수 있습니다. 밥 딜런에 관한 주제는 작곡가 유형, 작곡가 유형, 음악 아티스트 (가수) 유형, 도서 저자 유형 등 여러 유형이 지정됩니다. 각 유형은 해당 유형에 따라 다른 속성 집합을 가집니다. 예를 들면 다음과 같습니다.

  • 음악 아티스트 유형에는 밥 딜런이 제작한 모든 앨범과 그가 공연한 것으로 알려진 모든 악기의 목록이 포함된 속성이 포함됩니다.
  • 도서 저자 유형에는 밥 딜런이 쓴 글이나 편집한 서적, 생각이나 움직임을 작성하는 학교의 목록이 모두 포함되어 있습니다.
  • 회사 유형에는 회사의 창립자, 이사회 구성원, 모회사, 부서, 직원, 제품, 연도별 수익 및 이익 기록 등을 나열하기 위한 많은 자산이 포함되어 있습니다.

따라서 유형은 정보의 특정 측면을 설명하는 데 가장 일반적으로 필요한 속성의 개념적 컨테이너로 생각할 수 있습니다. 유형을 관계형 테이블과 유사한 것으로 생각할 수 있으며 각 'type' 테이블에는 각 주제를 고유하게 정의하는 하나의 'identity' 테이블에 외래 키가 있습니다.

도메인 및 ID

속성이 유형으로 그룹화되는 것처럼 유형 자체는 도메인으로 그룹화됩니다. 도메인은 비즈니스, 라이프스타일, 예술 및 엔터테인먼트, 정치, 경제 등 즐겨 쓰는 신문의 섹션이라고 할 수 있습니다. 각 도메인에는 ID (식별자)가 부여되며

도메인의 ID는 파일 경로 또는 웹 주소 경로처럼 보입니다.

각 유형에도 ID가 부여되며, ID가 속한 도메인을 기반으로 합니다. 예를 들어 회사 유형은 비즈니스 도메인에 속하고 ID가 /business/company입니다. 예를 들면 다음과 같습니다.

유형이 도메인에서 ID의 시작을 상속하듯이, 속성이 속한 유형에서 ID의 시작도 상속합니다. 예를 들어 회사 유형의 업종 속성 (회사가 속한 업종을 지정하는 데 사용됨)에는 ID /business/company/industry가 부여됩니다. 예를 들면 다음과 같습니다.

따라서 유형이 Freebase에서 계층 구조로 정렬되지 않더라도 도메인, 유형 및 속성에는 개념적으로 파일 디렉터리와 같은 계층 구조로 정렬됩니다.

복합 값 유형

복합 값 유형은 Freebase 내의 유형으로, 각 항목이 여러 필드로 구성된 데이터를 나타내는 데 사용됩니다. 복합 값 유형(CVT)은 Freebase에서 복잡한 데이터를 나타내는 데 사용됩니다. 처음에는 약간 혼란스러울 수 있지만 CVT는 Freebase 스키마에서 매우 중요한 부분이며 이를 통해 주제 간의 복잡한 관계를 더 정확하게 모델링할 수 있습니다.

다음 도시를 생각해 보세요. 도시 인구는 시간이 지남에 따라 변합니다. 즉, Freebase에서 인구를 쿼리할 때마다 최소한 특정 날짜에 인구를 암시적으로 요청합니다. 2개의 값, 다수의 사람, 날짜가 관련됩니다. 다음은 CVT가 매우 유용한 상황입니다. 이것이 없으면 인구 데이터를 모델링하려면 주제를 만들고 이름을 '1997년 밴쿠버의 인구'와 같이 지정하고 여기에 정보를 입력해야 합니다.

CVT는 표시 이름을 만들 필요가 없는 주제로 생각하면 됩니다. 일반적인 주제와 마찬가지로 CVT에는 GUID가 있으며 독립적으로 참조할 수 있습니다. 하지만 Freebase 클라이언트는 주제와 다르게 취급합니다. 대부분의 경우 CVT의 모든 속성은 명확성 속성이어야 합니다.

주제 MID

네임스페이스/키 ID로 주제를 식별할 수도 있고 그렇지 않을 수도 있지만 항상 MID를 사용하여 식별할 수 있습니다. MID는 /m/ 뒤에 base32로 구성된 고유 식별자가 포함된 머신 식별자입니다. MID는 생성 시점에 주제에 할당되며 주제의 전체 기간 동안 관리됩니다. 이는 주제가 병합되거나 분할될 때 중요한 역할을 하며, 물리적 Freebase ID (주제의 GUID)가 변경될 수 있는 경우에도 외부 애플리케이션이 논리적 주제를 추적할 수 있게 합니다. 머신 생성 ID는 다음과 같은 점에서 사람이 읽을 수 있는 다른 Freebase ID('id' 속성에 의해 반환됨)와 다릅니다.

  • 존재 보장
  • 머신 생성
  • 오프라인 비교를 지원하도록 설계
  • 사람에게 의미를 전달하도록 설계되지 않음
  • 짧음 (고정 길이일 수 있음)
  • 외부 시스템과 구성요소 (외부, 교환) 간에 키를 빠르게 교환하는 데 적합합니다.

MID는 Freebase에서 주제를 처리하는 데 권장되는 식별자입니다.

네임스페이스, 키, 주제 ID

파일 디렉터리와 유사한 도메인, 유형, 속성 ID 계층 구조는 네임스페이스라는 더 일반적인 개념 중 하나입니다. 네임스페이스는 파일 디렉터리와 같고 키는 파일 이름과 같습니다. 특정 파일 디렉터리 내의 모든 파일 이름이 서로 간에 고유해야 하는 것처럼 특정 네임스페이스 내의 모든 키도 고유해야 합니다.

더 구체적인 예로, /business는 비즈니스 도메인에 해당하는 네임스페이스입니다. 그 안에서 비즈니스 관련 유형에는 키 (예: company)입니다. 각 유형의 ID는 키를 네임스페이스의 ID (예: /business/company)에 복사합니다.

도메인 및 유형에 상응하는 네임스페이스 외에도 여러 가지 네임스페이스가 있습니다. 가장 중요하고 자주 발생하는 경우는 /en 네임스페이스입니다. 이것은 가장 잘 알려진 주제에 고유 키를 부여하여 사람이 읽을 수 있는 영어 ID를 형성할 수 있는 영어 네임스페이스입니다. 예를 들어 많은 일을 하는 밥 딜런은 Freebase의 주제에 관해 잘 알고 있으므로 /en 네임스페이스의 bob_dylan 키를 부여받고 주제의 ID는 /en/bob_dylan입니다. 이 ID를 사용하면 약식 URL로 웹 클라이언트에서 주제에 액세스할 수 있습니다.

숙박 시설 자세히 알아보기

마지막으로 설명할 기본 개념은 Freebase 속성과 관계형 데이터베이스 기술의 비유, 즉 관계형 테이블 열 간의 주요 차이점입니다. 각 행에서 관계형 테이블 열은 하나의 값만 가질 수 있습니다. 예를 들어 'author'라는 열이 있는 일반적인 '도서' 관계형 테이블을 살펴보겠습니다. 'book' 테이블의 각 행에서 'author' 열은 'author' 테이블에 외래 키 1개만 포함할 수 있습니다. 한 도서의 저자가 여러 명인 경우 이 간단한 관계형 스키마 설계는 효과가 없으며, 저작을 모델링하려면 새 테이블을 만들어야 합니다. 즉, 도서와 저자 간의 n-n 관계를 저장하기 위해 'book' 테이블, 'author' 테이블, 'authorship' 테이블이 각각 한 개씩 필요합니다. 또한 한 스키마 설계에서 다른 스키마 설계로 전환하면 데이터 검색 방법이 급격히 달라집니다.

기존 데이터베이스 기술과 달리 Freebase는 실제 데이터를 모델링하는 데 다중 값 속성이 매우 바람직하다고 생각하여 기본적으로 다중 값 속성을 지원합니다. 즉, /book/written_work/author 속성을 만들 때 도서당 여러 명의 저자를 허용하는 것으로 가정했으며 다중 값 속성과 단일 값 속성을 정확하게 동일한 방식으로 쿼리할 수 있습니다. n-n 관계를 모델링하는 세 번째 테이블과 조인해야 할지 생각할 필요가 없습니다.

요약

  • 유형은 주제의 특정 측면을 설명하는 데 일반적으로 필요한 관련 속성의 개념적 컨테이너입니다.
  • 주제에는 하나 이상의 유형을 할당할 수 있습니다 (기본 유형은 /common/topic임).
  • 속성은 유형으로 그룹화되므로 유형은 도메인으로 그룹화됩니다.
  • 도메인, 유형, 속성에는 네임스페이스/키 계층 구조의 ID가 부여됩니다.
  • 잘 알려진 주제에는 사람이 읽을 수 있는 영어 문자열인 /en 네임스페이스에 ID가 부여됩니다.
  • 주제는 Freebase 내에서 GUID로 고유하게 식별됩니다.
  • 속성은 기본적으로 다중 값 속성이며, 다중 값 속성과 단일 값 속성도 동일한 방식으로 쿼리할 수 있습니다.