Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pdr0alva/data-plusplus
This is a simple embedded database written purely in C++. (plus analysis performance) :D
https://github.com/pdr0alva/data-plusplus
cpp-library cpp-programming database performance-analysis
Last synced: about 1 month ago
JSON representation
This is a simple embedded database written purely in C++. (plus analysis performance) :D
- Host: GitHub
- URL: https://github.com/pdr0alva/data-plusplus
- Owner: pdr0alva
- Created: 2024-11-06T03:30:57.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-11-06T04:12:16.000Z (2 months ago)
- Last Synced: 2024-11-06T04:31:57.428Z (2 months ago)
- Topics: cpp-library, cpp-programming, database, performance-analysis
- Language: C++
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Data PlusPlus
#### A Lightweight Embedded Database for C++ Developers
Data PlusPlus is designed to be a simple, efficient embedded database for C++ applications, offering essential data storage without the overhead of complex database management systems like MySQL.
The idea originated from the need to analyze backtracking performance in a word iterator program. Setting up a full SQL database seemed excessive for this purpose, so I initially created a lightweight module to save timing data directly to a file.
This approach inspired Data PlusPlus: a minimalistic, high-performance tool that allows C++ developers to store and retrieve data directly within their applications, making it ideal for projects that prioritize speed and simplicity.
Data PlusPlus is both easy to integrate and highly performant, providing C++ developers a straightforward data solution without compromising reliability.
---
#### Showcase of it's power
You can create a entire file structure to store N tables with M columns with this snippet:
```cpp
#include "data-plusplus.h"int main (void)
{
TableFile tf("file_name");
TableHeader th("My Table");
TableRowType twtype;th.inputNewColumn("id", "INT32");
th.inputNewColumn("username", "char[30]");
th.inputNewColumn("password", "HASH"); // create a automatic hash columntf.createFile();
tf.associateHeader(th);twtype.associateHeader(th);
twtype[0] = 0;
twtype[1] = "pdr0alva";
twtype[2] = "generic";tf.inputData(twtype);
return 0;
}
```