Add support of the JSON in Kvrocks #1270
Replies: 5 comments 2 replies
-
I think we can support the RedisJSON API first. For choosing the JSON library candidates, I think we should list the metrics which we care like supported JSON path or not, performance, maturity and license, and so on... @PragmaTwice and @ShooterIT also have some experience with this, to see if they have some comments on this topic. |
Beta Was this translation helpful? Give feedback.
-
I dislike the idea to use cjson, which is not a C++ json library and do not provide enough feature for implementing RedisJSON. |
Beta Was this translation helpful? Give feedback.
-
The Json Part:
For our same kind productions:
Personally, we need to pick the library which are widely used, to prevent from library bugs. |
Beta Was this translation helpful? Give feedback.
-
@ShooterIT @PragmaTwice @mapleFU favor using the jsoncons, so maybe we can try if there is no further objection on this. |
Beta Was this translation helpful? Give feedback.
-
Has this pull request made any progress? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
As everyone knows, JSON is more generic data. And it has richer expressions for data structures, I think we can support the JSON data structures in kvrocks.
This is the official website of RedisJSON
https://redis.io/commands/json.arrappend/
I think kvrocks can use jsonjson's commands.
One way is to use cjson as our JSON library since cjson-lua is already available in kvrocks.
Another approach is to introduce a new JSON library, such as rapidjson, simdjson
The tair DB supports two json formats, JSONPath and JSONPointer
I think Kvrocks can also support both formats. Jsonpointer is simple, JSON path is complex.
Beta Was this translation helpful? Give feedback.
All reactions