Client Database

Client Application Databases


  • "File Meta": A SQLite database that contains the main file hierarchy. It is designed to keep a low memory footprint even when importing GB of file metadata.
  • "Message Journal": A SQLite database that contains a cached copy of Puddler requests and responses from the cloud drive.

File Meta Tables

Name Purpose
Drives References to any drives that this client application is tracking.
Generations Non-essential table that tracks scans performed on the host and some statistics
Folders A hierarchy of folders and folder-specific attribute/ownership information. This also contains a sorting key that helps import file streams efficiently.
Files A table of all the files and a flexible set of classification columns backed by indexes to help performance
Tags This is a collection of tags that have been applied to files and folders in the database.

File Journal Tables

Name Purpose
Drives This is a list of all the drives connected to this instance of Puddler.
Puddles Puddles are the building blocks of messaging within Puddler, allowing messages to be sent and received via files and folders. Each puddle represents a request, a response, or an event stream. Requests can be sent either to or from the owner of a "Drive," and responses will be reversed accordingly. There are also other details that allow for flexibility when addressing requests.
Items Journal Items refer to elements within a Puddle. Each request or response must contain a primary JSON item but can also carry any number of additional files to efficiently transmit information. The item rows track the service status of processing this data.

Comments