# **MelkDB**: Um banco de dados veloz e otimizado
MelkDB é um banco de dados modelo key-value desenvolvido totalmente em Python. Com seu funcionamento bem documentado, O MelkDB é fácil de usar e pode ser instalado facilmente em sistemas operacionais baseados em Linux e no Windows.
1. **Obtenha os dados rapidamente**: Desenvolvido para ser extremamente veloz na escrita e leitura de dados, o MelkDB possui um método eficiente para realizar a busca de items, além de ter um código bem otimizado.
2. **Mantenha seus dados seguros**: O MelkDB oferece a opção de criptografia de dados usando AES-256, protegendo seus dados e mantendo a velocidade ao adicionar e obter items.
3. **Baixo consumo de memória**: Apenas os dados solicitados pelo usuário são carregados na memória, evitando o alto consumo de memória ao realizar operações no banco de dados.
## ⚡ A velocidade do MelkDB
Em testes realizados utilizando um computador com processador **Intel Celeron Dual Core de 2.16GHz** e um SSD, obtemos seguintes dados sobre a velocidade de escrita e leitura:
| Criptografia?| N° de dados | Tempo para adicionar | Tempo para obter |
| ------------ | ------------- | -------------------- | ---------------- |
| Não | 10.000 | 2.6 segundos | 1 segundo |
| Sim | 10.000 | 6.6 segundos | 5.5 segundos |
> Você pode realizar o seu próprio teste de velocidade utilizando o script [speedtest.py](https://github.com/jaedsonpys/melkdb/blob/master/speedtest.py)
## Começando
Para começar a utilizar o MelkDB, você deve possuir a versão `3.6` do Python **ou superior** para conseguir executar o banco de dados sem problemas. Após isso, realiza a instalação utilizando o gerenciador de pacotes PyPI:
```bash
pip install MelkDB
```
Finalizando a instalação, o banco de dados MelkDB já está pronto para ser utilizado. Veja abaixo um simples exemplo de uso:
```python
from melkdb import MelkDB
db = MelkDB('cache')
# adicionando um item
db.add("latest_news", "Conteúdo das últimas notícias")
# atualizando um item
db.update("latest_news", "MelkDB é lançado oficialmente")
# obtendo um item
print(db.get("latest_news"))
# deletando um item
db.delete("latest_news")
```
Veja a [documentação completa](https://github.com/jaedsonpys/melkdb/tree/master/docs) para aprender mais sobre o funcionamento e métodos disponíveis para uso do MelkDB.
## Licença de uso
Este projeto utiliza a **licença MIT**. Por favor, considere [ler o documento LICENSE](https://github.com/jaedsonpys/melkdb/blob/master/LICENSE) para obter mais informações sobre o uso adequado deste projeto!
```
MIT License
Copyright (c) 2024 Jaedson Silva
```
Raw data
{
"_id": null,
"home_page": "https://github.com/jaedsonpys/melkdb",
"name": "melkdb",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "database, noSQL, key-value, db, engine",
"author": "Jaedson Silva",
"author_email": "jaedson.dev@proton.me",
"download_url": "https://files.pythonhosted.org/packages/59/22/aac39c35169ffcd66298244530cb471d9ae7c93bcc5102eebf8022e2bb84/melkdb-0.1.0.tar.gz",
"platform": null,
"description": "# **MelkDB**: Um banco de dados veloz e otimizado\n\nMelkDB \u00e9 um banco de dados modelo key-value desenvolvido totalmente em Python. Com seu funcionamento bem documentado, O MelkDB \u00e9 f\u00e1cil de usar e pode ser instalado facilmente em sistemas operacionais baseados em Linux e no Windows.\n\n1. **Obtenha os dados rapidamente**: Desenvolvido para ser extremamente veloz na escrita e leitura de dados, o MelkDB possui um m\u00e9todo eficiente para realizar a busca de items, al\u00e9m de ter um c\u00f3digo bem otimizado.\n2. **Mantenha seus dados seguros**: O MelkDB oferece a op\u00e7\u00e3o de criptografia de dados usando AES-256, protegendo seus dados e mantendo a velocidade ao adicionar e obter items.\n3. **Baixo consumo de mem\u00f3ria**: Apenas os dados solicitados pelo usu\u00e1rio s\u00e3o carregados na mem\u00f3ria, evitando o alto consumo de mem\u00f3ria ao realizar opera\u00e7\u00f5es no banco de dados. \n\n## \u26a1 A velocidade do MelkDB\n\nEm testes realizados utilizando um computador com processador **Intel Celeron Dual Core de 2.16GHz** e um SSD, obtemos seguintes dados sobre a velocidade de escrita e leitura:\n\n| Criptografia?| N\u00b0 de dados | Tempo para adicionar | Tempo para obter |\n| ------------ | ------------- | -------------------- | ---------------- |\n| N\u00e3o | 10.000 | 2.6 segundos | 1 segundo |\n| Sim | 10.000 | 6.6 segundos | 5.5 segundos |\n\n> Voc\u00ea pode realizar o seu pr\u00f3prio teste de velocidade utilizando o script [speedtest.py](https://github.com/jaedsonpys/melkdb/blob/master/speedtest.py)\n\n## Come\u00e7ando\n\nPara come\u00e7ar a utilizar o MelkDB, voc\u00ea deve possuir a vers\u00e3o `3.6` do Python **ou superior** para conseguir executar o banco de dados sem problemas. Ap\u00f3s isso, realiza a instala\u00e7\u00e3o utilizando o gerenciador de pacotes PyPI:\n\n```bash\npip install MelkDB\n```\n\nFinalizando a instala\u00e7\u00e3o, o banco de dados MelkDB j\u00e1 est\u00e1 pronto para ser utilizado. Veja abaixo um simples exemplo de uso:\n\n```python\nfrom melkdb import MelkDB\n\ndb = MelkDB('cache')\n\n# adicionando um item\ndb.add(\"latest_news\", \"Conte\u00fado das \u00faltimas not\u00edcias\")\n\n# atualizando um item\ndb.update(\"latest_news\", \"MelkDB \u00e9 lan\u00e7ado oficialmente\")\n\n# obtendo um item\nprint(db.get(\"latest_news\"))\n\n# deletando um item\ndb.delete(\"latest_news\")\n```\n\nVeja a [documenta\u00e7\u00e3o completa](https://github.com/jaedsonpys/melkdb/tree/master/docs) para aprender mais sobre o funcionamento e m\u00e9todos dispon\u00edveis para uso do MelkDB.\n\n## Licen\u00e7a de uso\n\nEste projeto utiliza a **licen\u00e7a MIT**. Por favor, considere [ler o documento LICENSE](https://github.com/jaedsonpys/melkdb/blob/master/LICENSE) para obter mais informa\u00e7\u00f5es sobre o uso adequado deste projeto!\n\n```\nMIT License\nCopyright (c) 2024 Jaedson Silva\n```\n\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "MelkDB: A faster key-value database",
"version": "0.1.0",
"project_urls": {
"Documentation": "https://github.com/jaedsonpys/melkdb/tree/master/docs",
"Homepage": "https://github.com/jaedsonpys/melkdb",
"License": "https://github.com/jaedsonpys/melkdb/blob/master/LICENSE"
},
"split_keywords": [
"database",
" nosql",
" key-value",
" db",
" engine"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5922aac39c35169ffcd66298244530cb471d9ae7c93bcc5102eebf8022e2bb84",
"md5": "7b050d40294f4b7042dc764cfab5040e",
"sha256": "12f8b02854b3c78e9e8f757bcada6e52a73541bd1c6448094c7afd73dc50deb0"
},
"downloads": -1,
"filename": "melkdb-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "7b050d40294f4b7042dc764cfab5040e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8816,
"upload_time": "2024-03-25T03:01:26",
"upload_time_iso_8601": "2024-03-25T03:01:26.544449Z",
"url": "https://files.pythonhosted.org/packages/59/22/aac39c35169ffcd66298244530cb471d9ae7c93bcc5102eebf8022e2bb84/melkdb-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-25 03:01:26",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "jaedsonpys",
"github_project": "melkdb",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "melkdb"
}