BitFunnel - BitFunnel

BitFunnel
Geliştirici (ler)Microsoft
İlk sürüm2016; 4 yıl önce (2016)
Depogithub.com/ BitFunnel
YazılmışC ++
Platformpencereler, Mac os işletim sistemi, Ubuntu
TürArama motoru indeksleme algoritma
LisansMIT Lisansı
İnternet sitesibitfunnel.org

BitFunnel ... arama motoru indeksleme algoritması ve kullanılan bir dizi bileşen Bing arama motoru,[1] 2016 yılında açık kaynak haline getirildi.[2] BitFunnel, bit dilimli imzalar kullanır. ters indeks operasyon maliyetini düşürmek amacıyla.[3]

Tarih

BitFunnel uygulamasına ilişkin ilerleme, 2016 yılının başlarında, o yıl içinde kullanılabilir bir uygulama olacağı beklentisiyle kamuoyuna duyuruldu.[4] Eylül 2016'da, kaynak kodu aracılığıyla kullanıma sunuldu GitHub.[5] BitFunnel algoritmasını ve uygulamasını tartışan bir makale yayınlanmıştır. Bilgi Edinme Özel İlgi Grubu of Bilgi İşlem Makineleri Derneği 2017'de En İyi Bildiri Ödülü'nü kazandı.[3] [6]

Bileşenler

BitFunnel üç ana bileşenden oluşur:[1]

  • BitFunnel - metin arama / erişim sisteminin kendisi
  • WorkBench - BitFunnel'da kullanılmak üzere metin hazırlamak için bir araç
  • NativeJIT - kullanılan ifadeleri alan bir yazılım bileşeni C veri yapıları ve bunları yüksek düzeyde optimize edilmiş montaj kodu

Algoritma

İlk soruna ve çözüme genel bakış

BitFunnel belgesi, bir algoritmanın anahtar sözcüklerin kullanımı yoluyla belgeleri tanımlaması gerektiğinde ortaya çıkan "eşleştirme sorununu" açıklar. Sorunun amacı, aranacak bir külliyat ve eşleşecek anahtar kelime terimleri sorgusu verilen bir dizi eşleşmeyi belirlemektir. Bu sorun genellikle şu yollarla çözülür: ters indeks aranabilir her öğenin bir harita anahtar kelimelerin.[3]

Buna karşılık, BitFunnel her aranabilir öğeyi bir imza aracılığıyla temsil eder. İmza, bir Bloom filtresi aranabilir bir öğedeki aranabilir terimler. Çiçeklenme filtresi, birkaç bit konumu aracılığıyla karma oluşturma yoluyla oluşturulur.[3]

Bit dizgisi imzalarının teorik uygulaması

Bir belgenin (D) imzası, mantıksal veya terim imzaları olarak tanımlanabilir:

Benzer şekilde, bir belge (Q) için bir sorgu birleşim olarak tanımlanabilir:

Ek olarak, bir D dokümanı setin bir üyesidir M ' aşağıdaki koşul karşılandığında:

Bu bilgi daha sonra bir formül üretmek için birleştirilir M ' sorgu imzasıyla eşleşen belgelerle tanımlanır:

Bu adımlar ve kanıtları 2017 tarihli makalede tartışılmaktadır.[3]

Bit dizesi imzaları için sözde kod

Bu algoritma 2017 tarihli makalede açıklanmıştır.[3]

Referanslar

  1. ^ a b Yegulalp, Serdar (6 Eylül 2016). "Hızlı kod derlemesi için Microsoft açık kaynak Bing bileşenleri". InfoWorld.
  2. ^ Verma, Arpit (2016-09-07). "Microsoft Açık Kaynaklar Bing Arama Motorunun Başlıca Bileşenleri, İşte Neden Önemlidir". Fossbytes. Alındı 2020-06-12.
  3. ^ a b c d e f Goodwin, Bob; Hopcroft, Michael; Luu, Dan; Clemmer, Alex; Curmei, Mihaela; Elnikety, Sameh; O, Yuxiong (2017/08/07). "BitFunnel". 40. Uluslararası ACM SİGİR Bilgi Erişiminde Araştırma ve Geliştirme Konferansı Bildirileri. New York, NY, ABD: ACM: 605–614. doi:10.1145/3077136.3080789. ISBN  978-1-4503-5022-8.
  4. ^ "BitFunnel ne zaman kullanılabilir olacak? · BitFunnel". bitfunnel.org. Alındı 2020-06-12.
  5. ^ BitFunnel / BitFunnel, BitFunnel, 2020-05-12, alındı 2020-06-12
  6. ^ "SİGİR En İyi Kağıt Ödülleri". ACM. Alındı 8 Temmuz 2020.

Dış bağlantılar