Usare UnQLite in Python
Non ero minimamente a conoscenza dell'esistenza di un embedded-database di tipo NoSQL, e devo dire che l'ho trovato molto interessante: UnQLite!
Può essere usato sia come db key:value che come document store.
Oggi vediamo un esempio del suo utilizzo in Pyhon!
Prima di tutto installiamo la libreria con pip:
# pip install unqlite
Verrà installato ance cython (in quanto il db è scritto interamente in C++ se ho capito bene).
Possiamo creare sia db in memory che db persistenti su file; la differenza sta nel parametro che passiamo all'oggetto UnQLite:
from unqlite import UnQLite
db = UnQLite()
db = UnQLite('/home/matte/Desktop/test.db')
Scegliete voi quale usare in base a quello che vi serve.
Questo un esempio di db di tipo key:value:
from unqlite import UnQLite
db = UnQLite('/home/matte/Desktop/test.db')
db['foo'] = 'bar'
print(db['foo'])
db.close()
Qui invece un esempio di document store:
from unqlite import UnQLite
db = UnQLite('/home/matte/Desktop/test.db')
users = db.collection('users')
users.create()
print(users.exists())
users.store([
{'name': 'matteo', 'age': 33},
{'name': 'federica', 'age': 40},
{'name': 'marco', 'age': 60}]
)
print(users.all())
print(users.fetch(1))
print(users.filter(lambda obj: obj['name'].startswith('m')))
db.close()
Trovo veramente molto interessante la possibilità di avere un db NoSQL di tipo embedded; tanto che mi metterò alla ricerca di supporto per altri linguaggi (oltre Python e C++).
Enjoy!
python unqlite nosql database pip
Commentami!