Menggantikan Pangkalan Data Aplikasi Saya dengan Folder Google Drive

Saya ingin menjejaki kemajuan muzik anak perempuan saya. Dia menerima klip audio dan nota daripada gurunya setiap minggu. Saya ingin mendengar sesi latihannya dari semasa ke semasa. Saya tidak mahu rakaman baharu menindih (overwrite) rakaman lama.

Saya membina sebuah aplikasi untuk menyelesaikan masalah ini. Ia tidak mempunyai backend. Ia tidak mempunyai pangkalan data. Kosnya adalah sifar dolar.

Kebanyakan pembangun terlepas pandang satu ciri dalam Google Drive. Ia adalah sejarah semakan (revision history).

Apabila anda memuat naik versi baharu bagi fail dengan nama dan ID yang sama, Drive akan menyimpan versi lama tersebut. Ia kekal dengan cap masa dan boleh dilayari.

Daripada membina pangkalan data yang kompleks dengan jadual dan kunci asing (foreign keys), saya hanya menindih (overwrite) fail tersebut. Drive mengendalikan pengurusan versi (versioning). Aplikasi saya menggunakan dua panggilan API untuk menunjukkan sejarah tersebut. Saya tidak menulis sebarang logik pengurusan versi.

Struktur folder bertindak sebagai skema pangkalan data saya:

• Setiap lagu mempunyai foldernya sendiri. • Fail menggunakan awalan seperti teacher-audio atau student-practice. • Saya tidak menggunakan JSON untuk menerangkan struktur tersebut. • Menambah folder baharu akan mengemas kini aplikasi secara automatik.

Saya juga memerlukan cara untuk melabel (tag) lagu. Saya tidak menggunakan fail JSON untuk tujuan ini. Saya menggunakan metadata properties Drive. Anda boleh menambah pasangan kunci-nilai (key-value pairs) secara terus ke dalam folder. Ini memastikan segalanya dalam satu panggilan API sahaja.

Tetapan:

• Hosting: GitHub Pages (Percuma) • Auth: Google Identity Services (Hanya bahagian klien) • Storage: Google Drive • Database: Tiada. Struktur folder adalah modelnya. • Jumlah kos: $0.

Satu tip: Drive akan memadamkan semakan lama selepas 30 hari. Anda mesti menetapkan flag keepRevisionForever untuk menyimpannya.

Ini bukan produk untuk orang awam. Ia adalah alat peribadi untuk keluarga saya.

Matlamatnya bukan sekadar untuk menjimatkan wang. Matlamatnya adalah untuk memastikan bahawa dalam masa dua tahun, saya boleh menekan satu butang dan mendengar bagaimana bunyi suara anak perempuan saya hari ini. Seni bina (architecture) ini menjadikannya mungkin tanpa penyelenggaraan tambahan.

Pernahkah anda menggunakan sejarah semakan atau medan properties Drive untuk infrastruktur?

Sumber: https://dev.to/vankadn/replaced-my-apps-database-with-my-daughters-google-drive-folder-1455