curve icon indicating copy to clipboard operation
curve copied to clipboard

Support CurveBS metadata stored in the database

Open ilixiaocui opened this issue 2 years ago • 17 comments

Description

Currently the metadata of current CurveBS is stored in Etcd. However, Etcd has limited scalability, and the amount of metadata that can be stored is limited. In order to give more options to support larger clusters, it is hoped that the metadata can add a sql database like mysql, MariaDB, PostgreSQL, etc. as one of the storage engines.

It is hoped that the user can choose whether the metadata is stored in the kv engine or the sql engine through the configuration file.

Proposed solution

Add a new sqlstorageclient for [metadata] (https://github.com/opencurve/curve/blob/master/src/mds/nameserver2/namespace_storage.cpp) .

It should be noted that in addition to storing metadata, Etcd also undertakes the function of leader election, and this part also needs to be modified.

ilixiaocui avatar Feb 03 '23 03:02 ilixiaocui

Hello Mr./Ms. Li, I'm new to open source and saw this project in GSoC 2023. Could you tell me something about the difficulties of this project and the specific requirements for contributors?

Writer-X avatar Feb 24 '23 14:02 Writer-X

Hello Mr./Ms. Li, I'm new to open source and saw this project in GSoC 2023. Could you tell me something about the difficulties of this project and the specific requirements for contributors?

Thanks for following this issue. The issue has already described the places that need to be modified. Is the description in the issue clear to you?

ilixiaocui avatar Mar 01 '23 01:03 ilixiaocui

Hello Mr./Ms. Li, I'm new to open source and saw this project in GSoC 2023. Could you tell me something about the difficulties of this project and the specific requirements for contributors?

Thanks for following this issue. The issue has already described the places that need to be modified. Is the description in the issue clear to you?

Thanks for your reply.
In my understanding, taking mysql as an example, the issue needs to implement some interfaces to mysql and implement a leader election mechanism for multiple mysql nodes.
My major is closely related to data processing, and I am interested in this issue. If I want to contribute to it, should I prepare something other than reading the source code and trying to run the program?

Writer-X avatar Mar 02 '23 01:03 Writer-X

I'm a senior student in China and am interested in this. Please kindly let me know if any doc helps me to get started.

yyy1000 avatar Mar 04 '23 11:03 yyy1000

Hello Mr./Ms. Li, I'm new to open source and saw this project in GSoC 2023. Could you tell me something about the difficulties of this project and the specific requirements for contributors?

Thanks for following this issue. The issue has already described the places that need to be modified. Is the description in the issue clear to you?

Thanks for your reply. In my understanding, taking mysql as an example, the issue needs to implement some interfaces to mysql and implement a leader election mechanism for multiple mysql nodes. My major is closely related to data processing, and I am interested in this issue. If I want to contribute to it, should I prepare something other than reading the source code and trying to run the program?

There are no others for now. Would you like to join the contributor club for further communication?Please note the issue id when joining the group if you want. image

ilixiaocui avatar Mar 06 '23 05:03 ilixiaocui

I'm a senior student in China and am interested in this. Please kindly let me know if any doc helps me to get started.

How much do you know about the requirements of the current topic? Want to know what kind of documentation you need?

ilixiaocui avatar Mar 06 '23 05:03 ilixiaocui

@ilixiaocui , Hello, I am a newbie and I'd like to join the GSOC. I'm intriested in this project, but I have some questions.

Tangruilin avatar Mar 08 '23 08:03 Tangruilin

  1. Etcd has limited scalability and the amount of metadata that can be stored is limited, If the problem is etcd, why we chose to support a sql database but not a better kv database.
  2. As the description of this issue, I realize that it is to add a new client for sql database and give users choices, is it right?

Tangruilin avatar Mar 08 '23 08:03 Tangruilin

  1. Etcd has limited scalability and the amount of metadata that can be stored is limited, If the problem is etcd, why we chose to support a sql database but not a better kv database.
  2. As the description of this issue, I realize that it is to add a new client for sql database and give users choices, is it right?
  1. A better kv database is ok. sql database is a functional requirement.
  2. Yes. Thanks for your review, I will change the description to be more accurate.

ilixiaocui avatar Mar 08 '23 08:03 ilixiaocui

Hey @ilixiaocui I am a student from India and I would like to contribute to this issue. I wanted to know if this is still available? If it is available then I would like to write a proposal for this.

GauriBhandari avatar Mar 19 '23 06:03 GauriBhandari

Hey @ilixiaocui I am a student from India and I would like to contribute to this issue. I wanted to know if this is still available? If it is available then I would like to write a proposal for this.

Of course, please note the timeline, and feel free to raise any ideas or questions you may have.

ilixiaocui avatar Mar 27 '23 02:03 ilixiaocui

Hey @ilixiaocui I am a student from India and I would like to contribute to this issue. I wanted to know if this is still available? If it is available then I would like to write a proposal for this.

Of course, please note the timeline, and feel free to raise any ideas or questions you may have.

Hey @ilixiaocui I am unable to see this organization (project) on gsoc organization dashboard. Is it still available? Could you please help

GauriBhandari avatar Mar 30 '23 07:03 GauriBhandari

hello@GauriBhandari .This organization is under cncf and you can search cncf and find their idea lists.Hope it is helpful to you.

bit-dance avatar Apr 01 '23 03:04 bit-dance

Hi @ilixiaocui and @bit-dance, I am willing to submit a proposal as solutions for this issue, but I see that this issue has already been assigned to someone. Is this assignment final? If not, can I directly submit a proposal?

aavhad1910 avatar Apr 02 '23 01:04 aavhad1910

Hi @ilixiaocui and @bit-dance, I am willing to submit a proposal as solutions for this issue, but I see that this issue has already been assigned to someone. Is this assignment final? If not, can I directly submit a proposal?

@bit-dance Sorry, the registration period has ended.

ilixiaocui avatar Apr 07 '23 03:04 ilixiaocui

this topic is in Curve's GSoC2023 and has passed the registration phase.

welcome to pay attention to other good first issues .

ilixiaocui avatar Jun 09 '23 11:06 ilixiaocui

Mark, I want to learn a lot from this modify~

zztaki avatar Dec 22 '23 03:12 zztaki