E-Commerce: Navigasi dan Search Engine

E-Commerce: Navigasi dan Search Engine

Loupe

Hal pertama yang krusial dalam urusan e-commerce adalah soal etalase dan navigasi. Etalase penting karena sebelum calon pembeli bisa mengenal Anda, mereka harus tertarik dahulu dengan situs Anda. Yang kedua adalah navigasi. Seringkali etalase sudah mampu menahan calon pembeli untuk tidak cepat-cepat lari, atau sebaliknya sama sekali tidak berguna dan tak menarik. Jika calon pembeli masih mencoba bertahan demi mencari apa yang dia inginkan, maka navigasi akan menjadi pertahanan kedua bagi situs Anda.

Ada dua tipe navigasi. Yang pertama adalah yang standar, yang memberikan overview dan peta penjelajahan situs. Biasanya bisa ditemukan secara konsisten baik di bagian atas, samping atau footer.

Yang kedua adalah navigasi versi advance. Jenis ini masih bertujuan memberikan alat untuk menelusuri situs, namun dengan cara lebih spesifik. Misal lewat kategori, pengarang, produsen, range harga, dan lain lain. Navigasi semacam ini sebenarnya mirip dengan fitur search namun sudah diberi antar muka yang lebih intuitif. Alih-alih model kotak isian teks kosong, calon pembeli diberi beberapa nilai default yang bisa dipakai lewat link yang disediakan. Lebih keren lagi, calon pembeli bisa melakukan penelusuran bertingkat, misalnya: kategori buku, di-drilldown dengan topik “IT dan Marketing”, di-tune lagi pada level berikutnya dengan range harga 100 ribu sampai 400 ribu, lalu difinalisasi dengan “reviewed by NavinoT”. Calon pembeli pun akan sampai pada apa yang benar-benar dia cari.

Sebenarnya masing-masing CMS e-commerce pasti telah dilengkapi dengan built-in (terintegrasi) search engine. Akan tetapi search engine tersebut akan mengalami breakdown pada titik tertentu, misalnya saat pengguna situs sudah mencapai jumlah tertentu, koleksi data yang membengkak, serta saat model pencarian ingin diganti.

Saat jumlah pengguna menanjak, performa fitur search yang umumnya sekedar bergantung fasilitas internal akan mengalami degradasi. Ini terjadi karena fitur pencarian ini sebenarnya tidak didesain secara optimal untuk proses pencarian intensif, namun hanya sekedar ada untuk melengkapi fitur.

Performa juga akan terganggu saat koleksi data membengkak. Untuk menampilkan data seperti biasanya saja akan memerlukan waktu ektra, apalagi jika hasil menelusur database lewat fitur searching. Kadangkala data regular pun bisa disajikan (offloading) via search engine demi mengurangi penalti normalisasi database (yang lebih cocok untuk data mining daripada site performance)

Isu ketiga adalah penggantian model pencarian. Fitur pencarian internal tentunya telah di desain dengan batasan tertentu. Ketika situs Anda tumbuh tentunya Anda akan semakin tahu pola pemakaian oleh pengguna. Termasuk di dalamnya adalah pola pencarian dalam rangka mendapatkan pengalaman terbaik dalam pemanfaatan situs.

Dalam edisi JuTek (Jumat Tekno) kali ini, akan disajikan beberapa alternatif mesin pencari eksternal bisa Anda implementasi untuk meningkatkan performa dan user experience di situs Anda.

Lucene/SOLR
Lucene adalah salah satu proyek Apache. Proyek ini ditujukan untuk memenuhi kebutuhan search engine yang opensource. Lucene tergolong salah satu search engine yang cukup terkenal. Buktinya banyak framework dan bahasa pemrograman yang menyediakan pustaka untuk berantarmuka dengan Lucene. Baik di Java dengan SOLR, atau Zend yang juga mampu mengakses dokumen Lucene secara low-level. Khusus untuk SOLR, perangkat lunak ini bisa dipasang sebagai perantara antara pihak ketiga dan Lucene. Keunggulannya adalah configurable via Java-esque XML. Keseluruhan kontrol atas proses indexing dan query bisa dilakukan lewat konfigurasi XML yang tersedia. Pustaka pihak ketiga bisa mengakses data Lucene lewat protokol HTTP yang disediakan oleh SOLR, baik dalam format RSS/XML, serialized PHP maupun JSON. Field dalam indeks bisa dilengkapi dengan weight tertentu untuk mempengaruhi penghitungan score relevancy. Menariknya, weigth ini bisa di-override langsung via GET request.

Pustaka untuk mengakses SOLR tersedia dalam PHP, dan juga Ruby. Karena bisa diakses via GET dan POST, membuat pustaka untuk mengakses SOLR amatlah “sederhana”. Yang merepotkan dan memerlukan perhatian khusus adalah bagaimana mengkonfigurasi proses indexing dan query demi memperoleh hasil yang benar-benar sesuai keinginan dan make sense sesuai proses bisnis situs Anda.

Salah satu yang memakai SOLR/Lucene adalah CNET, dan err.. memang pada awalnya SOLR dikembangkan oleh CNET sebelum masuk Apache Incubator.

Sphinx
Fitur Sphinx sebenarnya mirip dengan apa yang ditawarkan SOLR, antara lain weighting, proximity search, stemming (reduksi ke kata dasar) dan lain-lain. Namun fitur yang membuatnya berbeda dengan yang lain adalah kemampuannya untuk langsung dihubungkan dengan database MySQL sebagai datasource (indexing source). Beberapa situs yang memakai Sphinx adalah Mysql.com, Mininova, ThePiratebay, Joomla.org, dan Wikimapia.

Xapian
Bocorannya sih, Koprol.com memakai Xapian sebagai search engine pilihan. Fiturnya juga tidak jauh dari SOLR/Lucene dan Sphinx. Keunggulannya mungkin di relevancy feedback. Fitur ”Apakah maksud Anda Kemuri (alih-alih Bukit Duri)?” ini belum tersedia di dua pilihan di atas.

Terlihat ulasan untuk SOLR tampak lebih panjang dan lebar. Sengaja, untuk dua pilihan lain saya ingin mengundang pembaca yang telah memakai untuk menuliskan pengalamannya dan melakukan trackback ke artikel ini.

Okay, mari kita mulai diskusinya. Bagaimana performa situs (e-commerce, forum, dll) milik Anda atau situs-situs yang Anda pakai? Apakah sudah cukup memuaskan atau Anda tahu masih bisa ditingkatkan?

PS:
SpellCheckComponent tampaknya sudah tersedia di SOLR 1.3

Comments are closed.