LambdaDB
In memory database that uses filters to get the data you need.
Can be used for your needs by changing the models.go file to your needs.
Creating and registering of the functionality that is needed.
Example
LambdaDB loaded with dataset from imdb at around 7 million items.
Frontend of LambdaDB shows the database in action.
Steps
You can start the database with only a csv.
Go over steps below, And see the result in your browser.
python3 extras/create_model.py -f <path_to_file> ../model.go
- go fmt
- go build
- ./lambdadb --help
- python3 extras/ingestion.py -f <path_to_file>
- curl 127.0.0.1:8128/help/
- browser http://127.0.0.1:8128/
- examples curl 127.0.0.1:8128/help/ | python3 -m json.tool
Create Snapshot
http://127.0.0.1:8128/mgmt/save
Load Snapshot
http://127.0.0.1:8128/mgmt/load
Use index
Currently the index is on all the columns.
To run the index start lambdadb with indexed.
Create a snapshot of the current data compressed.
http://127.0.0.1:8128/mgmt/save/bytesz
./lambda_db -indexed
http://127.0.0.1:8128/mgmt/load/bytesz
Run
sudo docker-compose up --no-deps --build
promql {instance="lambdadb:8000"}
python3 extras/ingestion.py -f movies_subset.tsv -format tsv -dbhost 127.0.0.1:8000