티스토리 뷰
Linked Data 기반 기술 요소
- 트리플 저장소
트리플 저장소는 Linked Data를 저장하고 질의하는 기본적인 역할을 담당하며, 저장될 수 있는 데이터의 양과 데이터를 접근하고 업데이트 하는 속도 및 질의 엔진이 지원하는 질의 언어의 다양성에 따라 다양한 제품이 존재한다. 트리플 저장소는 RDF 기반의 방향성 그래프 모델을 사용함으로써 기존의 데이터베이스 관리시스템(DBMS)이 제공하는 일반적인 기능 외에도 다음과 같은 중요한 기능적 특징이 있다.
- 다양한 데이터 집합을 병합하는 기능 - 하나의 시스템에서 다른 시스템으로 데이터를 옮기고자 할 때 공통의 RDF 표준 포맷을 이용하므로 별도의 노력이 없이 쉽게 다른 시스템에 통합될 수 있다.
- 트리플 저장소는 RDFS, OWL의 시맨틱을 통해 데이터의 논리적 일관성을 일관성 추론을 통해 새로운 사실(inferred assertion)을 생성하고 이를 트리플 저장소에 추가한다.
- 트리플 저장소는 데이터를 저장하는 구현 방식에 따라 In-Memory, Native, Non-Memory / Non-Native로 구분한다.
+ In-Memory 방식은 RDF 그래프를 트리플의 형태로 메인 메모리에 저장한다. 따라서 대용량 데이터를 저장하기에는 무리가 있으며, 대용량 환경에서 주요한 고려 대상은 아니지만 추론에 있어서는 효과적이기 때문에 디스크 저장 방식의 저장소에서 추론 성능의 문제를 해결하고자 할 때 부분적으로 고려되기도 한다.
+ Native 방식은 RDF 그래프 고유의 데이터 저장 방식으로 현재 다양한 상용 제품 및 오픈 소스의 등장으로 RDF 데이터 저장소의 주요한 구현 방식으로 자리 잡고 있다. 각 제품은 지원하는 추론기, 대용량 처리 능력(scalability), 제공되는 API, 질의 처리 엔진이 지원하는 질의 언어의 종류, 공간 데이터 처리 지원 등의 특징에 따라 매우 다양하다.
+ Non-Memory/Non-Native방식은 RDB를 저장소로 하여 RDF 데이터 모델, 즉 그래프 기반의 데이터 모델을 영속적으로 저장, 처리할 수 있도록 구현된 방식이다.
- 시맨틱웹 데이터 변환 기술
오늘날 대부분의 웹페이지는 데이터베이스를 백엔드(backend)로 하고 있다. 따라서 현재의 문서 웹(web of document)이 데이터의 웹(web of data), 즉 궁극적으로 시맨틱웹으로 가기 위해서는 DBMS 데이터를 RDF 형식의 시맨틱웹 데이터로 변환하는 과정이 필요하다. 현재 다양한 방면에서 관계형 데이터베이스 데이터를 RDF로 변환하기 위한 연구가 진행되고 있으며, 이들 연구는 다음의 방식으로 분류해 볼 수 있다.
- 매핑 생성 방식(Mapping Generation) : RDB 스키마를 RDF 스키마로 매핑하는 매핑 생성 방식은 자동(automatic), 반자동(semi-automatic), 또는 매뉴얼 방식으로 세분할 수 있다. 자동 생성 방식은 RDB 테이블을 클래스로, 컬럼(column) 또는 어트리뷰트(attribute)를 프로퍼티(property)로 하는 매핑 규칙을 생성하고 이에 따라 RDF로 변환하는 방식이다. 자동 생성 방식은 복잡한 도메인의 의미관계까지는 뽑아내지 못하므로 한계가 있지만, 도메인의 특정적인 커스터마이즈(customize)를 위한 출발점으로 많이 이용된다. 따라서 많은 매핑 도구들이 자동 생성 규칙에 더해서 커스터마이즈된 매핑 규칙을 추가할 수 있도록 하는 반자동 방식을 채택하고 있다.
- 매핑 표현 방식(Mapping Representation) : 매핑 표현 방식은 특정 언어로 매핑 정보를 기술하고, 이 정보를 통해 데이터를 생성 및 변환한다. 매핑의 재사용을 증진하고 접근성을 높이기 위해서는 표준화된 매핑 언어가 필요하며, 이를 위해 W3C의 RDB2RDF Working Group에서는 R2RML(RDB2RDF Mapping Language)이라는 매핑 언어 표준화 작업을 진행하고 있다.
- 매핑 구현 방식(Mapping Implementation) : 매핑 규칙을 생성한 후 이에 따라 데이터를 실제로 변환하는 방식은 두 가지 접근 방식으로 나눌 수 있다.
+ 정적 변환방식(ETL: static Extract Transform Load) : 매핑 규칙을 이용하여 RDB 데이터를 RDF로 변환, 트리플 저장소에 일괄 저장하는 방식이다. 이 방식은 최신의 데이터를 유지하는데 어려움이 있으나 데이터 분석이나 데이터를 이용한 프로세싱, 또는 복잡한 추론에 알맞은 방법이다.
+ 동적 변환 방식(Dynamic Mapping Implementation) : RDB 데이터를 질의를 통해 동적으로 변환하는 방식이다. 이 방식은 데이터의 최신성을 보장하지만 SPARQL 질의를 온톨로지와 데이터베이스 스키마간의 매핑 규칙에 따라 SQL로 동적 변환하므로 질의 처리 성능이 뒤떨어지는 문제점이 있다. 따라서 데이터가 자주 업데이트되는 데이터 셋의 경우, 그리고 많은 추론이 필요로 하지 않는 경우에 적합하다고 할 수 있다.
- SPARQL 접점제공 시스템(SPARQL Endpoint)
Linked Data의 데이터 구성은 서비스할 데이터를 미리 RDF로 만들어 트리플 저장소에 저장하여 서비스를 해주는 정적 구성 방법과 시맨틱웹 데이터 변환기를 통해 기존의 레거시 데이터로부터 동적으로 RDF 데이터를 생성해서 서비스를 해주는 동적 구성 방법이 존재한다. 이러한 다양한 구성을 통해 데이터를 외부로 공개하기 위해서는 SPARQL Endpoint가 필요하다. SPARQL Endpoint는 도메인에서 발행된 Linked Data에 대한 리소스들을 사용자가 시맨틱웹을 위한 질의 언어인 SPARQL을 사용하여 질의하여 결과를 확인하기 위한 도구로서 다양한 형태의 편리한 웹 인터페이스를 통해 사용자가 쉽고 빠르게 접근할 수 있도록 구성된다.
Linked Data를 활용한 Global 상호운용성 확보에 관한 연구
'O:::Linked Data' 카테고리의 다른 글
O_6. 국내 SPARQL Endpoint (0) | 2012.05.08 |
---|---|
O_5. SKOS의 사용 (0) | 2012.05.02 |
O_4. Linked Data 솔루션 (0) | 2012.04.30 |
O_2. Linked Data 발행 원칙 (0) | 2012.04.30 |
O_1. Linked Data (0) | 2012.04.30 |
- Total
- Today
- Yesterday
- 스프링부트
- 트리플 변환
- TopBraid Composer
- Linked Data
- property graph
- TDB
- sparql
- Ontology
- RDF
- networkx
- cypher
- rdfox
- 사이퍼
- 그래프 데이터베이스
- 장고
- Knowledge Graph
- django
- pyvis
- TBC
- 지식그래프
- 타임리프
- 온톨로지
- Neo4j
- Thymeleaf
- neosemantics
- 지식 그래프
- LOD
- stardog
- 트리플
- RDF 변환
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |