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

内存存储引擎 #345

Open
hnwyllmm opened this issue Feb 26, 2024 · 1 comment
Open

内存存储引擎 #345

hnwyllmm opened this issue Feb 26, 2024 · 1 comment
Assignees
Labels
feature help wanted Needs help from a contributor

Comments

@hnwyllmm
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

当前仅支持传统的磁盘存储引擎,为了能够让同学们学习更多的引擎以及使用MiniOB做更多的实验,希望可以支持更多的存储引擎。

ref #264

Describe the solution you'd like
A clear and concise description of what you want to happen.

支持内存存储引擎。
可以分期实现,比如第一个阶段做一个简单的内存存储引擎:

  • 使用页/块组织内存(当前MiniOB已经有内存缓存池,参考mem_pool.h);
  • 支持动态扩展;
  • Hash索引;
  • 引擎访问抽象层:SQL 引擎通过抽象接口访问内存存储引擎、默认引擎;
  • 建表支持指定存储引擎类型

暂时不做:

  • 支持事务;
  • 持久化(比如WAL);
  • 快照;
  • Range索引,比如 B+树

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

此功能比较简单,适合新手。主要挑战是引擎访问抽象层的设计,如何给当前默认的存储引擎以及新引擎提供统一的访问方式,可以参考MySQL的handler设计。

@hnwyllmm hnwyllmm added help wanted Needs help from a contributor feature labels Feb 26, 2024
@hnwyllmm hnwyllmm mentioned this issue Feb 26, 2024
@lychnin
Copy link
Contributor

lychnin commented Jul 30, 2024

/assign

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature help wanted Needs help from a contributor
Projects
None yet
Development

No branches or pull requests

2 participants