Project

General

Profile

Actions

Feature #49340

open

libcephfssqlite: library for sqlite interface to CephFS

Added by Patrick Donnelly about 3 years ago. Updated almost 2 years ago.

Status:
In Progress
Priority:
High
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Development
Tags:
Backport:
Reviewed:
Affected Versions:
Component(FS):
Labels (FS):
task(intern), task(medium)
Pull request ID:

Description

This library, libcephfssqlite, should add a "cephfs" VFS for SQLite3 similar to the "ceph" VFS added in #40609. The difference is that the "ceph" VFS stripes a SQLite3 database over raw RADOS objects while the "cephfs" VFS will use CephFS to store the database as a regular file.

One might wonder why we want this VFS when you could just mount CephFS (via the kernel driver or FUSE) and then manipulate a SQLite3 database normally as a regular file on the file system. The main reason is to avoid mounting CephFS at all. For example, in the ceph-mgr, it would be convenient to store a SQLite3 database in CephFS but the ceph-mgr never runs with CephFS mounted on the system like a normal client. Instead, the mgr/volumes plugin uses the CephFS python binding to manipulate subvolumes; and so, the addition of SQLite3 on CephFS would allow the ceph-mgr to store metadata more naturally without relying on text based formats for the subvolume metadata.

This library should use the "Client" internal library in Ceph (src/client) and not the libcephfs external library. See the "ceph" VFS in #40609 as a template.


Related issues 1 (0 open1 closed)

Related to Ceph - Feature #40609: libcephsqlite: library for sqlite interface to cephResolvedPatrick Donnelly

Actions
Actions

Also available in: Atom PDF