Daftar Isi
Perjalanan rqlite dimulai pada bulan September 2014 ketika sebuah pos dirilis untuk memperkenalkan sistem yang menggabungkan SQLite dengan log Raft. Konsep dasarnya adalah mereplikasi setiap penulisan ke dalam sebuah kluster sehingga hilangnya satu node tidak mengakibatkan hilangnya data.
Dari rqlite hingga dqlite (2014-2017)
Kebutuhan akan basis data relasional berukuran kecil pada sistem terkluster di jut.io melatarbelakangi pembuatan rqlite. Versi perdana rqlite memanfaatkan pustaka goraft sebelum akhirnya beralih ke implementasi Raft milik Hashicorp pada awal tahun 2016. Keputusan desain utama yang diambil sejak awal dan tidak pernah berubah adalah menjadikan rqlite sebagai sistem CP, di mana proses penulisan harus melalui pemimpin dan diakui oleh mayoritas.
Pada periode yang sama, Expensify mereplikasi SQLite secara internal menggunakan protokol ala Paxos dan merilisnya sebagai Bedrock pada 2016. Selain itu, hadir pula ActorDB yang menerapkan SQLite dengan replikasi Raft untuk setiap aktor. Selanjutnya pada 2017, Canonical mengembangkan dqlite untuk menyediakan penyimpanan terreplika yang tertanam di dalam LXD dan MicroK8s tanpa harus menjalankan etcd.
Munculnya Litestream dan Pendekatan Baru (2021)
Ben Johnson meluncurkan Litestream pada awal tahun 2021 dengan pendekatan tanpa konsensus. Litestream memantau WAL SQLite dan melakukan streaming ke S3 guna pemulihan bencana untuk basis data SQLite tunggal dengan biaya yang sangat rendah. Argumen di balik pendekatan ini adalah sebagian besar aplikasi hanya membutuhkan satu mesin dan cara pemulihan ketika terjadi kegagalan.
Fly.io kemudian merekrut Ben pada 2022 dan merilis LiteFS untuk mereplikasi SQLite di tingkat sistem file menggunakan sewa dari Consul. Pendekatan ini menjadikan SQLite terreplika sebagai fitur platform alih-alih perangkat lunak yang harus dikerahkan secara mandiri.
Percabangan, Ekstensi, dan Platform (2022 dan Seterusnya)
Tahun 2022 membawa pendekatan baru melalui cr-sqlite yang menambahkan CRDT ke SQLite sebagai ekstensi agar banyak penulis dapat berbeda dan bergabung tanpa pemimpin. Pada saat yang sama, libSQL melakukan *fork* pada SQLite untuk mengubah komponen di dalam mesinnya, yang kemudian mendirikan Turso dan diakuisisi oleh Supabase pada 2026. SQLite Cloud juga hadir menawarkan SQLite terhost yang direplikasi menggunakan Raft.
Perkembangan berlanjut ke ranah platform ketika Cloudflare mengumumkan D1 pada 2022 sebagai basis data serverless di jaringan tepi mereka, diikuti oleh penyimpanan SQLite di dalam Durable Objects. Layanan Turso mengadopsi bentuk serupa, yang menandai pergeseran kategori dari perangkat lunak yang dijalankan sendiri menjadi produk yang dibeli.
Selama dua belas tahun perkembangannya, inti dari penyimpanan SQLite dengan replikasi eksternal terus diulang oleh setidaknya delapan tim berbeda. Ruang desain terbagi menjadi tiga sudut yaitu konsensus, streaming, dan penggabungan, sementara pendanaan mengalir ke platform yang mengubah SQLite terreplika menjadi layanan bernilai komersial. Hingga kini, rqlite tetap bertahan sebagai basis data relasional yang toleran terhadap kesalahan dan dapat dijalankan secara mandiri.
Sumber: Hacker News: Front Page






