Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rocksdb: support ldb command parse sst #1289

Closed
wanghenshui opened this issue Feb 21, 2023 · 5 comments
Closed

rocksdb: support ldb command parse sst #1289

wanghenshui opened this issue Feb 21, 2023 · 5 comments

Comments

@wanghenshui
Copy link
Collaborator

No description provided.

This was referenced Feb 21, 2023
@Tangruilin
Copy link
Collaborator

/assigned me

@Tangruilin
Copy link
Collaborator

#help
--db #默认为./db目录, 表示pika数据库的路径
--type # meta/data, 必填, 表示meta或者data(structure 时可以不用填)
--structure #string/list/hash/set/zset,必填, 表示使用的数据结构

#获取一个 string 的 kv 情况
ldb --db=./db --structure=string get key

#扫描所存储的 string
ldb --db=./db --structure=string scan

#存储一个 string 类型的数据
ldb --db=./db --structure=string put key value

#获取一个hash表的相关信息
ldb --db=./db --type=meta --structure=hash get key
# 返回格式: key : {hash_size: x, version: x, time_stamp: x}

#获取hash表中的某一个元素
ldb --db=./db --type=data --structure=hash get key field

#向对应hash表中存放某一个元素
ldb --db=./db --type=data --structure=hash put key field value

# 获取某一个 key 所对应的list元信息
ldb --db=./db --type=meta --structure=list get key
# 获取 key 对应的 list 中,index 为 1 的 value
ldb --db=./db --type=data --structure=list get key 1

这里是我根据需求列的 ldb 工具的命令格式,看看有没有啥建议的,没问题的话我就按照这个开发了

@Tangruilin
Copy link
Collaborator

主要的思路:

  1. 把pika的数据库作为单个数据库;
  2. 区分不同的数据结构;
  3. 区分元信息和数据信息。

@Tangruilin
Copy link
Collaborator

@wanghenshui

@wanghenshui
Copy link
Collaborator Author

针对写入的命令,要告警,用ldb写入,风险还是很高的

Tangruilin added a commit to Tangruilin/pika that referenced this issue Apr 9, 2023
Signed-off-by: reilly <tang.ruilin@foxmail.com>
Tangruilin added a commit to Tangruilin/pika that referenced this issue Apr 9, 2023
Signed-off-by: reilly <tang.ruilin@foxmail.com>
Tangruilin added a commit to Tangruilin/pika that referenced this issue Apr 9, 2023
Signed-off-by: reilly <tang.ruilin@foxmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants