Web 3.0 Teknolojisinin Açık Kaynak Yazılımlarla Uygulanması

advertisement
Web 3.0 Teknolojisinin Açık Kaynak Yazılımlarla
Uygulanması
Yrd.Doç.Dr. Mustafa YENİAD1
Bilgisayar Mühendisliği Bölümü
Mühendislik ve Doğa Bilimleri Fakültesi
Ankara Yıldırım Beyazıt Üniversitesi, ANKARA
1
Email: [email protected]
Özet: Bu çalışmada, ilişkisel veritabanı yönetim sistemindeki veriler, geliştirilen bir ontoloji
bağlamında ve semantik eşleme (mapping) metodu kullanılarak, yeni nesil Web 3.0
teknolojisine uygun hale dönüştürülmüş ve Semantik Depo yazılımına aktarılmıştır.
Dönüştürme işleminin başarı düzeyini test etmek amacıyla ilişkisel veriler ile semantik veriler
arasında tutarlılık karşılaştırması yapıldığında, semantik depo yazılımındaki verilerde herhangi
bir kayıp yaşanmadığı görülmüş; verilerin karşılıklı doğrulanmasıyla semantikleştirme işleminin
başarılı olduğu anlaşılmıştır. Bu araştırmanın yeni nesil Web 3.0 teknolojisinin uygulanmasının
önündeki engellerden biri olarak görülen ilişkisel verilerin henüz semantikleştirilmemiş olması
problemine otantik bir çözüm örneği olabileceği ve ayrıca kullanılan araçların tümünün açık
kaynak felsefesine dayanması açısından, söz konusu yazılımların yeni nesil web teknolojisinde
işe koşulmasına katkı sağlayabileceği düşünülmektedir.
Anahtar Sözcükler: Semantik Web, Semantikleştirme, SPARQL, Web 3.0, OWL.
Implementation of Web 3.0 Technology by Open Source Software
Abstract: New generation web technologies presented the problem of intelligent representation
of data in semantically structured systems. In this study, an ontology developed and data hosted
in Relational Database Management System (RDBMS) has been converted to new generation
web technologies (i.e. Web 3.0) by using semantic mapping method and semantification of the
data has been accomplished. The success of transformation procedure has been verified by cross
comparison of the data in the relational database and triple store system. It is thought that this
research may be considered as an authentic solution example to one of the obstacles to the
implementation of new generation of Web 3.0 technology due to relational data which is not
been semantified yet. All of the tools have been used in this study are completely based on open
source technologies.
Keywords: Semantic Web, Semantification, SPARQL, Web 3.0, OWL.
1. Giriş
Web teknolojisinin gelişim seyrini temsil
etmek üzere Web 1.0, Web 2.0 ve Web 3.0
tanımlamaları yapılıyor olsa da bu durumun
herhangi resmi bir temeli bulunmamaktadır
ancak sunduğu imkanlar ve teknik altyapısı
göz önünde tutulduğunda Web 1.0 "Durağan
(Static)";
Web
2.0
"Etkileşimsel
(Interactional)"; Web 3.0 ise "Anlamsal
(Semantik)" olarak nitelendirilebilir.
Web 1.0 kavramıyla temsil edilen web
sayfaları, kullanıcıların hiçbir şekilde katkıda
bulunamadığı ve pasif birer okuyucu
durumunda olduğu içerik ve kendi
aralarındaki doküman bağlantılarından oluşur.
Web 2.0, çoklu ortam öğeleri ve etkileşimli
araçlar barındıran ikinci nesil internet
teknolojileri aracılığıyla
kullanıcılarının
ortaklaşa ve paylaşarak oluşturduğu web
ortamını temsil eder.
Semantik Web (SW), internet ortamındaki
kaynakların daha kolay erişilebilir, makineler
tarafından anlaşılabilir ve yazılım ajanları
tarafından kullanılabilir hale getirilmesi
amacıyla yeniden tanımlanması fikridir. SW,
web teknolojisinin güncel bir sürümü;
yazılımlar için yeni bir üstveri (metadata)
teknolojisi; açık kaynak teknolojiler lehine bir
sosyal hareket veya yeni nesil bir yapay zeka
teknolojisi olarak değerlendirilebilir [1]. SW
fikrinden önceki sürede web içeriğini
oluşturan yapıya bakıldığında dokümanların
insanların okuması, anlaması ve kullanımı için
tasarlanmış ve geliştirilmiş olduğu görülür.
SW teknolojisinin kullanılmaya başlanmasıyla
internet ortamının web dokümanları (web of
documents) olmaktan çıkıp gerçek bir veri
ağına
(web
of
data)
dönüşeceği
düşünülmektedir. Mevcut web içerikleri ve
veritabanlarındaki verilerin çok büyük bir
kısmının henüz SW teknolojisinin temel öğesi
olan RDF (Resource Description Framework)
biçimine dönüştürülmemiş olması [2] ve
etiketlenmemiş veri miktarının her geçen gün
daha da artması SW teknolojisinin
yaygınlaşmasının önündeki en büyük
problemlerden biri olarak durmaktadır.
İlişkisel
veritabanlarındaki
içeriklerin
semantikleştirilmesi amacıyla araştırmalar
sürdürülmektedir ve henüz bir standart
oluşturulamamıştır.
Bu araştırmada, SW'in kullanılabilmesinin /
yaygınlaşmasının ilk koşulu ontolojiler
bağlamında verilerin RDF yapısına uygun
dönüşümü, ardından depolanması ve sorunsuz
bir biçimde sorgulanabilmesi olduğundan
dolayı, SW'in Ontoloji, OWL, RDF, RDFS ve
SPARQL katmanları üzerinde çalışılmıştır.
Günümüzde SW için halen problem olarak
duran ilişkisel veritabanlarındaki verilerin
semantikleştirilmesine otantik bir çözüm
örneği oluşturmak üzere, açık kaynak
yazılımlar
kullanılarak,
ilişkisel
veritabanındaki veriler üzerinde;
• Modellenen ontoloji bağlamında ilişkisel
veritabanındaki verilerle ontoloji varlıkları
arasında eşleme (mapping) yapıldıktan sonra
ilişkisel verilerin semantik dönüşümü
gerçekleştirilmiş;
• Elde edilen RDF biçimindeki veri seti yığını
doğrulanmak üzere Semantik Depoya (Triple
Store) aktarılmış;
• İlişkisel veritabanı yönetim sistemi ile
semantik depo yazılımı üzerinde işletilen
farklı düzeylerdeki eşdeğer SQL ve SPARQL
geri çağırma sorguları aracılığıyla dönen
sonuçlar
karşılaştırılarak
modellenen
ontolojiye göre semantikleştirme işleminin
başarı düzeyi incelenmiş;
• Doğrulayıcı geri çağırma sorgularına ek
olarak işletilen ekleme, güncelleme ve silme
eşdeğer SQL ve SPARQL sorgularının tepki
süreleri aracılığıyla veritabanı yönetim sistemi
ile semantik depo performans açısından
karşılaştırılmıştır.
Araştırmanın gerçekleştirildiği platform
olarak Linux CentOS 6.5 işletim sistemi,
ontoloji geliştirme aracı olarak Stanford
Üniversitesi'nce geliştirilmiş Protégé aracı ve
OWL ontoloji geliştirme dili; İlişkisel
Veritabanı Yönetim Sistemi olarak MySQL;
Semantik Depo yazılımı olarak Openlink
firması tarafından geliştirilmiş olan ve açık
kaynak sürüm Virtuoso; veritabanı öğeleri ile
ontoloji varlıkları arasında semantik eşleme
(mapping)
yapmak
üzere
Eclipse
platformunda çalışan açık kaynak kodlu Neon
Toolkit
Plug-In'leri
aracılığıyla
RO
2
(Relational to Ontology) eşleme dili; İlişkisel
Veritabanı Yönetim Sistemi ile Semantik
Depo yazılımlarının performans kıyaslaması
(benchmarking) işlemi için PHP programlama
dili kullanılarak araştırmacı tarafından
kodlanmış web tabanlı betikler üzerinden
işletilen SQL ve SPARQL sorguları
kullanılmıştır.
2. Araştırmada Kullanılan Açık Kaynak
Araçlar
2.1. Ontoloji Editörü
SW teknolojisinin bir anlamda kalbini
ontolojiler oluşturur. Ontoloji, insanlar veya
sistemler arasındaki iletişimin temel aldığı bir
bilgi alanının, ilgili sistemler tarafından
tanınan ortak anlamını ifade eder [3]. Bu
bağlamda ontolojiler, bir alanla ilgili
nesnelerin sahip olduğu özelliklerin ve
birbirleri arasındaki ilişkilerin tanımlanmasını
gerekli kılar. Ontolojiler, yirminci yüzyılın
sonlarından itibaren yapay zekâ alanında
yoğun bir şekilde kullanılmıştır. Günümüzde
ontolojilerin kullanımı zeki sistemler, eticaret, doğal dil işleme, bilgi yönetimi,
veritabanlarının
bütünleştirilmesi,
biyobilişim
ve
eğitim
konularında
yaygınlaşmaktadır [4].
SW'de
ontolojilerin
modellenmesi,
yayımlanması, dokümanlar üzerinde yazılım
ajanlarının ileri düzeyde web aramaları
yapabilmesi için RDF, RDFS ve OWL
semantik tanımlama dilleri kullanılır. XML
sözdizimine dayanan OWL (Web Ontology
Language),
bilgi
yönetimini,
yazılım
ajanlarını ve ileri düzeyde web aramalarını
destekleyen, ontolojilerin yayımlanması ve
paylaşımı için kullanılmaktadır. Belirli
sözdizim özelliklerine sahip olan OWL dilinin
temelini oluşturan XML yapısını elle
oluşturarak geliştirmek mümkündür ancak
ontoloji elemanlarının tanımlanması ve bunlar
arasındaki ilişkilerin elle takibi oldukça zor
olduğundan ontoloji geliştirme işlemini
kolaylaştırmak ve ontoloji elemanlarının
takibi ile aralarındaki ilişkileri tanımlamak,
gerektiğinde modelle ilgili güncellemeler
yapmak
üzere
ontoloji
editörleri
geliştirilmiştir. Bu çalışmada ontoloji editörü
olarak Protégé aracı kullanılmıştır. Stanford
University ile University of Manchester
tarafından Java platformu üzerinde ortak
olarak ve açık kaynak felsefesine göre
geliştirilen bir ontoloji editörüdür. OWL-DL
düzeyinde destek sağlayan yazılım ile internet
üzerindeki çevrimiçi ontolojiler üzerinde
çalışılabileceği gibi, yerel disk üzerinde yeni
bir ontoloji tasarlamak da mümkündür.
Protégé,Pellet ve Fact++ adındaki yorumlama
motorları ile ontoloji üzerinde açıkça
belirtilmemiş olan ilişkileri de kullanıcının
dikkat ve kullanımına sunabilir [5]. Birden
fazla sayıda ontolojiyi aynı anda açarak
bağıntılar tanımlanabilir. Protégé, eklentilere
açık bir mimari ile tasarlandığından, zengin
ontoloji araçlarını da içerir. Örneğin, OwlViz
eklentisi ile üzerinde çalışılan ontolojinin
görselleştirilmesi mümkün olabilmektedir.
2.2. Openlink Virtuoso Semantik Deposu
Virtuoso yazılımı, Openlink firması tarafından
geliştirilmiş açık kaynak hibrit bir veritabanı
yönetim sistemidir. Geleneksel ilişkisel
veritabanı ve SQL desteği bulunmakla
birlikte, gelişmiş XML ve RDF veri depolama
özellikleri ile birlikte Full SPARQL
desteğinden dolayı rakiplerine göre avantajlı
bir semantik depo olarak kullanılabilmektedir.
MySQL ve Virtuoso, ODBC sürücü desteğine
sahip olduğundan dolayı her ikisi birçok
programlama dili ile birlikte rahatlıkla
kullanılabilmektedir.
2.3. Semantik Eşleme (Mapping) aracı ve
Eşleme Dili
Araştırmada, veritabanı öğeleri ile ontoloji
varlıkları arasında semantik eşleme (mapping)
işlemi, Eclipse IDE platformunda çalışan açık
kaynak kodlu Neon Toolkit Plug-in'lerinden
ODEMapster aracı ve R O (Relational to
genellikle
daha
yüksek
performans
sunabileceği ve bu bağlamda semantik web
teknolojisinin, yoğun işlem trafiğine sahip ağ
tabanlı uygulamaların performans ihtiyacını
karşılama potansiyeli taşıdığı söylenebilir.
4. Kaynaklar
2
Ontology) dili aracılığıyla gerçekleştirilmiştir.
3. Sonuç
İlişkisel veritabanı yönetim sistemi ile
semantik depo yazılımı üzerinde işletilen SQL
ve SPARQL geri çağırma sorgularının birebir
aynı sonuçları döndürdüğü görülmüş ve
geliştirilen ontolojiye göre semantikleştirme
işleminin %100 oranında başarılı olduğu
anlaşılmıştır.
Geri çağırma sorgularına ek olarak
güncelleme, silme ve ekleme sorguları da
işletilerek toplam 25 çift sorgunun ortalama
sonuç döndürme sürelerinin karşılaştırılması
sonucunda, semantik depo yazılımının
ilişkisel veritabanına göre -yüksek satırlı
cevap döndüren geri çağırma sorguları
dışındaki- tüm sorgu türlerinde daha düşük
tepki süresi verdiği anlaşıldığından, SW
tabanlı ağ uygulamalarının günümüz ilişkisel
veritabanı
yönetim
sistemlerine
göre
[1] Pollock J.T. "Semantic Web for
Dummies", Wiley Publishing, NJ, USA, 2009,
p. 10-11.
[2] The Semantic Web: An Introduction and
Issues, International Journal of Engineering
Research and Applications, 2012, p.780-786.
[3] Ullrich, C. "Description of an Instructional
Ontology and its Application in Web Services for
Education". Applications of Semantic Web
Technologies for E-learning, (SW-EL'04), 2004, p.
17-23.
[4] Pérez A. &López M.,2007. Ontological
Engineering: with examples from Knowledge
Management, e-Commerce, and the Semantic
Web. Springer-Verlag New York, Inc.
Secaucus, NJ, USA.
The Protégé Ontology Editor and
Knowledge
Acquisition
System.
http://protege.stanford.edu. Erişim: 08.10.
2015
[5]
Download