Lucene - Pemrograman Kueri
Kami telah melihat di bab sebelumnya Lucene - Search Operation, Lucene menggunakan IndexSearcher untuk melakukan pencarian dan menggunakan objek Query yang dibuat oleh QueryParser sebagai input. Dalam bab ini, kita akan membahas berbagai jenis objek Query dan berbagai cara untuk membuatnya secara terprogram. Membuat tipe objek Query yang berbeda memberikan kontrol pada jenis pencarian yang akan dilakukan.
Pertimbangkan kasus Pencarian Lanjutan, yang disediakan oleh banyak aplikasi di mana pengguna diberikan beberapa pilihan untuk membatasi hasil pencarian. Dengan pemrograman Query, kita dapat mencapai hal yang sama dengan sangat mudah.
Berikut adalah daftar jenis Query yang akan kita diskusikan nanti.
S.No. | Kelas & Deskripsi |
---|---|
1 | TermQuery
Kelas ini bertindak sebagai komponen inti yang membuat / memperbarui indeks selama proses pengindeksan. |
2 | TermRangeQuery
TermRangeQuery digunakan ketika berbagai istilah tekstual akan dicari. |
3 | PrefixQuery
PrefixQuery digunakan untuk mencocokkan dokumen yang indeksnya dimulai dengan string tertentu. |
4 | BooleanQuery
BooleanQuery digunakan untuk mencari dokumen yang merupakan hasil dari beberapa query menggunakan AND, OR atau NOT operator. |
5 | PhraseQuery
Permintaan frase digunakan untuk mencari dokumen yang berisi urutan istilah tertentu. |
6 | WildCardQuery
WildcardQuery digunakan untuk mencari dokumen menggunakan wildcard seperti '*' untuk setiap urutan karakter ,? mencocokkan satu karakter. |
7 | FuzzyQuery
FuzzyQuery digunakan untuk mencari dokumen menggunakan implementasi fuzzy yaitu pencarian perkiraan berdasarkan algoritma edit jarak. |
8 | MatchAllDocsQuery
MatchAllDocsQuery seperti namanya cocok dengan semua dokumen. |