BD d'étagère

Introduction
Shelf DB est une petite base de données de documents permettant à Python de stocker des documents ou des données de type JSON.
Tu piges
$ pip install shelfdb shelfquery
Démarrer le serveur asyncio
$ shelfdb
Serving on ('127.0.0.1', 17000)
Database : db
pid : 12359
uvloop déjà intégré pour le rendre plus rapide. Voir uvloop.
Client de requête Sync/Async via le réseau.
import shelfquery
# Sync client point to 127.0.0.1:17000
db = shelfquery.db()
# Make it async client
db.asyncio()
# Make it sync client again
db.sync()
Stocker les données
db.shelf('note').insert({
'title' : 'Shelf DB',
'contenu' : 'Note simple',
'datetime' : datetime.utcnow()})
API de requête flexible avec une syntaxe similaire
db.shelf('note')\
.filter(note lambda :
note['title'] == 'Shelf DB')\
.sort(clé=note lambda : note['datetime'])
.Cours()
Pas besoin d'apprendre plus de syntaxe. Examinons simplement en utilisant filter
, slice
, sort
, map
, reduce
qui sont presque identiques aux fonctions intégrées de Python.
Expression régulière
L'expression reqular Python re
peut être utilisée dans la fonction de requête
import re
db.shelf('note')\
.filter(lambda note:
re.match(r'.*DB$', note['title']))\
.run()
Tiny
Le code d'exécution est petit, facile à installer.