Yohanes Santoso wrote:

> Kenapa tidak? Untuk image file, preference saya adalah menyimpannya di
> database, tapi dengan caching di filesystem. 

Karena "berat". Ditulis dengan tanda kutip karena sampai detik tulisan saya ini
diketik untuk diposting malam-malam, saya masih belum punya data perhitungan 
pasti
  sendiri apakah file image yang ditaruh di file system lebih cepat diakses
ketimbang ditaruh di database, apa yang saya sebut di dua kata di awal alinea 
ini
adalah berdasarkan perasaan. So feel free to shake it.

Biasanya kalau pakai attachment_fu (kelanjutan dari acts_as_attachment, kalau
tidak mau pakai flex, ataupun uploadan bikinan sendiri ala toombilanya niwatori
ataupun sharingfoto.com si aria maupun hasil modifikasi comot-comot skrip 
tulisan
si tobi), di suatu project yang pernah saya kerjakan, ketika user upload file
image maka aplikasi saya memecah/membagi menjadi 3 bagian, asli, ukuran 500-an
piksel, dan ukuran thumbnail (75-an piksel), itu saya taruh ke filesystem,
hubungannya dengan database taruh id saja, jadi ketika pakai ActiveRecord untuk
hapus id tertentu otomatis filenya (tiga-tiganya) juga ikut terhapus.

> Dengan begitu data tetap
> di satu tempat, dan network traffic dan database load tidak tinggi.

Yang saya pernah lihat malah ada di server pakai NFS segala (jujur saya belum 
tau
banyak sampai detil2nya sih, intinya dikasihtau kalau untuk direktori image 
bahkan
pakai di-mount dulu (dipisah-pisah) supaya tidak memberatkan kinerja satu mesin
skrip yg sedang bekerja). Kenapa bisa disebut data tetap di satu tetap sehingga
load tidak tinggi? Bukankah justru malah jadi lebih tinggi?

>> * Write tables to cache data for reports that span months and
>> years. It.s much faster than re-generating a year.s worth of reports
>> every time a page is loaded.
> 
> Data yang sudah tua mungkin juga bisa dipindahkan ke archive database.

Ehm, ini dia fitur mantap. Sudah pernah terpikir gak ya tentang desain business
process-nya, mis. untuk project CMS aja misalkan, untuk data yang tua, mis. 
sudah
berusia 2 sampai 3 tahun lalu, itu digenerate otomatis ke HTML biasa (dengan 
tetap
mempertahankan kemampuan easy search dan dapat secara akurat seperti halnya 
pakai
database biasa). itu satu. yang kedua, file image yang sudah tua juga dapat di
archive.

Saya pernah dulu mati-matian memikirkan desain business processnya tapi gak
berhasil, jadi masih pakai cara-cara konvensional (tidak sampai secanggih yang
saya sebutkan idenya kayak di paragraf diatas sebelum ini).

Gimana? Ada yang mau kasih idea? Utak-atik XML? read-write serta optimasi di
server pakai bahasa "dewa" tertentu? langsung jadi static HTML? (hubungannya
dengan masih bisa di search?). Go ahead.

> Yang Arie maksud mungkin adalah bytea atau large object. pgsql's array
> type tidak berhubungan dengan blob data.

Nah, makasih sudah diperjelas, memang begitu maksudnya. Jadi ada bahkan trik 
yang
dipakai di typo blog buatan tobi itu dia punya text field yang isinya di ruby
marshall sama berhubung isi field bertipe text tersebut merupakan config yang
besar (large object).

-- 
Arie | http://www.linkedin.com/in/ariekeren
http://ariekusumaatmaja.wordpress.com | http://groups.yahoo.com/groups/id-ruby
Never say RTFM. Turn the trolls into committers (Audrey Tang, conisli-ofun.pdf)




Kirim email ke