# LiteIndex
Embedded, thread and process safe, disk backed, easy to use, query-able, fast Index (Cache) implementations
```python
pip install --upgrade liteindex[all]
```
### DefinedIndex
- [Documentation](https://github.com/notAI-tech/LiteIndex/blob/main/DefinedIndex.md) | [Detailed example](https://github.com/notAI-tech/LiteIndex/blob/main/examples/defined_index_example.py) | [Benchmarks](https://github.com/notAI-tech/LiteIndex/tree/main/benchmarks/DefinedIndex)
- fixed schema index i.e: schema has to be defined before hand
- `number`, `boolean`, `datetime`, `string`, `compressed_string`, `blob`, `json`, `normalized_embedding`, and `other` types are supported and `can be queried upon`
- can store any python objects with varying levels of query-ability
- `Query language is subset of mongodb's`. All queries are documented
- seamless, very fast nearest neighbor search with filtering. can order by, filter by as usual with embeddings
- works across threads, processes seamlessly
- handy features like search and update in single query, batch operation support for update, search, del, pop etc ..
- in-place math operations support wherever applicable i.e: += etc can be done in single query optimally
- compression is supported natively and optional custom compression dictionaries can be built automatically
### KVIndex
- [Documentation](https://github.com/notAI-tech/LiteIndex/blob/main/KVIndex.md) | [Detailed example](https://github.com/notAI-tech/LiteIndex/blob/main/examples/defined_index_example.py) | [Benchmarks](https://github.com/notAI-tech/LiteIndex/tree/main/benchmarks/DefinedIndex)
- simple key value store, can store any python objects, can be queried for equality, sorting, max, min etc wherever applicable
- in-place math operations support wherever applicable i.e: += etc can be done in single query optimally
- has a python dict like interface
- batch operation support for update, search, del, pop etc ..
- ultra fast, works across threads, processes seamlessly
- Eviction policies supported: `LRU`, `LFU`, `any` and age based invalidation and size, count based eviction
### function_cache
- [Documentation](https://github.com/notAI-tech/LiteIndex/blob/main/function_cache.md) | [Detailed example](https://github.com/notAI-tech/LiteIndex/blob/main/examples/function_cache_example.py) | [Benchmarks](https://github.com/notAI-tech/LiteIndex/tree/main/benchmarks/function_cache)
- based on KVIndex, can be used to cache function calls of any type
- batch inference caching friendly
Raw data
{
"_id": null,
"home_page": "https://github.com/notAI-tech/liteindex",
"name": "liteindex",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6.0",
"maintainer_email": null,
"keywords": null,
"author": "BEDAPUDI PRANEETH",
"author_email": "praneeth@bpraneeth.com",
"download_url": "https://files.pythonhosted.org/packages/98/73/ef4cc05278fe6c167d2163e549232fa2ee026cafdb92828f14827ecc6462/liteindex-0.0.3.3.tar.gz",
"platform": null,
"description": "\n# LiteIndex\nEmbedded, thread and process safe, disk backed, easy to use, query-able, fast Index (Cache) implementations\n\n```python\npip install --upgrade liteindex[all]\n```\n\n### DefinedIndex\n- [Documentation](https://github.com/notAI-tech/LiteIndex/blob/main/DefinedIndex.md) | [Detailed example](https://github.com/notAI-tech/LiteIndex/blob/main/examples/defined_index_example.py) | [Benchmarks](https://github.com/notAI-tech/LiteIndex/tree/main/benchmarks/DefinedIndex)\n- fixed schema index i.e: schema has to be defined before hand\n- `number`, `boolean`, `datetime`, `string`, `compressed_string`, `blob`, `json`, `normalized_embedding`, and `other` types are supported and `can be queried upon`\n- can store any python objects with varying levels of query-ability\n- `Query language is subset of mongodb's`. All queries are documented\n- seamless, very fast nearest neighbor search with filtering. can order by, filter by as usual with embeddings\n- works across threads, processes seamlessly\n- handy features like search and update in single query, batch operation support for update, search, del, pop etc ..\n- in-place math operations support wherever applicable i.e: += etc can be done in single query optimally\n- compression is supported natively and optional custom compression dictionaries can be built automatically\n\n### KVIndex\n- [Documentation](https://github.com/notAI-tech/LiteIndex/blob/main/KVIndex.md) | [Detailed example](https://github.com/notAI-tech/LiteIndex/blob/main/examples/defined_index_example.py) | [Benchmarks](https://github.com/notAI-tech/LiteIndex/tree/main/benchmarks/DefinedIndex)\n- simple key value store, can store any python objects, can be queried for equality, sorting, max, min etc wherever applicable\n- in-place math operations support wherever applicable i.e: += etc can be done in single query optimally\n- has a python dict like interface\n- batch operation support for update, search, del, pop etc ..\n- ultra fast, works across threads, processes seamlessly\n- Eviction policies supported: `LRU`, `LFU`, `any` and age based invalidation and size, count based eviction\n\n### function_cache\n- [Documentation](https://github.com/notAI-tech/LiteIndex/blob/main/function_cache.md) | [Detailed example](https://github.com/notAI-tech/LiteIndex/blob/main/examples/function_cache_example.py) | [Benchmarks](https://github.com/notAI-tech/LiteIndex/tree/main/benchmarks/function_cache)\n- based on KVIndex, can be used to cache function calls of any type\n- batch inference caching friendly\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "SQLite based queryable python indexes for dicts and lists",
"version": "0.0.3.3",
"project_urls": {
"Homepage": "https://github.com/notAI-tech/liteindex"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "97b97ab86d55be14812f7c414ae273653af4b95a781288bd3a8543ff9b45b55e",
"md5": "799ab74e600a2c0842eb27c3b5c0a58d",
"sha256": "d1f9d384eb84cdca72ee1834ceac9d5d5b2fa12ecd0662d2b32d48f650a75ad4"
},
"downloads": -1,
"filename": "liteindex-0.0.3.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "799ab74e600a2c0842eb27c3b5c0a58d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 23298,
"upload_time": "2024-12-10T04:30:43",
"upload_time_iso_8601": "2024-12-10T04:30:43.967872Z",
"url": "https://files.pythonhosted.org/packages/97/b9/7ab86d55be14812f7c414ae273653af4b95a781288bd3a8543ff9b45b55e/liteindex-0.0.3.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9873ef4cc05278fe6c167d2163e549232fa2ee026cafdb92828f14827ecc6462",
"md5": "17219d98666719fde763a8cc3a73ae66",
"sha256": "81ee7179c83e45d4ad7eae592a02dc65cfa88b589d27f67dc3999a7538eb0015"
},
"downloads": -1,
"filename": "liteindex-0.0.3.3.tar.gz",
"has_sig": false,
"md5_digest": "17219d98666719fde763a8cc3a73ae66",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 24796,
"upload_time": "2024-12-10T04:30:46",
"upload_time_iso_8601": "2024-12-10T04:30:46.792832Z",
"url": "https://files.pythonhosted.org/packages/98/73/ef4cc05278fe6c167d2163e549232fa2ee026cafdb92828f14827ecc6462/liteindex-0.0.3.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-10 04:30:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "notAI-tech",
"github_project": "liteindex",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "liteindex"
}