{"id":19151759,"url":"https://github.com/zhs007/ankadb","last_synced_at":"2025-05-07T05:42:16.397Z","repository":{"id":57486885,"uuid":"151262177","full_name":"zhs007/ankadb","owner":"zhs007","description":"AnkaDB = GraphQL + GRPC + Raft + (LevelDB or RocksDB)","archived":false,"fork":false,"pushed_at":"2021-05-07T13:58:54.000Z","size":3053,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-19T19:05:07.200Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zhs007.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-10-02T13:49:48.000Z","updated_at":"2024-06-01T16:07:33.000Z","dependencies_parsed_at":"2022-09-01T22:51:24.581Z","dependency_job_id":null,"html_url":"https://github.com/zhs007/ankadb","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhs007%2Fankadb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhs007%2Fankadb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhs007%2Fankadb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhs007%2Fankadb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zhs007","download_url":"https://codeload.github.com/zhs007/ankadb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252823667,"owners_count":21809707,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T08:15:38.658Z","updated_at":"2025-05-07T05:42:16.377Z","avatar_url":"https://github.com/zhs007.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# AnkaDB\n\n[![Build Status](https://travis-ci.org/zhs007/ankadb.svg?branch=master)](https://travis-ci.org/zhs007/ankadb)\n\n``AnkaDB`` is a scalable embedded database with ``golang``.  \n``AnkaDB`` supports multiple database engines, ``LevelDB`` and ``RocksDB``.  \n``AnkaDB`` is now single-node and will soon support multiple nodes, using the ``raft`` protocol.  \n``AnkaDB`` queries and modifies data with ``GraphQL``.  \n``AnkaDB`` used ``GRPC`` \u0026 ``ProtoBuf v3``.  \n\n[``TradingDB``](https://github.com/zhs007/tradingdb) is an implementation of ``AnkaDB``.\n\nKey-Value sample is [here](https://github.com/zhs007/ankadb/blob/master/ankadb_test.go).  \nGraphQL sample is [here](https://github.com/zhs007/ankadb/blob/master/graphql_test.go).\n\n---\n### Update\n\n##### **v0.6**\n- Support ``raft`` protocol.\n\n##### **v0.5**\n- Support ``RocksDB``.\n\n##### **v0.3**\n- Refactor AnkaDB \u0026 DBLogic.\n- Add Key-Value interface.\n- Add GraphQL sample.\n- Add test.\n- Add Development Log.\n\n##### **v0.2**\n- Refactor the error module and delete the CODE in the protobuf.\n- Support ``graphiql``\n- Replace ``chan`` with ``context``\n\n##### **v0.1**\n- Complete basic single node.\n- Support ``graphql`` query.\n- Support ``leveldb``.\n- Support http service.\n- Support grpc service.\n- Support local queries.\n\n---\n### AnkaDB Development Log\n\n[``Come Here``](https://github.com/zhs007/ankadb/blob/master/blog.md)\n\n---\n### How To Upgrade v2 To v3\n\n- change ``*AnkaDB`` to ``AnkaDB``.\n- change ``Config`` to ``*Config``.\n- change ``MgrDB`` to ``GetDBMgr()``.\n- remove your ``dblogic``, and use ``ankadb.NewBaseDBLogic`` new a DBLogic.\n- ``Config.ListDB.PathDB`` doesn't require join ``Config.PathDBRoot``.\n- you can remove all the query result definitions, and use ``MakeMsgFromResultEx`` to resolve the query result.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhs007%2Fankadb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzhs007%2Fankadb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhs007%2Fankadb/lists"}