Fuseki는 Apache Jena에서 개발한 RDF(Resource Description Framework) 데이터를 제공하기 위한
HTTP 기반의 SPARQL 1.1/1.0 Transaction Protocol Server 입니다.
즉, SPARQL SERVER 입니다.
Fuseki는 2가지 형태가 있습니다.
첫째, a single system인 "webapp"
둘째, 대규모 배포를 위한 Docker기반 또는 embeded를 돌리기 위한 "main"
Fuseki는 쿼리 및 업데이트를 위한 SPARQL 1.1 프로토콜과 SPARQL Graph Store 프로토콜을 제공 합니다.
또한 TDB와 긴밀하게 통합되어 transactional persistent storage layer이며 Jena text query를 통합합니다.
Fuseki 셋팅
Fuseki는 Jena를 먼저 셋팅하지 않아도 사용할 수 있는 독립적인 친구 입니다.
Springboot에서는 아직 지원을 해주지 않네요! 아직 유명하지 않나보군요..ㄲㄲ
https://jena.apache.org/download/ 에서 fuseki를 다운받습니다.
현재 2024년 1월 기준 최신버전은 4.10.0 이네요!
apache-jena-fuseki-4.10.0.tar.gz를 다운을 받으신뒤
tar xzf apache-jena-fuseki-4.10.0.tar.gz 명령어로 압축을 풀어줍니다.
cd apache-jena-fuseki-4.10.0 이동 후
./fuseki-server 명령어로 서버를 기동 시킵니다.
http://localhost:3030/#/ 로 접속하면 아래와 같은 UI를 제공 해줍니다.
add one을 클릭해서 데이터셋을 하나 만들어줍니다.
로그를 보면 아래와 같이 Create database를 했다고 나옵니다. goood~
아래처럼 만들어진 dataset이 보입니다.
다음으로 sample data를 하나 구해서 add data를 해봅니다.
upload되기전 상태 입니다.
upload now를 클릭해주시면 아래와 같이 status가 녹색으로 채워집니다.
이제 쿼리를 날려볼수가 있습니다.
그것도..무려 SPARQL Query 입니다!!
apache jena architecture에서 보았던 Fuseki -> SPARQL API 이부분입니다.
SPARQL을 통해 쿼리를 날려보면
SELECT ?subject ?predicate ?object
WHERE {
?subject ?predicate ?object
}
LIMIT 25
아래와 같이 트리플 구조로 잘 나옵니다.
Fuseki를 통해 SPARQL 쿼리를 날려보았지만 아직까지 데이터모델에 대해서 이해를 하려면 멀었습니다.
RDF 데이터모델에 대해서 좀 더 deep하게 알아야하기 때문에 schema 부분을 알아보겠습니다.
2024.02.01 - [Architecture/KG] - 3. 지식그래프에서 스키마란?(feat. Fuseki test)
끝 .
'OpenSource > Apache Jena' 카테고리의 다른 글
1. About Apache Jena (0) | 2024.01.18 |
---|