Skip to content
Snippets Groups Projects
Commit 3e2e6528 authored by Vincent Texier's avatar Vincent Texier
Browse files

Remove database implementation chapter

parent b2dfce26
No related branches found
No related tags found
1 merge request!3WIP: RFC 3 : GraphQL API for Duniter Client
...@@ -339,33 +339,6 @@ Variables: ...@@ -339,33 +339,6 @@ Variables:
## Duniter Server module ## Duniter Server module
The GraphQL API is added on the server as a Duniter module. The GraphQL API is added on the server as a Duniter module.
As this module add cpu and network charge on the Duniter node, it is optional.
### New NoSQL Database
The good practice to handle data in databases, is:
- To use **relational database** to **write normalized data** (very fast to update an entity as entities are in separate tables).
- To use **document database (NoSQL database)** to **request denormalized data** (very fast as all entities information are agregated in one document).
So the module will:
- **Write normalized data** in the Duniter database as usual.
- **Write denormalized json documents** in a dedicated document database.
- **Search/Request denormalized json documents** from the dedicated document database.
We need to create a new database, handling **denormalized json documents** (NoSQL Database).
Since version 3.9, **Sqlite3** has an extension (**json1**) to handle json documents:
https://sqlite.org/json1.html
http://charlesleifer.com/blog/using-the-sqlite-json1-and-fts5-extensions-with-python/
So we don't need another database software dependency.
The module will create another Sqlite3 file `gva_documents.db` to keep things well separated.
### ENDPOINTS format ### ENDPOINTS format
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment