halo,
Ahmad Juniar wrote:
> Ada 2 Pilihan bagi saya:
> 1. Saya buat field ISI_BERITA dan di situ berisi isi berita sehingga field
> ini mempunyai isi text yang besar. KELEBIHANNYA kita bisa search database
> di field ISI_BERITA
> dengan perintah spt ini:
>
> select * form berita where judul_berita = 'gus dur' AND isi_berita = 'gus dur'
^^^^^^^^^^^^^^^^^^^^^^
maksudnya begini?
isi_berita LIKE '%gus dur%'
ini akan lambat dan disk-intensive, karena database server akan
melakukan full scanning pada isi field. kalau bisa sih isi berita
di*indeks*:
* kalo anda pake oracle, ada plugin (atau tambahan operator CONTAINS?
sori kalo salah...) untuk full-text searching yang diindeks.
*barangkali* SQL server juga bisa (sori lagi kalo salah...).
* kalo anda pake database server yang ngga mendukung, anda mesti
melakukan indexing manual. ada bbrp modul perl yang bisa dicoba:
DBIx::TextIndex atau DBIx::KwIndex. silakan cari di CPAN.
> 2. Sedang metode kedua saya buat field INDEX_BERITA hanya text file yang
> berisi nama file(html) dari isi berita tsb, sehingga untuk memanggilnya
> akan saya
> redirect ke file tsb(html). Tapi pada tipe ini isi berita tidak bisa dicari.
bisa, tapi ngga dengan sql, melainkan dengan tool text retrieval
lain (glimpse, lqtext, htdig, isearch, mg, dll).
> Kalau menurut rekan2 sendiri gimana sebaiknya membuat database besar yang
> menyimpan banyak berita seperti di portal ASTAGA, SATUNET, DETIK.com,
> Search engine ALTAVISTA, CATCHA sistem databasenya, sehingga mempunyai
> keuntungan disisi kecepatan load data, management data maupun searching
> berita yg tak hanya di index berita tapi juga sampai isi beritanya.
pengalaman kami mengerjakan database artikel di satunet:
* langkah terpenting adalah menyusun skema tabel yang tepat.
jangan sampai terjadi banyak JOIN (terutama jika pakai mysql),
usahakan field-field yang akan dipakai sebagai kriteria
pencarian diindeks semua.
* pelajari konfigurasi/optimasi/maintenance database server
yang anda pakai.
menyimpan isi berita di database mysql sampai saat ini di
tempat kami masih ok (+- 5000 artikel, ukuran semua tabel
(termasuk indeks DBIx::KwIndex dan indeks2 tabel mysql sekitar
100MB). hanya saja bbrp waktu yang lalu kami mengeluarkan
sebagian (+- 8000) artikel lama untuk mengurangi beban server.
saya berencana akan kembali memasukkan artikel ini ke database
setelah kondisi memungkinkan (perlu ada sedikit perbaikan
skema tabel).
--
regards,
[EMAIL PROTECTED]
--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]