Xapian and Omega

Software screenshot:
Xapian and Omega
Rincian Software:
Versi: 1.2.12 / 1.3.0
Tanggal Upload: 20 Feb 15
Pengembang: Xapian Team
Lisensi: Gratis
Popularitas: 3

Rating: nan/5 (Total Votes: 0)

Xapian adalah perpustakaan Open Source Probabilistic Information Retrieval, dirilis di bawah GPL. Iss Xapian ditulis dalam C, dengan binding untuk memungkinkan penggunaan dari bahasa lain (Perl, Java, Python, PHP, dan TCL yang saat ini didukung, Guile dan C # sedang dikerjakan).
Xapian dirancang untuk menjadi toolkit mudah beradaptasi untuk memungkinkan pengembang untuk dengan mudah menambahkan maju pengindeksan dan pencarian fasilitas untuk aplikasi mereka sendiri.
Jika Anda setelah mesin pencari dikemas untuk website Anda, Anda harus melihat di Omega, yang merupakan aplikasi kami menyediakan dibangun di atas Xapian. Tapi tidak seperti kebanyakan solusi pencarian website lain, fleksibilitas Xapian memungkinkan Anda untuk memperpanjang Omega untuk memenuhi kebutuhan Anda saat mereka tumbuh

Fitur :.

    < li> Software Free / Open Source -. berlisensi di bawah GPL
  • Sangat portabel - berjalan pada banyak Linux, MacOS X, banyak platform lainnya Unix, dan Microsoft Windows
  • .
  • Ditulis dalam C. Perl binding tersedia dalam modul Cari :: Xapian di CPAN. Java JNI binding termasuk dalam modul Xapian-binding. Kami juga mendukung SWIG yang dapat menghasilkan binding untuk 13 bahasa. Saat ini orang-orang untuk Python, PHP4, dan TCL bekerja. Tipu muslihat dan C # yang sedang dikerjakan.
  • Peringkat pencarian probablistic - kata-kata penting mendapatkan lebih berat daripada kata-kata yang tidak penting, sehingga dokumen yang paling relevan lebih mungkin untuk datang dekat bagian atas daftar hasil
  • .
  • Relevansi umpan balik - diberikan satu atau lebih dokumen, Xapian dapat menyarankan istilah indeks yang paling relevan untuk memperluas query, dokumen menyarankan terkait, mengkategorikan dokumen, dll
  • .
  • Frase dan kedekatan pencarian -. Pengguna dapat mencari kata-kata yang terjadi dalam sebuah frase eksak atau dalam jumlah tertentu kata-kata, baik dalam urutan tertentu, atau dalam urutan apapun
  • Penuh berbagai operator pencarian terstruktur boolean (& quot; saham TIDAK pasar & quot ;, dll). Hasil pencarian boolean adalah peringkat oleh bobot probablistic. Filter Boolean juga dapat diterapkan untuk membatasi pencarian probabilistik.
  • Mendukung berasal dari istilah pencarian (misalnya pencarian untuk & quot; sepak bola & quot; akan cocok dokumen yang menyebutkan & quot; bola & quot; atau & quot; pesepakbola & quot;). Hal ini membantu untuk menemukan dokumen yang relevan yang mungkin akan terjawab. Stemmers saat dimasukkan untuk Denmark, Belanda, Inggris, Finlandia, Perancis, Jerman, Italia, Norwegia, Portugis, Rusia, Spanyol, dan Swedia.
  • Mendukung file database & gt; 2GB -. Penting untuk skala untuk koleksi dokumen yang besar
  • Landasan format data independen -. Anda dapat membangun database pada satu mesin dan mencari di lain
  • Memungkinkan pembaruan simultan dan mencari. Dokumen baru menjadi dicari segera.

  • Selain perpustakaan, kami menyediakan sejumlah program contoh kecil, dan aplikasi yang lebih besar - sebuah indeks dan aplikasi berbasis CGI disebut omega:
  • The pengindeks disediakan dapat mengindeks HTML, PHP, PDF, PostScript, dan teks biasa. Menambahkan dukungan untuk mengindeks format lain mudah di mana filter konversi yang tersedia (misalnya Microsoft Word). Pengindeks ini bekerja menggunakan sistem pengarsipan, tetapi kami juga menyediakan script untuk memungkinkan crawler Htdig web yang akan tersambung di, memungkinkan remote site yang akan dicari dengan menggunakan Omega.
  • Anda juga dapat data indeks dari setiap SQL atau RDBMS lain yang didukung oleh modul Perl DBI. Itu termasuk MySQL, PostgreSQL, SQLite, Sybase, MS SQL, LDAP, dan ODBC.
  • pencarian CGI front-end disertakan dengan penampilan yang sangat disesuaikan. Hal ini juga dapat disesuaikan dengan hasil output XML atau CSV, yang berguna jika Anda secara dinamis menghasilkan halaman (misalnya dengan PHP atau mod_perl) dan hanya ingin hasil pencarian baku yang dapat Anda proses dalam sendiri kode tata letak halaman Anda.

Apa yang baru dalam rilis ini:

  • Versi ini perbaikan beberapa bug minor dan menambahkan beberapa fitur baru
  • .

Apa yang baru dalam versi 1.2.4:

  • Versi ini menambahkan API untuk penggabungan dan pemadatan database , membuat banyak perbaikan Omega, termasuk baru Perl binding berbasis SWIG, dan perbaikan beberapa kebocoran memori di Python binding.

Apa yang baru dalam versi 1.0.22:

  • Versi ini perbaikan beberapa bug minor, dan meningkatkan portabilitas
  • .

Apa yang baru dalam versi 1.0.21:

  • Xapian-core API:
  • Xapian :: Stem sekarang mengakui & quot; nb & quot; dan & quot; nn & quot; Kode sebagai tambahan untuk stemmer Norwegia.
  • Xapian :: QueryParser sekarang benar mem-parsing istilah wildcarded di antara dua istilah lain (tiket # 484).
  • Matcher:
  • OP_OR bisa melewatkan dokumen yang cocok jika membusuk untuk OP_AND atau OP_AND_MAYBE selama pertandingan dalam beberapa kasus. Perbaikan tiket # 476.
  • OP_XOR dengan subqueries non-daun bisa melewatkan dokumen yang cocok dalam beberapa kasus, dan OP_XOR tiga atau lebih sub-query bisa kembali bobot yang salah. Perbaikan tiket # 475.
  • OP_OR sekarang lebih efisien jika subquery berpotensi mahal (misalnya OP_VALUE_RANGE, OP_NEAR, OP_PHRASE, PostingSource). Sebuah kecepatan-up 10 kali lipat dengan OP_VALUE_RANGE telah diamati.
  • Membangun Sistem:
  • Instal file untuk membuat Xapian lebih mudah digunakan dengan cmake.
  • Portabilitas:
  • Pada prosesor x86, Xapian sekarang default menggunakan instruksi SSE2 FP. Hal ini untuk menghindari masalah dengan presisi kelebihan dan sedikit lebih cepat juga. Jika Anda perlu untuk mendukung prosesor tanpa SSE2 (ini berarti pra-Pentium4 untuk Intel) kemudian mengkonfigurasi dengan disable-sse. (Tiket # 387)

Apa yang baru dalam versi 1.0.18:

  • QueryParser:
  • Meningkatkan dukungan untuk bahasa seperti Burma yang menggunakan Unicode melampirkan tanda dan menggabungkan jarak mark karakter.
  • Flint backend:
  • Ketika memperbarui dokumen, tidak memperbarui postingan entri yang tidak berubah (tiket # 250).
  • Perbaiki mengunci kode untuk bekerja jika stdin dan / atau stdout telah ditutup.

Apa yang baru dalam versi 1.0.13:

  • API:
  • Xapian :: Dokumen tidak lagi pernah menyimpan nilai-nilai kosong eksplisit. Ini bukan perilaku yang disengaja, dan bagaimana hal ini ditangani tidak didokumentasikan. Perilaku diubah konsisten dengan bagaimana metadata pengguna ditangani. Perubahan ini tidak bisa diamati menggunakan Dokumen :: get_value (), tapi bisa melihat ketika iterasi dengan Dokumen :: values_begin (), menggunakan Dokumen :: values_count (), atau mencoba untuk menghapus nilai dengan Dokumen :: remove_value ().
  • testsuite:
  • Fix testcase scaleweight4 tidak gagal pada x86 ketika dikompilasi dengan O0. Masalahnya adalah dalam kode testcase, dan disebabkan oleh presisi kelebihan nilai FP menengah.
  • kasus uji yang memeriksa bahwa operasi memiliki diharapkan O (...) perilaku tidak ada pemeriksaan waktu CPU bukan waktu wallclock pada kebanyakan platform, yang harus menghilangkan kegagalan sesekali karena memuat paku dari proses lainnya.
  • (tiket # 308)
  • kegagalan uji Fix karena SKIP_TEST_FOR_BACKEND (& quot; inmemory & quot;) tidak melompat-lompat ketika harus karena untuk membandingkan char string dengan == (pada trunk nilai balik yang diuji adalah std :: string bukannya const char *)
  • Meningkatkan cakupan tes dalam beberapa kasus sudut.
  • Fix testcase consistency2 untuk benar-benar dijalankan (untungnya melewati).
  • Dalam testcases dihasilkan, sebut get_description () pada standar dibangun objek masing-masing kelas untuk memastikan bahwa bekerja (dan tidak mencoba untuk dereference NULL, atau gagal beberapa pernyataan, dll). Semua kelas saat diperiksa baik-baik saja - ini adalah untuk menghindari regresi masa depan atau masalah tersebut dengan kelas baru
  • .
  • Pada uji cakupan membangun, gunakan & quot; - cakupan & quot; bukannya & quot; -fprofile-busur -ftest-cakupan & quot;.
  • The harness tes sekarang memiliki backend inmemory ditandai sebagai pendukung ditentukan pengguna metadata (terlepas dari iterasi atas kunci metadata).
  • matcher:
  • Jika query berisi subquery MatchAll, memeriksa sebelum memeriksa persyaratan lain sehingga loop yang memeriksa berapa banyak istilah pertandingan dapat keluar lebih awal jika mereka semua pertandingan.
  • Bila OR atau ANY_MAYBE membusuk ke AND, kami dengan hati-hati menukar anak-anak untuk efisiensi maksimum, tapi kondisi terbalik jadi kami sebenarnya membuat hal-hal buruk. Hal ini melihat karena mengakibatkan permintaan yang sama berjalan lebih cepat ketika hasil yang lebih diminta untuk!
  • Hanya membangun termname untuk termfreq dan peta berat untuk subdatabase pertama bukannya membangun kembali untuk masing-masing. Juga tidak menyalin peta ini untuk mengembalikannya. Ini harus mempercepat pencarian sedikit, terutama mereka selama beberapa database.
  • Jika submatcher gagal tapi ErrorHandler memberitahu kita untuk terus tanpa itu, kita hanya menggunakan pointer NULL untuk berdiri di daripada mengalokasikan dummy objek tempat-tempat khusus.
  • Hapus AndPostList, mendukung MultiAndPostList. AndPostList hanya digunakan sebagai produk peluruhan (oleh AndMaybePostList dan OrPostList), dan tidak muncul untuk menjadi lebih cepat. Menghapus mengurangi tekanan CPU cache, dan kurang kode untuk mempertahankan.
  • Panggilan cek () bukan skip_to () pada cabang opsional AND_MAYBE.
  • batu backend:
  • Memperbaiki bug di TermIterator :: skip_to () lebih dari kunci metadata.
  • jauh backend:
  • Perbaiki opsi --interface Xapian-tcpsrv untuk bekerja pada MacOS X (tiket # 373).
  • Fix ketik yang menyebabkan kita untuk kembali docID bukannya berat maksimum dokumen dari pertandingan jauh bisa kembali! Hal ini bisa menyebabkan hasil yang salah ketika mencari beberapa database dengan backend jauh, tapi mungkin biasanya tidak masalah karena dengan BM25 bobot umumnya kecil (sering semua & # x3c; 1) sedangkan docids yang pasti & # x3e; = 1
  • .
  • inmemory backend:
  • backend inmemory tidak mendukung iterasi kunci metadata. Mencoba untuk melakukannya digunakan untuk memberikan iterasi kosong, tapi sekarang sudah diperbaiki untuk membuang
  • UnimplementedError (dan keterbatasan ini sekarang telah didokumentasikan).
  • membangun sistem:
  • Hapus banyak inklusi sundulan yang tidak terpakai dan beberapa kode yang tidak terpakai yang seharusnya membuat membangun lebih cepat dan sedikit lebih kecil.
  • Fix untuk mengkompilasi bawah disable-backend-flint,-disable-backend jarak jauh, dan disable-backend-inmemory.
  • Jangan menghapus sumber dibangun di & quot; make clean & quot; bahkan di bawah --make-pemelihara-mode sebagai yang melanggar beralih pohon jauh dari pemelihara-mode dengan: make distclean; ./ configure
  • configure: Aktifkan lebih GCC peringatan - & quot; -Woverloaded-maya & quot; untuk semua versi, & quot; -Wstrict-nol-sentinel & quot; untuk 4.0+, & quot; -Wlogical-op -Wmissing-deklarasi & quot; untuk 4.3+. Terutama & quot; -Wmissing-deklarasi & quot; tertangkap bahwa consistency2 tidak dijalankan.
  • internal, memperbaiki beberapa tempat di mana kami melewati std :: string oleh nilai lewat referensi const bukan (kecuali kita memerlukan salinan dimodifikasi pula) sebagai benchmarking menunjukkan bahwa referensi const sedikit lebih cepat dan menghasilkan kode kurang dengan mengacu GCC dihitung pelaksanaan std :: string - dengan implementasi non-referensi dihitung, referensi const harus lebih cepat. (Tiket # 140)
  • dokumentasi:
  • INSTALL:. Kita tidak lagi teratur menguji membangun dengan GCC 2.95.4 dan kami menaikkan versi GCC minimum yang dibutuhkan untuk 3.1 1.1.x Xapian
  • Dokumen apa lewat maxitems = 0 untuk Bertanya :: get_mset () tidak.
  • docs / queryparser.html: Tambah contoh menggunakan awalan pada frase atau subexpression
  • .
  • komentar doxygen benar untuk fungsi metadata pengguna:. :: Database get_metadata () melemparkan UnimplementedError tapi WritableDatabase :: set_metadata () dapat
  • Dokumen yang database :: metadata_keys_begin () mengembalikan sebuah iterator akhir jika backend tidak mendukung metadata.
  • HACKING:. Update daftar paket Debian / Ubuntu yang dibutuhkan untuk lingkungan pengembangan
  • debug kode:
  • Perbaiki membangun dengan --enable-debug.
  • Ditambahkan beberapa pernyataan lagi.

Apa yang baru dalam versi 1.0.11:

  • Rilis ini memperbaiki beberapa bug dan menambahkan dukungan untuk Omega untuk mengindeks MS Office 2007 format dan file XPS.

Apa yang baru dalam versi 1.0.10:

  • Rilis ini memperbaiki kasus kemungkinan database korupsi jika disk mengisi saat menulis keluar perubahan.
  • The lockfile untuk database flint sekarang dibuat dengan menggunakan pengaturan umask.
  • Sebelumnya, itu tidak mungkin untuk membuka database batu untuk update jika itu dimiliki oleh pengguna lain, bahkan dengan izin yang memadai melalui & quot; kelompok & quot; atau & quot; lain & quot;.
  • Menulis query OP_NEAR dengan dua subqueries jangka non-sekarang melempar UnimplementedError bukan AssertionError.

Apa yang baru dalam versi 1.0.9:

  • koreksi Ejaan sekarang bahkan lebih cepat. (A kecepatan 15% sampai diukur.)
  • Dua bug yang disebabkan oleh kelebihan presisi di x86 Linux telah diperbaiki.
  • Query :: MatchAll sekarang memberikan bobot yang sama untuk semua dokumen.
  • Sebuah kecelakaan saat pemadatan tabel ejaan telah diperbaiki.
  • Contoh copydatabase sekarang salinan pengguna metadata juga.
  • biner CGI omega sekarang menangkap dan laporan std :: exception
  • .

Komentar untuk Xapian and Omega

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!