https://github.com/capjamesg/swiftbitcask
An implementation of the BitCask algorithm in Python.
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.0%) to scientific vocabulary
Repository
An implementation of the BitCask algorithm in Python.
Basic Info
- Host: GitHub
- Owner: capjamesg
- License: mit
- Language: Python
- Default Branch: main
- Size: 4.88 KB
Statistics
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
swiftbitcask
An implementation of the BitCask algorithm in Python.
BitCask is an append-only key value store.
Every time you run BitCask, a new append-only file is created. An in-memory data structure keeps track of the most recent value for each key in the key-value store.
The append-only file is used to append records until either your script finishes running or you close a cask. When you close a cask, a merge operation is performed to merge all cask files into one.
Installation
You can only install swiftbitcask from source.
To install swiftbitcask, run:
git clone https://github.com/capjamesg/swiftbitcask
cd swiftbitcask
pip3 install -e .
Quickstart
With swiftbitcask, you can:
- Create a cask
- Add items to a cask
- Retrieve items from a cask
- Remove items from a cask
- Close a data store
Create a cask
```python from swiftbitcask import SwiftCask
cask = SwiftCask("example") ```
Add items to a cask
python
cask.put("name", "james")
Retrieve items from a cask
python
cask.get("name")
Remove items from a cask
python
cask.delete("name")
Close a cask
When you close a cask, you must re-open a new cask using the Create a cask instructions above. Closed casks cannot be modified without being explicitly re-opened.
python
cask.close()
License
This project is licensed under an MIT license.
Owner
- Name: James
- Login: capjamesg
- Kind: user
- Location: Scotland
- Company: @Roboflow
- Website: jamesg.blog
- Repositories: 320
- Profile: https://github.com/capjamesg
from words, wonder.
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0