Apache Solr : Search Engine Serta Database Yang Layak Untuk Dicoba
Pengertian Apache Solr
Solr merupakan search engine sekaligus database dengan open-source (sumber terbuka) yang dikembangkan oleh Apache Software Foundation.Solr dirancang untuk aplikasi dan situs web yang mengelola lalu lintas tinggi.Solr dibuat berdasarkan Apache Lucene,solusi pengambilan data sumber terbuka dan menggunakan kemampuan pencocokan Apache Lucene yang dapat diterapkan ke banyak data.
Mengapa Devloper Membutuhkan Search Engine ?
Search Engine memiliki fungsi sebagai filter untuk kebutuhan informasi yang tersedia di World Wide Web.Adanya Search Engine memungkinkan developer dengan cepat dan mudah menemukan informasi apa pun tentang minat atau nilai mereka,tanpa perlu membuka banyak halaman web yang tidak relevan.
Tujuan keberadaan Search Engine untuk memberikan hasil pencarian yang difilter kepada pengguna yang mengarah ke informasi yang relevan di situs web berkualitas tinggi di mana sejumlah besar data tersedia,seperti JavaTpoint,Wikipedia dan lainnya.
Search Engine terdiri 3 komponen dasar,yaitu :
- Web Crawler
Web Crawler dikenal sebagai laba-laba atau bot. Web Crawler merupakan komponen perangkat lunak yang mencari di Web untuk mengumpulkan informasi.
- Database
Setiap informasi di Web disimpan dalam database.Database berisi banyak sumber daya web dan data-data pada database hanya akan ditampilkan ketika pengguna melakukan request terhadap data tersebut.
- Search Interface
Search Interface merupakan antarmuka antara database dan pengguna.Ini membantu pengguna untuk melintasi database.
Solr merupakan teknologi NoSQL,yang secara khusus dioptimalkan untuk kelas masalah unik. Software Solr memberikan berbagai fitur yang berguna untuk memudahkan pemrograman,seperti kemampuan untuk mengizinkan mode skema dan tanpa skema,secara otomatis memetakan bidang baru yang dibuat dan mencocokkan serta menggabungkan penganalisis Lucene.
Solr menawarkan berbagai strategi untuk menguraikan fungsionalitas kueri yang kuat dan dapat disesuaikan.Hal ini membantu developer dalam menyederhanakan eksekusi pencarian dan bagaimana data yang terkait dengan pencarian dibuat.
Developer juga dapat menikmati parsing kueri fleksibel yang dapat disematkan ke dalam aplikasi untuk menangani beberapa operasi kueri dan mengirimkan konten yang relevan kepada pengguna. Solr juga memungkinkan developer mengatur data dengan berbagai cara melalui fitur faceting.Solr menggunakan algoritme untuk memotong data sehingga dapat melihat dan menganalisisnya dari berbagai sudut.
Fitur-Fitur Pada Apache Solr
Apache menyematkan beragam fitur pada Solr yang memudahkan dalam membuat berbagai proyek pengembangan.Fitur penemuan kontennya memungkinkan kalian menemukan dan mengakses semua jenis konten dengan mudah,menawarkan saran ejaan,dan membantu memeriksa kata dan ejaan.
Sebagai bagian dari fitur ini,kalian juga dapat menikmati fungsionalitas penyorotan hit yang menampilkan fragmen dokumen dan bagian yang cocok dengan pencarian kueri.
Solr juga dilengkapi pencarian lokasi yang dapat digunakan pengguna untuk menghasilkan konten sesuai dengan lokasi individu yang membuat kueri.Terlebih lagi, mengindeks dengan perangkat lunak juga mudah karena pengguna dapat mengumpulkan data dari berbagai sumber dan menggunakannya untuk membuat indeks dengan konten yang kaya.
Solr ada beberapa fitur penting yang digunakan untuk memberikan solusi pencarian yang mudah digunakan,penuh inisiatif,dan kuat. Pada perangkat lunak ini hanya mengekspos API HTTP seperti REST dan tidak dapat menyediakan komponen UI terkait penelusuran dalam bahasa atau kerangka kerja apa pun.
Berikut fitur-fitur Solr :
1.Pagination dan sorting
Fitur ini memudahkan untuk memberi nomor halaman serta melakukan pengurutan halaman.Dengan fitur sorting juga kalian dapat melakukan pencarian data-data yang dibutuhkan dengan mudah.
Solr mengalami pengoptimalan untuk melayani penomoran halaman dan permintaan daripada mengembalikan semua dokumen yang cocok karena hanya N-document teratas yang dikembalikan di halaman pertama.
2.Faceting
Fitur yang memberi pengguna alat untuk mempersempit kriteria pencarian dan menemukan lebih banyak informasi dengan mengkategorikan hasil pencarian ke dalam subkelompok.Fitur ini juga membantu kalian semakin mudah menemukan data yang dibutuhkan.
3.Autosuggest
Fitur yang digunakan oleh pengguna yang mengharapkan aplikasi pencarian mereka untuk mencari informasi yang sesuai dengan informasi yang dibutuhkan meskipun mereka mengisi informasi yang tidak lengkap.Ini memungkinkan pengguna untuk melihat daftar istilah dan frasa yang disarankan berdasarkan dokumen di indeks kalian.
4.Spell-Checker
Fitur yang berfungsi untuk mengoreksi kata yang ingin ditulis secara otomatis.Mesin pencari akan menangani kesalahan eja dengan baik serta menampilkan informasi yang relevan meski ada kesalahan eja.
5.Hit Highlighting
Fitur hit highlighting dapat digunakan iuntuk menampilkan bagian tertentu dari setiap dokumen.
6.Geospatial Search
Fitur yang digunakan untuk mengurutkan dokumen berdasarkan jarak dari geolokasi.
Solr dilengkapi kemampuan untuk memproses data dari MS Office, XML, CSV dan jenis file lainnya. Sorotan lain dari perangkat lunak ini adalah antarmuka administrasi yang kaya dan kuat,plugin dan ekstensi serta pendekatan pengembangan terbuka dan sumber terbuka.
Kelebihan Apache Solr
- Bahasa kueri fleksibel dan kuat memungkinkan membuat kueri yang beragam dan kompleks untuk mengambil data.
- Respon kueri sangat cepat.
- Dokumentasi yang bagus dan dukungan komunitas cukup besar.
- Mode cluster dengan master dan slave terpisah sehingga kalian dapat menskalakan setiap jenis berdasarkan kebutuhan untuk meningkatkan data input atau kecepatan respons.
- Scalable atau dapat diskalakan.Solr melakukan skala dengan mendistribusikan pengindeksan dan pemrosesan kueri ke beberapa server dalam satu cluster.
- Solr adalah sumber terbuka,mudah dipasang dan dikonfigurasi serta memberikan contoh yang telah dikonfigurasikan untuk membantu kalian memulai.
- Dioptimalkan untuk pencarian.Perangkat lunak ini tergolong cepat dan dapat mengeksekusi kueri kompleks dalam sepersekian detik.
- Volume dokumen besar.Hal ini sengaja dirancang untuk menangani indeks yang berisi jutaan dokumen.
- Teks-sentris.Solr memang dioptimalkan untuk mencari teks bahasa alami,seperti email, halaman web,resume,dokumen PDF dan pesan sosial seperti tweet atau blog.
- Hasil pencarian diurutkan berdasarkan relevansi.Hal ini juga dapat mengembalikan dokumen dalam urutan peringkat berdasarkan seberapa relevan setiap dokumen dengan kueri pengguna.
Kekurangan Apache Solr
- Solr tidak mendukung otentikasi dan otorisasi,sehingga perlu menempatkannya di dalam jaringan pribadi.
- Bekerja dengan cloud Solr membutuhkan Zookeeper tambahan.
- Node master memerlukan konfigurasi ulang jika tidak berfungsi.
- Konfigurasi dan penyesuaiannya tidak intuitif.
- Solr tidak termasuk web crawler.Mengindeks situs web kalian memerlukan penambahan perayap web terpisah atau menggunakan API mereka untuk menambahkan informasi ke indeks.
- Melakukan debug dan memecahkan masalah kueri bisa menjadi tugas yang sulit.
Perkembangan Apache Solr
Solr dibuat oleh seorang programmer bernama Yonik Seely pada tahun 2004.Tujuan pembuatannya untuk menambahkan kemampuan pencarian ke situs web perusahaan Jaringan CNET.Pada bulan Januari 2006,Solr dijadikan proyek sumber terbuka di bawah yayasan perangkat lunak Apache.
Jika ingin mendownload versi terbaru maupun versi lama Solr lengkap di link ini :
https://lucene.apache.org/solr/downloads.html.
Ada beberapa persyaratan untuk menjalankan Solr di komputer.Untuk menggunakan Solr,kalian membutuhkan versi Java 1.5 atau yang lebih baru.Kalian bisa mendapatkan atau mengunduh Java dari Oracle,Open JDK,IBM atau Running Java versi pada baris perintah akan menunjukkan nomor versi yang dimulai dengan 1.5. GCJ Gnu tidak didukung dan tidak berfungsi dengan Solr.
Setelah menginstal Java dan Solr,kalian dapat langsung menghubungkan Solr dengan Java kalian. Berikut ini caranya :
- Mengatur Classpath
Setel jalur kelas ke pustaka Solr di file .bashrc.Buka .bashrc di salah satu editor teks,seperti berikut ini :
$ gedit ~ / .bashrc
- Ekspor Classpath
Setel jalur kelas untuk perpustakaan Solr (folder lib di HBase),seperti berikut ini :
ekspor CLASSPATH = $ CLASSPATH: // home / hadoop / Solr / lib / *
Hal ini dapat dilakukan untuk mencegah pengecualian “kelas tidak ditemukan” saat mengakses HBase menggunakan Java API.
Itulah penjelasan tentang Apache Solr.Jadi Solr adalah perangkat lunak database sekaligus search engine yang bisa kalian coba gunakan.Khusus bagi para developer Java,penggunaan Solr cocok,karena semakin memudahkan pemrograman.Sekian artikel ini,semoga bermanfaat 🙂