CBS and SQL Projects Develop Cloud and Server Options for SQLite

SQLite developers have recently developed an experimental VFS module called CBS (Cloud Backed SQLite), which enables users to store database containers not in a local file, but in an external cloud storage. This new feature utilizes a base format optimized for external storage, allowing for dynamic loading of data as needed, without the need for copying the entire database to the local system. Currently, CBS supports Azure Blob Storage and Google Cloud Storage. Furthermore, any applications that support regular SQLite can transition to using CBS. [source]

The VFS module operates in both background and active modes. In the background mode, the system performs a continuous background process that only allows external database access in read mode, while simultaneously supporting a common cache that multiple processes can access together. Conversely, in active mode, both reading and writing are permitted, but only the local cache of the current process is used. Notably, when a client performs a write operation, other clients will not see the changes until they explicitly request them from the cloud storage. To manage different write requests, the standard SQLite blocking system based on WALLS is utilized.

The developers have also provided an expanded API and command line interface that facilitate various operations such as creating and cleaning the external storage, loading and unloading databases from external storage, creating database copies on external repositories, viewing a list of databases in cloud storage, and removing unused blocks from cloud storage.

In another development, the developers of the LIBSQL project have announced the server version of SQLite known as sqld. This server version allows for the operation of a shared DBMS, which is achieved through the use of the postgreSQL protocol or HTTP. Users can connect to SQLD using existing client libraries created for the PostgreSQL DBMS, and web applications can also integrate with the SQL server using the API based on the HTTP protocol. The SQLD code is written in Rust and is distributed under the MIT license. [source]

SQLD finds application in various areas, including backup, replication to other systems, and providing access to SQLite databases in supportless infrastructures where permanent storage is absent. In such systems, the database that SQLD works with can be replicated from other servers. Additionally, to ensure high availability and fault tolerance, integration with mvsqlite is maintained. [source]

/Reports, release notes, official announcements.