Proses mengisikan term pada database index ready ORDBMS menggunakan stored procedure insert_term_ordbms yang ditunjukkan pada pada
Gambar 3.5.
Mulai
Id_jurnal, term, nidfk,
dfk, tfk, ntfik, w
Cek apakah term sudah ada di tabel term
INSERT INTO TABLE SELECT posting_term FROM term WHERE term =
p_term VALUES p_tfik,0,0,new_jurnal_id;
INSERT INTO term VALUES
v_id,p_term,p_dfk,p_nidfk,PostingListNestedType PostingListTypep_tfik,p_ntfik,p_w,new_jurnal_id;
Ya Tidak
Selesai
Gambar 3.5. Flowchart stored procedure insert_term_ordbms pada database
index ready ORDBMS
3.1.1.2 Alur Kerja Proses Searching
Proses searching yang ditunjukkan pada Gambar 3.1 adalah proses pencarian dokumen. Algoritma untuk proses searching ditunjukkan pada Gambar
3.6.
Mulai
Query
String[] kata = Tokenizer ArrayListString
kataTanpaStopword = cekStopwordkata
Masih adakah kata dari hasil Stopword?
Apakah kataTanpaStopword.size
== 1?
String kueri1 = stemkataTanpaStopword.get0
hasilCari = singleSearchkueri1
Ranking berdasarkan bobot
dokumen i=0
String kueri1 = stemkataTanpaStopword.get0 String kueri2 = stemkataTanpaStopword.get1
hasilCari = ANDkueri1,kueri2
Ya Tidak
Ya Ya
String kueri1 = stemkataTanpaStop
word.geti+1
hasilCari = ANDhasilCari,kueri2
i++ Tidak
Tidak
Simpan waktu akses pencarian
query
Selesai
Gambar 3.6. Flowchart
untuk proses searching
Pada pencarian dengan menggunakan lebih dari 1 kata kunci akan menggunakan operasi AND. Algoritma untuk proses pencarian dengan operasi
AND ditunjukkan pada flowchart Gambar 3.7.
Mulai Insert kata1
dan kata2 ArrayListTerm listTerm1 = aloneSearchingkata1
ArrayListTerm listTerm2 = aloneSearchingkata2
listTerm1.size listTerm2.size
ArrayList Term t1=listTerm1 ArrayList Term t2=listTerm2
ArrayList Term t1=listTerm2 ArrayList Term t2=listTerm1
int indexT1 = 0 int indexT2 = 0
while indexT1 = t1.size
t1.getindexT1.getJurnal_id = t2.getindexT2.getJurnal_id
t1.getindexT1.getW + t2.getindexT2.getW
indexT1++ indexT2++
Ya
Ya t2.getindexT2.getJurnal_id
t1.getindexT1.getJurnal_id
indexT2++ Tidak
Ya indexT1++
Tidak
Tidak
Selesai Dokumen
hasil
Gambar 3.7. Flowchart untuk operasi AND
3.1.1.3 Alur Kerja Proses Penghitungan Waktu Akses Query
Proses penghitungan waktu akses query digunakan untuk melihat lama waktu akses query. Algoritma yang digunakan untuk melakukan penghitungan
waktu akses query ditunjukkan pada Gambar 3.8.
Mulai
Query dan pengguna
menekan tombol cari
long start = System.currentTi
meMillis;
Proses pencarian SearchingQuery
long finish = System.currentTi
meMillis;
time = long finish - start
1000.0;
Waktu akses query
Selesai
Gambar 3.8. Flowchart penghitungan waktu akses query
3.2 Analisa Kebutuhan