Lucene

Apache Lucene

Bilgi
Tarafından geliştirildi Apache Vakfı
Son sürüm 8.7.0 (3 Kasım 2020)
Depozito github.com/apache/lucene
Yazılmış Java
İşletim sistemi Çoklu platform
Çevre Çoklu platform
Tür Arama motoru
Lisans Apache lisansı
İnternet sitesi lucene.apache.org

Lucene , metin için indekslemeye ve aramaya izin veren , Java ile yazılmış açık kaynaklı bir kütüphanedir . Bazı arama motorlarında kullanılmaktadır .

Apache lisansı altında kullanıma sunulan Apache kuruluşunun bir projesidir . Aynı için de kullanılabilir Ruby , Perl , C ++ , PHP , C # , Python dilleri .

Tarihi

Lucene, ilk olarak Doug Cutting tarafından SourceForge.net sitesine yüklenmiştir .Mart 2000. Daha sonra GNU Kısıtlı Genel Kamu Lisansı altında yayınlanır . Onun transferi Apache Jakarta ilan edilirEkim 2001.

Lucene projesi , Aralık 2004'te yayınlanan Lucene in Action (eylemde Lucene) kitabından geliyor . Açık kaynak projeleri Ant , Lucene ve Tapestry'nin yöneticilerinden Erik Hatcher ve Apache Jakarta projesinin aktif bir üyesi olan Otis Gospodnetic tarafından ortaklaşa yazılmıştır .

14 Şubat 2005Lucene, Apache Jakarta projesine geçiyor . Kaynak kod tabanı dönüştürülür svn versiyonu kontrol .

Pazartesi 12 Aralık 2005Grant Ingersol, doğal dil işleme ile ilgili teknik ayrıntılar da dahil olmak üzere Lucene bileşenlerinin gelişmiş kullanımı üzerine ApacheCon ABD'de Java'da bir vaka çalışması sunuyor .

Bugün Lucene, dünya çapında çok sayıda ürünün ve web sitesinin arama motoru için kullanılmaktadır.

Lucene nasıl çalışır?

Endeksleme

İnternetin patlamasına kadar , Dewey'in ondalık sınıflandırması , bir kütüphanedeki nesneleri sınıflandırmada çok etkiliydi. Bununla birlikte, Web'de mevcut veri kütlesi o kadar devasa hale geldi ki, bilgiyi bulmak için artık alternatif ve daha dinamik araçlar kullanmak gerekiyor.

Tüm arama motorlarının merkezinde otomatik bir indeksleme mekanizması vardır  : ham verilerin bir kez işlenmesi ve ona çok sayıda yüksek verimli bağlantı verilmesi, arama işlemini hızlandırır. Kavram, genellikle bir kitabın sonunda bulunan ve belirli bir konuyla ilgili sayfaları hızlı bir şekilde bulmanızı sağlayan terminoloji dizinine oldukça benzer .

Büyük bir dosya alanını kaplamanız veya tek bir dosyada belirli bir karakter dizesi bulmanız gerekiyorsa, verilen kelime öbeği için her dosyayı sırayla taramamalısınız. Çünkü dosya sayısı ne kadar fazlaysa bilgi aramak o kadar uzun sürer . Sıralı yöntemi ortadan kaldıran, hızlı aramaya izin veren bir formatta bir metin dizini oluşturmak daha iyidir . Bu işleme indeksleme adı verilir .

Araştırma

Araştırma bulmak için bir dizin kelimeleri ararken eylemidir başvuruları göründükleri zaman belgelere. Bir aramanın kalitesi , sonuçların konumu ve alaka düzeyine göre değerlendirilir . Ancak, aramaya giren başka faktörler de var. Hız, büyük miktarda bilginin işlenmesinde belirleyici bir faktördür. Benzer şekilde, basit veya karmaşık sorguları, sorgulama cümlelerini, karakterleri, konumlandırma ve sıralama sonuçlarını destekleyebilmek , bu sorguları girmek için öğrenmesi kolay bir sözdizimi kadar önemlidir.

Sınıflar

Aşağıdaki bölümler, bu arama motorunu oluşturmak için kullanılan ana sınıflara kısa bir giriş sağlar .

Dizin oluşturma sınıfları

Araştırma dersleri

Kaynaklar

Araçlar

İlgili Projeler

Tüm bu projeler Apache Lucene'nin alt projeleridir veya alt projeleridir ve bir arama motorunun uygulanmasına izin verir.

Bir arama motorunun bileşenleri

Notlar ve referanslar

  1. LuceneTM Core News  " ( 3 Aralık 2020'de erişildi )
  2. Lucene sayfa SourceForge
  3. ApacheCon'da sunulan oturum
  4. (inç) Lucene kullanan uygulamaların listesi

Ekler

Kaynakça

  • " Apaçi Lucene giriş: Java Açık Kaynak Tam Metin Alma Sistemleri İnşaat " Koshi Sekiguti tarafından; Gijutsu-Hyohron Co, Ltd; ( ISBN  4774127809 )
  • Erik Hatcher ve Otis Gospodnetić'in yazdığı " Lucene In Action "; Manning Yayınları;Aralık 2004; ( ISBN  1932394281 ) (en) [1]
  • Manfred Hardt, Dr. Fabian Theis: " Suchmaschinen entwickeln mit Apache Lucene "; Yazılım ve Destek Verlag, Frankfurt am Main, Almanya;Eylül 2004; ( ISBN  3935042450 )

İlgili Makaleler

Dış bağlantılar