본문 바로가기
Web Development/SPARQL

[SPARQL / RDF] LOD 데이터와 SPARQL을 RDB 개념으로 간단하게 이해해보기

by 감자맹고우 2022. 1. 14.
728x90
반응형
◆ LD : Linked Data
◆ OD : Open Data
◆ LD + OD = LOD(Linked Open Data)

 

위에서 알 수 있듯이 LOD는 Linked Data와 Open Data의 합성어이다.

 

웹에 발행된 데이터들을 개별 URI를 통해 구별 및 연결하는 Linked Data

그리고 누구나 자유롭게 사용, 배포할 수 있는 Open Data 의 특징이 결합된 Data라는 뜻이다.

 

RDB(관계형 데이터베이스)에 익숙해있던 내가 처음 LOD라는 개념을 접하였을 때, 바로 이해하는 것은 결코 쉽지 않았다.

그러나 곧, 쉽게 이해하는 법을 터득했다.

그 방법이라는 것은, LOD라는 개념을 RDB에 맞춰서 생각해보는 것이었다.

 

LOD는 개별 URI에 링크 정보를 부여하여 웹을 상호 연결한다.

이를 RDB로 바꾸어 생각해보았는데, 나는 개별 URI를 TABLE 명, 링크 정보를 COLUMN 명, 웹은 값이라고 생각하기로 했다.

그렇게 생각을 정리하니 URI를 통해서 웹의 데이터를 상호 연결하고, 웹 자체를 하나의 큰 데이터베이스로 볼 수 있게 되었다. (feat. 시맨틱 웹 , RDF)

 

그리고 이 웹이라는 커다란 데이터베이스에서 쿼리를 날릴 수 있도록 하는 존재가 바로,

 

SPARQL

 

바로 이 녀석이다.

 

 

반응형

 

 

SPARQL은 RDF 질의어로써 RDF(자원 기술 프레임워크)형식으로 저장된 데이터를 검색, 조작할 수 있게 한다.

여기서, RDF(자원 기술 프레임워크)는 위에서 설명한 상호 연결된 웹의 자원 정보를 표현하기 위한 표준 규격으로, 자세한 내용은 링크를 참조하면 좋다. ( https://ko.wikipedia.org/wiki/%EC%9E%90%EC%9B%90_%EA%B8%B0%EC%88%A0_%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC )

 

SPARQL은 SQL문과는 다른 형태를 가졌지만, 그렇다고 해서 전혀 다른 것이라고 볼 수는 없다.

모두 데이터를 처리하는데 사용하는 만큼 사용하는 기능이 서로 비슷하기 때문이다.

 

예를 들어, SPARQL의 Syntax는 다음과 같다.

 

1. PREFIX
2. SELECT
3. WHERE
4. ORDER BY
5. LIMIT
6. OFFSET
7. UNION
8. FILTER
9. OPTIONAL

 

Syntax만 보아도, SQL과 많은 것이 겹치고 있음을 알 수 있다.

 

그러니 SQL을 익혔다면, SPARQL에 대해서 결코 어렵게 생각할 필요가 없다.

 

🤞 도움이 되셨기를 바랍니다. 한 번의 클릭과 댓글은 어딘가의 누군가에게 진실로 큰 힘이 됩니다. 🐱‍🏍

 

728x90
반응형

댓글