The device-storelibrary-cpp Stream Store and KV Store encapsulate best practices for reliable data persistence including handling all types of data corruption that happens to edge devices.
The database also provides simple primitives enabling reliable data upload by offering persistent iterators to track what is successfully uploaded or not.
Getting Started
Requirements
Linux (Windows is not yet supported)
Install CMake and the relevant build tools for your platform. Ensure these are available in your executable path.
Using the Device Store Library
Example usage of Stream Store and KV Store can be found here
Building the Device Store Library
Building from source
Clone this repository git clone https://github.com/aws/device-storelibrary-cpp.git
Create your build directory. Replace <BUILD_DIR> with your build directory name
Build the project where <BUILD_TYPE> can be Debug, RelWithDebInfo, or Release:
Add the following single line to your CMakeLists.txt which points to the library on GitHub along with a commit ID, tag, or branch name (More CPM information can be found here).
CPMAddPackage(
NAME device-storelibrary-cpp
VERSION 1.0.0
GITHUB_REPOSITORY aws/device-storelibrary-cpp
)
Consume Library as a Git Submodule
Add this repository as a submodule in your project git submodule add https://github.com/aws/device-storelibrary-cpp.git
device-storelibrary-cpp
The device-storelibrary-cpp Stream Store and KV Store encapsulate best practices for reliable data persistence including handling all types of data corruption that happens to edge devices. The database also provides simple primitives enabling reliable data upload by offering persistent iterators to track what is successfully uploaded or not.
Getting Started
Requirements
Using the Device Store Library
Example usage of Stream Store and KV Store can be found here
Building the Device Store Library
Building from source
git clone https://github.com/aws/device-storelibrary-cpp.git<BUILD_DIR>with your build directory name<BUILD_TYPE>can beDebug,RelWithDebInfo, orRelease:Consume Library using CPM
CMakeLists.txtwhich points to the library on GitHub along with a commit ID, tag, or branch name (More CPM information can be found here).Consume Library as a Git Submodule
git submodule add https://github.com/aws/device-storelibrary-cpp.gitSecurity
See CONTRIBUTING for more information.
License
This project is licensed under the Apache-2.0 License.