Türkçe Metin Arama Sistemleri ve Veritabanlarının Kar(cid:9)ıla(cid:9)tırılması Özgür Yılmazel Anadolu Üniversitesi Bilgisayar Mühendisli(cid:7)i (cid:8)stanbul, Nisan 2009 Sunu Akı(cid:9)ı (cid:1) (cid:8)nternet Uygulamaları ve LAMP (cid:1) Metin Arama (cid:1) Veritabanı ve Metin Arama Sistemleri (cid:1) De(cid:7)erlendirme (cid:1) Uygulama Örnekleri 2 (cid:5)nternet Uygulamaları (cid:1) e-ticaret uygulamaları, bilgi portalları (cid:1) (cid:5)çindekiler: Veritabanı, web sunucusu, sunucu üzerinde çalı(cid:6)an yazılımlar, ve (html+javascript) kullanıcı arayüzleri LAMP – Açık kaynak kodlu çözüm (cid:1) Linux, Apache, MySQL, (PHP|Perl|Python) (cid:1) Tüm dünyada çok hızlı bir (cid:6)ekilde benimsendi (cid:1) Dü(cid:6)ük maliyet ile çok becerikli uygulamalar geli(cid:6)tirildi (cid:1) Düzenli veri yapılarının saklanması ve tekrar ula(cid:6)ılması için güçlü çözüm 3 (cid:6)nternet Uygulamaları – Düzensiz Veriler (cid:1) Düzenli Veri - Fiyat, Tarih, Miktar - SQL ile aranılabilir (cid:1) Düzensiz Veri – Metin, resim ve video (cid:1) Metinsel veriler: (cid:1)Email mesajları (cid:1)(cid:6)(cid:8) ilanları (cid:1)Ürün açıklamaları (cid:1)Haber metinleri (cid:1)Raporlar (cid:1) Kurumların sahip oldukları düzensiz veri miktarı büyük bir hızla artmakta “(cid:7)irketlerin sahip oldukları verinin %80i düzensiz veridir.” Sun Data Warehouse Reference Architecture, Mart 2008 “2009 yılının sonunda 4 exabyte bilgi olu(cid:8)turulacak bunun 3 exabyteından daha fazlasıda düzensiz bilgi olacaktır. Ve bu miktar son 5000 yılda olu(cid:8)an bilgiden fazladır” Karl Fisch (cid:1) Bilgi ihtiyacının kar(cid:8)ılanabilmesi için düzenli ve düzensiz verilerin tümünde efektif bir ula(cid:8)ım mekanizmasına ihtiyaç var. 4 Veritabanları ve Düzensiz Veriler (cid:1) Geleneksel Veritabanları ve arama dili SQL düzensiz verilerin saklanması ve aranması için uygun de(cid:5)il. (cid:1) Metinsel veriler için arama sistemleri (Information Retrieval Systems) (cid:1) Sıralama (ranking) (cid:1) Sorgulama dili (cid:1) E(cid:6)le(cid:6)tirme (cid:1) Bir çok öncü firma kendi arama sistemlerini geli(cid:6)tirmek için yatırımlar yaptılar: (cid:1) Amazon – A9 (cid:1) monster.com – Temmuz 2008’de Trovix arama (cid:6)irketini $72.5Milyon satın aldı (cid:1) e-Harmony – A(cid:6)ık olma olasılı(cid:5)ının matematiksel modelini olu(cid:6)turdu (cid:1) eBay – 1995’de kuruldu, 1998’de kendi arama motorunu geli(cid:6)tirdi 5 Metin Arama Sistemleri (cid:1) Veritabanı üreticisi firmalar yazılımlarına tam-metin indeksleme ve arama özellikleri eklemeye ba(cid:6)ladılar. (De(cid:5)i(cid:6)en ba(cid:6)arı standartlarında) (cid:1) IBM DB2 – Net Search Extender 1983 1999 (5) (cid:1) Microsoft SQL Server 1989 1998 (7.0) (cid:1) Oracle – Ultra Search Text Search 1971 1999 (8i) (cid:1) MySQL 1995 2000 (3.23) (cid:1) PostgreSQL 1989 2001 (7.0.3) (cid:1) Veri depolama amacı güdülmeden, sadece bilgiye ula(cid:6)ımın kolayla(cid:6)tırılması ve arama ba(cid:6)arımının arttırılmasına yönelik sistemler (cid:1) Apache Lucene (cid:1) Tamamen Java’da yazılmı(cid:6), açık kaynak kodlu, yüksek performanslı ve ölçeklenebilir bir metin arama kütüphanesi. (cid:1) Bazı kullanıcıları: CNET Reviews, Expert Exchange, Wikipedia, IBM OmniFind 6 Türkçe Metin Arama ve Veritabanı Kar(cid:6)ıla(cid:6)tırma Motivasyonu (cid:1) Türk kurum ve kurulu(cid:6)ları ellerindeki metin verilerinden tam anlamıyla faydalanamamakta ve bu verilerden yarar sa(cid:5)layamamaktadır. (cid:1) e-ticaret uygulamalarında aranılan ürünlerin bulunamaması (cid:1) Güncel bir gazetenin ar(cid:6)ivinde arama yaptı(cid:5)ınızda do(cid:5)ru habere ula(cid:6)amamanız (cid:1) Bir doktorun veya hukukçunun do(cid:5)ru güvenilir bilgiye kolay ula(cid:6)amaması (cid:1) Türkçe Metin Arama konusunda yapılan çalı(cid:6)ma sayısı oldukça az (cid:1) Yapılmı(cid:6) olan çalı(cid:6)maların ticari uygulamaya dönü(cid:6)mü(cid:6) örnekleri yok veya yaygın olarak bilinmiyor. (cid:1) Veritabanları tam metin indeksleme ve arama özellikleri geli(cid:6)tirseler de, bu özellikler ingilizceyi hedef alıyor (cid:1) Türk firmaların ço(cid:5)unlu(cid:5)u LAMP içinde sıkı(cid:6)mı(cid:6) durumdalar - daha iyi bir yol var ! En sık kullanılan yöntem “tüm doküman bir string olsun”.indexOf(“sorgu”) (cid:6)eklinde yapılan aramalar bugün elimizde olan veri kalabalı(cid:5)ında çok ilkel kalıyor. 7 Veritabanları Arama Sonuçları 8 Amaç Açık kaynak kodlu yazılımları kullanarak Türkçe için uygun, ticari olarak kullanılabilir bir arama sistemi gerçekle(cid:9)tirmek, bu sistemin mevcut veritabanına dayalı sistemler ile kar(cid:9)ıla(cid:9)tırmasını yapmak. Ticari olarak kullanılabilirlik: (cid:1) Hızlı – indeksleme ve sorguya cevap verme süresi (cid:1) Ölçeklenebilir – tepki zamanının indeks boyutuna göre de(cid:7)i(cid:9)imi (binlerce, milyonlarca doküman üzerinde arama yapabilme) (cid:1) Anlamlı sonuçlar – (cid:8)ndexde var olan sonuçların eksiksiz ve do(cid:7)ru sıralamada kullanıcıya sunulması. 9 Metin Arama Özet 10
Description: