Tech: Kaedah Menyimpan Dokumen Yang Dimuat Naik

working-with-macbook

Kadang kala sesebuah sistem memerlukan pengguna sistem untuk memuat naik fail ke atas sistem dan terpulanglah kepada sistem untuk menyimpannya. Cuma kaedah penyimpanan yang tidak betul akan menyebabkan masalah di kemudian hari terutamanya jangka panjang.

Kaedah penyimpanan dokumen yang aku selalu gunakan adalah kaedah fizikal bukannya disimpan di dalam pangkalan data dalam bentuk blob. Kerana daripada pendapat aku kaedah penyimpanan data binari ke dalam pangkalan data adalah akan amat menyukarkan proses maintenance sistem.

Seperti yang telah diterangkan semalam, terdapat had jumlah tertentu kepada direktori dan selalunya pembangun akan menyimpan fail dengan kaedah memasukkan semua fail di dalam satu folder sahaja sebagai contoh, uploads. Di dalamnya diletakkan semua fail yang dimuat naik oleh pengguna. Aku tak kata salah tetapi seperti yang telah dikatakan, dalam jangka panjang kemungkinan untuk berlaku had jumlah fail dan juga kemerosotan sistem akan dapat dilihat.

Kaedah cadangan:

Kaedah WordPress

Kaedah ini dapat dilihat sebagai contoh di dalam WordPress yang lama. Sebagai contoh apabila pengguna memuat naik dokumen pada tarikh 1 Februari 2018, dokumen tersebut akan disimpan di dalam folder atau direktori uploads/2018/02.

Kaedah WordPress v2

Kaedah ini dilihat akan agak bagus tetapi apabila WordPress semakin besar dan mampu untuk menjalankan pelbagai fungsi yang lebih besar seperti forum, mereka mula menambahkan satu direktori tambahan yang aku kira diambil daripada masa tetapi kurang pasti bagaimana dijana menjadikan direktori sekarang adalah uploads/2018/02/23195137.

Untuk yang berminat menggunakan kaedah ini, aku cadangkan tukar yang belakang tersebut kepada hari pun sudah mencukupi untuk menjadikan direktori baru adalah uploads/2018/02/23.

Kaedah #3

Ini bukanlah kaedah WordPress gunakan tetapi adakalanya direktori tersebut terlalu mudah diteka terutamanya jika anda memerlukan orang tidak boleh meneka fail untuk mengelakkan scrapper mengambil data tersebut. Untuk itu anda memerlukan sesuatu untuk menjadikannya tidak dalam bentuk yang sekata seperti contoh menggunakan md5 untuk menukarkan 2018-02-23 menjadi fea973e5744c3539cb094a9c1f5186e5 dan dengan hanya mengambil 6 perkataan pertama pun sudah cukup memastikan cukup unik. Menjadikan direktori baru anda adalah uploads/2018/fea973. Aku cadangkan md5 sebab laju dan tidak membebankan sistem. Ataupun boleh gunakan kaedah lebih standard seperti UUID.

Kaedah #4

Atau jika di dalam satu permohonan terdapat lebih daripada satu dokumen yang perlu diupload anda juga boleh mengumpulkan dokumen kepada permohonan tersebut secara terus. Sebagai contoh permohonan yang mempunyai id:234 daripada pengguna yang mempunyai id:14 pada tarikh 2018-02-23 kita boleh menukarkan data tersebut kepada:

Nama Data md5
id pengguna 14 aab3238922bcc25a6f606eb525ffdc56
id permohonan + tarikh 234-2018-02-23 83fb5b06f87833c336ac45566987478f

Direktori baharu kita adalah uploads/aab323/83fb5b dan apabila pengguna tersebut membuat permohonan yang lain pula direktorinya untuk kali ini akan menjadi contohnya uploads/aab323/te2311 dengan semua dokumen yang dimuat naik oleh pengguna tersebut dalam apa jua aplikasi adalah berapa di dalam direktori uploads/aab323.

Kesimpulan

Terdapat terlalu banyak cara untuk menyimpan data dan contoh yang diberikan hanyalah sekadar cadangan dan lontaran idea sahaja. Anda boleh gunakan cara anda sendiri.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.