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

agatedb 中 的 yatp 是否可以拿出来放到AgateOptions中 #177

Open
gcxfd opened this issue Jul 6, 2022 · 5 comments
Open

agatedb 中 的 yatp 是否可以拿出来放到AgateOptions中 #177

gcxfd opened this issue Jul 6, 2022 · 5 comments

Comments

@gcxfd
Copy link
Contributor

gcxfd commented Jul 6, 2022

看起来,现在agatedb并没有类似rocksdb的Column family的东西,我一开始以为table是类似Column family,仔细看了一下代码,感觉table只是一个sst文件(没有compact)。

我的想法是,搞多个agatedb,每个相当于一个Column family

但是,现在每个agatedb都持有一份独立的yatp,开多个agatedb,就会有一堆线程。

我的想法是,把yatp放到参数中去,这样多个agatedb就可以共用一个yatp,不知道这个想法是否合理。

@GanZiheng
Copy link
Contributor

Column Family 目前并不支持,下一阶段计划增加这一功能。但不是以多个实例的方式,而是考虑把 Column Family 的值当作键的前缀来实现。

@gcxfd
Copy link
Contributor Author

gcxfd commented Jul 7, 2022

Column Family 目前并不支持,下一阶段计划增加这一功能。但不是以多个实例的方式,而是考虑把 Column Family 的值当作键的前缀来实现。

我看rocksdb,每个Column Family都可以配置不同的参数,如果作为键前缀,是不是就得公用一套数据库参数,这样是不是减少了配置的灵活性。
image

@GanZiheng
Copy link
Contributor

GanZiheng commented Jul 7, 2022

确实是个问题。如果使用键前缀的方法,就不好为每个 Column Family 进行单独的配置,以及方便地删除 Column Family。

我去看一下 RocksDB 的实现。我认为增加实例的方式是可行的,但不是一个好的方案。

@Connor1996
Copy link
Member

Column Family 目前并不支持,下一阶段计划增加这一功能。但不是以多个实例的方式,而是考虑把 Column Family 的值当作键的前缀来实现。

We'll use key-prefix to emulate the column family on engine trait level of TiKV to workaround, and later implement native support of column family in agatedb.

@zhangjinpeng87
Copy link
Member

Please use english since this is a global community. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants