kubeflow / pipelines

Machine Learning Pipelines for Kubeflow
https://www.kubeflow.org/docs/components/pipelines/
Apache License 2.0
3.6k stars 1.62k forks source link

[feature] Implement an agnostic way to initialize the database #7923

Closed rimolive closed 7 months ago

rimolive commented 2 years ago

Feature Area

Currently, Kubeflow Pipelines relies on a specific database vendor (MySQL) which restrict users on database choice.

/area backend

What feature would you like to see?

My proposal is a change in the code to make this database calls agnostic from the vendor.

What is the use case or pain point?

Suppose the user already uses PostgreSQL, and there is already a database running in his environment. My idea could make the user just point to the existing database instead of deploying another one.

Is there a workaround currently?

The is no workaround so far

Love this idea? Give it a 👍. We prioritize fulfilling features with the most 👍.

IronPan commented 2 years ago

KFP uses gorm which already provides abstraction. it might already be supported, or easy to tweak the config and support https://gorm.io/docs/connecting_to_the_database.html

rimolive commented 2 years ago

That's right, but there is something in the code that end up with a switch-case where if MySQL is not the driver used, it will return an error saying it is not supported.

Tomcli commented 2 years ago

@IronPan so do you think we can add "postgres" as a new driver in the switch-case to begin with? also linking the design docs to this issue: https://docs.google.com/document/d/1u50Ja5YltsESZkrS2f_KLAuRABeEv9QF8P0aetfh05U/edit#

rimolive commented 7 months ago

Closing this issue. No activity for more than a year.

/close

google-oss-prow[bot] commented 7 months ago

@rimolive: Closing this issue.

In response to [this](https://github.com/kubeflow/pipelines/issues/7923#issuecomment-2035033752): >Closing this issue. No activity for more than a year. > >/close Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
Tomcli commented 7 months ago

Postgres implementation is added to here. Other db driver implementation can follow the same approach. https://github.com/kubeflow/pipelines/pull/9798