Tag: SearchEngine

Yang dimaksud dengan search engine disini bukanlah web search engine seperti Google, melainkan komponen dari aplikasi yang dipergunakan untuk menyediakan fasilitas pencarian. Umumnya, mesin pencarian tersebut adalah full-text search engine seperti Apache Lucene, Apache Solr, ElasticSearch, dan Algolia.

Dari MySQL Ke Algolia Melalui Python

Hari ini saya harus melakukan operasi indexing di Algolia berdasarkan data dari database MySQL yang sudah ada. Saya hanya memiliki akses ke database tersebut tanpa kode program. Saya tidak menemukan tools otomatis untuk melakukan hal ini seperti layaknya Logstash di ELK (Elasticsearch, Logstash, Kibana). Beruntungnya, tidak sulit untuk menulis kode program yang membaca dari database MySQL dan mengirimkannya ke Algolia karena Algolia telah menyediakan libray pendukung di beberapa bahasa pemograman populer. Pertanyaannya adalah saya harus menulis dalam bahasa pemograman apa? Ini pastinya adalah sebuah script CLI dan bukannya aplikasi web; oleh sebab itu saya tidak akan menggunakan bahasa favorit saya: Java. Setelah berpikir sejenak, saya menyadari bahwa satu-satunya bahasa pemograman yang saya kuasai dan tepat untuk CLI adalah Python.

Memakai Algolia Untuk Fitur Pencarian Di Jekyll

Salah satu fitur yang tidak saya jumpai setelah beralih dari Wordpress ke Jekyll adalah pencarian. Cukup masuk akal karena Jekyll menghasilkan halaman HTML statis tanpa menggunakan fasilitas di sisi server seperti database. Oleh sebab itu, bila ingin memiliki fitur pencarian, saya perlu menggunakan search engine terpisah yang akan meng-index setiap post di blog ini. Biasanya saya akan men-install ElasticSearch yang men-ekspos fasilitas pencariannya dalam bentuk REST API ‘siap saji’ bagi klien. Sebagai latihan, kali ini saya akan menggunakan Algolia yang merupakan layanan hosted tanpa perlu instalasi. Salah satu nilai tambah Algolia adalah memiliki Search UI yang menyediakan widget siap pakai untuk ditempelkan ke website. Karena ini adalah situs pribadi yang sederhana, saya mendaftar pada plan gratis Algolia yang memiliki batas 10.000 records dan 100.000 operasi pencarian per bulan.