Full Text Searching
Salah
satu metode yang dapat digunakan untuk melakukan proses pencarian adalah dengan
memanfaatkan fungsi indexing pada database. Full Text Searching merupakan
proses pencarian data pada database
MySQL.
Definisi
Berikut
adalah definisi atau pengertian dari beberapa istilah yang sering digunakan
dalam full text searching :
a. MySQL, adalah
sebuah perangkat lunak sistem manajemen basis data SQL atau DBMS yang bersifat multithread
dan multiuser yang dikembangkan pertama kali oleh Michael Wildenius,
bersifat free software dengan lisensi dibawah GPU/GPL (General Public
license).
b. Full Text,
adalah fungsionalitas yang terdapat pada database (dalam hal ini database MySQL)
yang memungkinkan user untuk melakukan pencarian tertentu dalam tabel dengan cara
melakukan perbandingan string.
c. Boolean
Search, adalah sebuah metode pencarian yang memungkinkan pengguna untuk mempersempit
hasil pencarian dengan menggunakan operator Boolean.
d. Boolean
Operator, adalah sistem logis deduktif yang digunakan untuk mempersempit
hasil pencarian dengan menggunakan operator AND, OR, XOR dan lainnya.
Prasyarat
Sebelum
mengenal lebih jauh mengenai Full Text Searching ada beberapa hal
(prasyarat) yang perlu diketahui bersama :
a. Full Text
Searching mengacu pada fungsionalitas yang terdapat pada database MySQL;
b. Full text
index pada MySQL adalah index dengan tipe FULLTEXT;
c. Full text
index hanya dapat digunakan pada database MyISAM dan dapat digunakan untuk kolom
dengan tipe CHAR, VARCHAR, atau TEXT;
d. Full text
index dapat dibuat saat proses pembuatan tabel dengan perintah “CREATE
TABLE” atau saat perubahan struktur table yang sudah ada dengan menggunakan
perintah “ALTER TABLE” atau “CREATE INDEX”.
Skenario
Tulisan ini
menggunakan tabel article sebagai contoh untuk menggambarkan penggunaan Full-text
Searching di database MySQL, adapun struktur tabel article yang digunakan
adalah sebagai berikut :
|
Adapun contoh
data yang digunakan adalah sebagai berikut :
|
Pencarian data
secara “konvensional” biasanya dilakukan dengan menggunakan perintah SQL LIKE.
Contoh
: pencarian artikel yang mengandung kata MySQL dapat dilakukan dengan perintah
:
|
Penggunaan operator like pada
MySQL untuk jumlah data yang besar akan menyebabkan
turunnya performa.
Implementasi
Full--‐Text Searching dapat menjadi pilihan untuk
melakukan fungsi pencarian pada
database MySQL. Syarat untuk
dapat menjalankan fungsi Full--‐Text Searching adalah dengan menambahkan
index dengan tipe FULLTEXT pada field yang ingin dicari.
Berikut perintah untuk
menambahkan Full-Text
Indexing pada field
title dan body pada tabel
article :
|
Berikut beberapa
tipe penggunaan Full-Tex Searching dengan menggunakan data contoh pada
tabel article :
a. Natural Language
Secara default
penggunaan Full-Text Searching termasuk dalam tipe Natural Language.
b. Boolean
Tipe Boolean mengijinkan
penggunaan operator pada keyword pencarian seperti – atau +.
Berikut daftar operator yang
dapat digunakan :
• [non operator] secara default
memiliki arti “atau” / “or” ;
• + keyword harus terdapat
pada semua hasil yang didapat;
• - keyword tidak boleh
ada pada hasil yang didapat;
• > keyword termasuk
pada hasil yang didapat dengan urutan berdasar ranking
secara increase;
• < keyword termasuk
pada hasil yang didapat dengan urutan berdasar ranking
secara decrease;
• () digunakan untuk melakukan grouping/pengelompokan
dan dapat menambahkan
operator lain untuk meningkatkan
relevansi hasil pencarian;
• ~ berfungsi sebagai operator negasi,
jika sebuah keyword diberikan tanda ~,
mengakibatkan relevansi/score
minus;
• * merupakan operator wildcard;
• “ digunakan pada awal dan akhir
keyword yang terdiri dari dua kata atau lebih.
c. Query Expansion
Query Expansion merupakan salah
satu fitur yang bias digunakan ketika pencarian
hanya mengandung keyword yang
sedikit (hanya satu kata).
Tidak ada komentar:
Posting Komentar