Số 9(75) năm 2015
TẠP CHÍ KHOA HỌC ĐHSP TPHCM
_____________________________________________________________________________________________________________
MỘT GIẢI PHÁP CHUYỂN ĐỔI TỪ CƠ SỞ DỮ LIỆU QUAN HỆ
SANG MÔ HÌNH DỮ LIỆU CHO WEB NGỮ NGHĨA
LƯƠNG THÁI NGỌC*, NGUYỄN HỮU DUYỆT**
TÓM TẮT
Web ngữ nghĩa là một hướng phát triển tương lai của Web hiện tại, trong đó RDF là
chuẩn cho phép đặc tả dữ liệu cho Web ngữ nghĩa. Trong bài báo này, tác giả sẽ trình bày
một hướng tiếp cận cho phép chuyển đổi dữ liệu từ cơ sở dữ liệu (CSDL) quan hệ sang mô
hình dữ liệu cho Web ngữ nghĩa được biểu diễn bằng đồ thị RDF, kết quả là tạo ra được
một mô hình dữ liệu tương ứng được biểu diễn dưới dạng các bộ ba (Triple). Quá trình
thực nghiệm chuyển đổi với CSDL quan hệ Quản lí bán hàng cũng được trình bày nhằm
đánh giá kết quả nghiên cứu.
Từ khóa: CSDL, RDB, RDF, dữ liệu, quan hệ, web ngữ nghĩa.
ABTRACT
A solution to convert Relation Database to data model for Semantic Web
Semantic Web (Web of Data) is a development trend of current Web, which is based
on several standards. RDF is one of the most important standard for data description in
Semantic Web. Transforming data from relational databases (RDB) to RDF is considered
an important process for building the Semantic Web. In this article, the author will
introduce a new approach allowing the conversion of relation database model to new data
model using in Semantic Web, which is represented by RDF graph with Triples. The
authors also experiments transfering a relation database of sale management system to a
new Semantic Web's data model to examine article result.
Keywords: RDB, RDF, data, database, relation, semantic web.
1.
Giới thiệu
John Naisbitt đã nói “Chúng ta đang chìm ngập trong thông tin nhưng lại khao
khát tri thức”. Thật vậy, Web hiện tại đang chứa một lượng thông tin khổng lồ, được
tạo ra từ các cá nhân, tổ chức và cộng đồng. Người sử dụng Web có thể dễ dàng truy
cập thông tin thông qua địa chỉ URL hoặc các liên kết. Tính đơn giản của Web hiện tại
dẫn đến một số hạn chế, chẳng hạn như chúng ta dễ dàng bị “lạc” vì đối mặt với một
lượng thông tin khổng lồ có rất ít (hoặc không) liên quan từ kết quả tìm kiếm.
Web ngữ nghĩa còn gọi là Web của dữ liệu, được hình thành từ ý tưởng của Tim
Berners-Lee người phát minh WWW. Web ngữ nghĩa là hướng phát triển mở rộng của
Web hiện tại, mô hình dữ liệu cho Web ngữ nghĩa có thể khắc phục các hạn chế đã nêu.
*
ThS, Trường Đại học Đồng Tháp; Email:
[email protected]
ThS, Trường Đại học Đồng Tháp
**
172
TẠP CHÍ KHOA HỌC ĐHSP TPHCM
Lương Thái Ngọc và tgk
_____________________________________________________________________________________________________________
Vì vậy, việc nghiên cứu nhằm đưa ra các giải pháp cho phép chuyển đổi dữ liệu từ các
cơ sở dữ liệu quan hệ của Web hiện tại sang mô hình dữ liệu cho Web ngữ nghĩa đang
được nhiều tác giả quan tâm.
Bizer C và cộng sự đề xuất D2RQ [3, 4] cho phép tạo môi trường tích hợp với
nhiều tùy chọn để truy cập dữ liệu trong RDB dựa trên Jena và Sesame API được phát
triển từ SQL và SPARQL trên D2RQ Server. Các ánh xạ dữ liệu được xác định bởi
người dùng nên cho phép kết hợp ngữ nghĩa theo miền, và được khai báo bằng ngôn
ngữ ánh xạ.
Cullot N và cộng sự đề xuất R2O [2] là một ngôn ngữ cho phép thể hiện ánh xạ
giữa RDB và ontology trên nền tảng XML. Ánh xạ R2O được sử dụng có thể phát hiện
mâu thuẫn và tính không rõ ràng trong lược đồ định nghĩa dữ liệu.
Soren A và cộng sự đề xuất Triplify [1, 9] cho phép chuyển sang RDF từ cơ sở dữ
liệu quan hệ. Triplify sử dụng nguyên tắc ánh xạ các yêu cầu URI dựa trên RDB.
Triplify cho phép chuyển đổi các mối quan hệ vào RDF và xuất bản dữ liệu RDF trên
Web, cấu trúc gọn nhẹ nên có thể sử dụng để xuất bản bộ dữ liệu lớn.
R2RML [6] cho phép chuyển đổi trực tiếp từ RDB sang RDF, cấu trúc của đồ thị
RDF phản ánh trực tiếp cấu trúc của cơ sở dữ liệu, từ vựng RDF phản ánh tên của phần
tử trong lược đồ cơ sở dữ liệu. Ánh xạ trong R2RML phù hợp với lược đồ cơ sở dữ liệu
và chỉ mục từ vựng, kết quả thể hiện dưới dạng đồ thị RDF.
Trong phần tiếp theo, bài báo sẽ trình bày cơ sở lí thuyết RDF và đồ thị RDF,
phần 3 trình bày giải pháp cho phép thực hiện chuyển đổi từ RDB sang mô hình dữ liệu
cho Web ngữ nghĩa, phần 4 là thực nghiệm và cuối cùng là kết luận.
2.
Đồ thị RDF
a) Giới thiệu về RDF
Khung mô tả tài nguyên (RDF) là tập hợp các nguyên tắc, cung cấp mô hình dữ
liệu với cú pháp đơn giản dùng để mô tả tài nguyên. Đồng thời, RDF được thiết kế cho
phép máy tính có thể hiểu và đọc được thông tin, chứ không chỉ đơn giản là để trình
bày dữ liệu cho người dùng. Mọi tài nguyên đều có những thuộc tính và các thuộc tính
đó đều có giá trị. [5]
Các tài nguyên có thể được mô tả thông qua các phát biểu cho phép xác định
thuộc tính và giá trị. RDF sử dụng bộ ba (Triple) để nói về những thành phần khác
nhau của phát biểu. Một bộ ba được mô tả dưới dạng nút-cung-nút, cung có hướng bắt
đầu từ chủ ngữ đến tân ngữ (hình 1).
- Chủ ngữ (Subject): Là thành phần xác định đối tượng mà phát biểu đề cập;
- Vị ngữ (Predicate): Là thành phần xác định thuộc tính của chủ ngữ trong phát
biểu;
- Tân ngữ (Object): Là thành phần xác định giá trị của thuộc tính, nó có thể là một
tài nguyên (URI), hoặc một giá trị (Literal).
173
Số 9(75) năm 2015
TẠP CHÍ KHOA HỌC ĐHSP TPHCM
_____________________________________________________________________________________________________________
Chủ ngữ
Vị ngữ
Vị ngữ
Chủ ngữ
Tân ngữ
a) Tân ngữ (O) là một tài nguyên
Tân ngữ
b) Tân ngữ (O) là một giá trị
Hình 1. Mô hình biễu diễn bộ ba [5]
Ví dụ 1. Xét phát biểu http://www.example.org/index.html has a creator whose
value is John Smith. Ta có chủ ngữ là http://www.example.org/index.html, vị ngữ là
creator và tân ngữ là John Smith.
Creator
John Smith
http://www.example.org/index.html
Hình 2. Bộ ba mô tả tài nguyên tại ví dụ 1 [7]
b) Đồ thị RDF
Tập các bộ ba hợp lại tạo thành đồ thị RDF, các nút trong đồ thị có thể là các chủ
ngữ hoặc tân ngữ, các cung trong đồ thị là vị ngữ.
Ví dụ 2. Ta xét thêm các phát biểu http://www.example.org/index.html has a
creation-date whose value is August 16, 1999 và http://www.example.org/index.html
has a language whose value is English.
Bảng 1. Bảng phân tích các thành phần của phát biểu
Subject
Predicate
Object
http://www.example.org/in
dex.html
http://purl.org/dc/elements/1.1/cr http://www.example.org/s
eator
taffid/85
http://www.example.org/in
dex.html
http://www.example.org/terms/c
reationdate
August 16, 1999
http://www.example.org/in
dex.html
http://purl.org/dc/elements/1.1/la
nguage
English
Bảng 1 mô tả các thành phần trong phát biểu tại ví dụ 2. Đồ thị RDF tương ứng
được trình bày trong hình 3.
http://www.example.org/index.ht
Creationdate
August 16, 1999
Language
English
Creator
http://www.example.org/staffid/85
Hình 3. Đồ thị RDF tương ứng ví dụ 2
174
TẠP CHÍ KHOA HỌC ĐHSP TPHCM
Lương Thái Ngọc và tgk
_____________________________________________________________________________________________________________
3.
Chuyển đổi từ CSDL quan hệ sang đồ thị RDF
a) Thuật toán RDB-to-RDF
Trong RDB, mỗi bộ tương ứng với một dòng của bảng gồm các giá trị tương ứng
với mỗi cột. Khi thực hiện chuyển đổi sang đồ thị RDF ta có các lớp (Class) tương ứng
với từng bảng, mỗi dòng trong bảng được biểu diễn bằng một phát biểu dưới dạng bộ
ba (S, P, O) tạo thành đồ thị RDF, trong đó chủ đề (S) là giá trị khóa, các vị ngữ (P)
tương ứng các nhãn của mỗi cột, tân ngữ (O) là giá trị tại cột tương ứng vị ngữ. Thuật
toán 1 trình bày chi tiết chuyển đổi từ CSDL quan hệ sang đồ thị RDF.
Thuật toán 1: Chuyển đổi từ CSDL quan hệ sang đồ thị RDF.
Input: CSDL quan hệ RDB. Output: Đồ thị RDF.
BEGIN
1.
RDFGraph G = new RDFGraph();
//Tạo một lớp RDF cho từng bảng
For (int i =0; i
- Xem thêm -