2

Kapan sebaiknya menggunakan SQLite

Senin, 1 Maret 2010. Kategori : WebQR Code

Sudah beberapa bulan terakhir ini blog gw memakai SQLite sebagai database utama, sampai detik ini rasanya sama persis seperti memakai MySQL. Jadi gw mau bagi pengalaman, kapan sih sebaiknya kita memilih SQLite daripada MySQL atau database berbasis server lainnya. (Dalam artikel ini gw membandingkan SQLite2 dengan MySQL5 disistem operasi Linux yang telah terinstall PHP5).

Saat mendevelop web basis PHP yang baru

Database umumnya dipilih sebagai media penyimpanan data bila dibandingkan dengan file teks (murni teks atau format xml), kenapa? Karena lebih mudah codingnya! Haha.. Ngga juga sih, yang jelas lebih enak dilihat jika memakai perintah SQL dibanding perintah PHP untuk penyimpanan data (menurut gw).
Lalu, pertanyaan utamanya adalah Kenapa SQLite?
Ada banyak jawaban sebenarnya, tapi kita pilih yang paling menarik :

  1. SQLite menggunakan tipe data typeless
  2. SQLite tidak perlu diinstall
  3. SQLite, namanya aja mengandung SQL, menggunakan perintah SQL standar

Kita perjelas masing-masih jawaban diatas, yang pertama SQLite menggunakan tipe data typeless. Apa maksudnya? Maksudnya adalah SQLite tidak peduli apakah data yang kita masukkan berupa integer, boolean, ataupun varchar. Semuanya diterima walaupun kita mendefinisikannya sebagai tipe data tertentu. Pengecualian untuk primary key yang hanya menerima data integer.
Fitur ini sangat membantu apabila kita belum pasti ingin memakai tipe data yang mana, tentunya menghemat waktu juga kan? Tidak perlu repot memikirkan tipe data yang tepat.

Lalu jawaban kedua yaitu SQLite tidak perlu diinstall merupakan alasan utama kenapa kita memilih SQLite. Pernah melihat jumlah database didalam MySQL yang kita buat saat mendevelop web? Kalau gw sampai bingung yang mana punya siapa.. Haha..
Selain itu apabila kita sering berpindah server, misalnya dari laptop ke desktop lalu pindah lagi ke internet (production server) sudah berapa kali kita menyeting database? Iya kalau tidak ada masalah, kalau ternyata desktop tidak terinstall MySQL bagaimana? Atau ternyata kita lupa user dan password MySQL.. Buang waktu lagi untuk menyeting MySQL. Repot euy!
Tapi dengan SQLite cukup copy-paste, selesai!

SQLite menggunakan perintah SQL standar, tidak perlu dijelaskan panjang lebar, yang jelas kita dengan mudah berpindah ke MySQL tanpa (banyak) perubahan.

Jika website yang kita buat hanya dikunjungi maksimal 100,000 IP unik perhari

100,000 per hari? Mayoritas website (khususnya blog) kunjungan perharinya kurang dari angka itu.. Jadi? SQLite aman untuk dipakai harian..
Satu kelemahan SQLite yang terkait dengan jumlah pengunjung adalah SQLite tidak dapat membaca (SELECT) jika sedang menulis (INSERT) secara bersamaan (ingat, SQLite berbasis file). Jadi proses penulisan lebih diutamakan daripada pembacaan, walaupun begitu proses penulisan hanya berlangsung sepersekian detik, yang pada prakteknya hal ini bukan masalah besar.

Jika memori (ram) terbatas

SQLite berbasis file dan termasuk bawaan PHP5 (dengan konfigurasi —with-sqlite), jadi tidak perlu lagi kita menginstall aplikasi ataupun library SQLite untuk memakainya dalam PHP5.
Berbeda dengan MySQL yang menunggu di memori dan membutuhkan port tersendiri, SQLite bersifat pakai dan lupakan jadi, kita tidak direpotkan dengan setingan khusus bagi database.

Data yang tersimpan kurang dari 2TB (TeraByte)

2TB = 2000 GB.. Hmm.. Lebih dari cukup untuk menampung segala data blog (database SQLite yang gw punya sampai detik ini kurang dari 200KB, termasuk beberapa komentar SPAM).

Hmm, gw rasa beberapa alasan diatas cukup meyakinkan kenapa kita sebaiknya memilih SQLite dibanding MySQL. Tapi tunggu dulu, artikel ini belum selesai.. Akan ada lanjutan kenapa sebaiknya kita menghindari SQLite.

2 Komentar

Tulis Komentar