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

feat(ingest/superset): add datasets ingestion #10592

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

Serge-B2
Copy link

@Serge-B2 Serge-B2 commented May 26, 2024

Checklist

  • The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
  • Links to related issues (if applicable)
  • Tests for the changes have been added/updated (if applicable)
  • Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
  • For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

This PR introduces support for the Datasets entity in the Superset data ingestion plugin, enhancing its integration capabilities with DataHub.

@github-actions github-actions bot added ingestion PR or Issue related to the ingestion of metadata community-contribution PR or Issue raised by member(s) of DataHub Community labels May 26, 2024
@Serge-B2
Copy link
Author

@hsheth2 Could you please review this.

Copy link
Collaborator

@hsheth2 hsheth2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some higher level questions before I dive into the actual code

  • Superset "datasets" are basically a view over data warehouse tables, right? For the most part, they have the same columns, plus some additional ones if using the "superset semantic layer"
  • In this PR, the goal should be to draw warehouse <- superset dataset <- superset chart lineage, right? I suspect that ingesting only metadata about superset datasets, without lineage up to the warehouse, will make things confusing

@Serge-B2
Copy link
Author

Serge-B2 commented Jun 7, 2024

Some higher level questions before I dive into the actual code

  • Superset "datasets" are basically a view over data warehouse tables, right? For the most part, they have the same columns, plus some additional ones if using the "superset semantic layer"
  • In this PR, the goal should be to draw warehouse <- superset dataset <- superset chart lineage, right? I suspect that ingesting only metadata about superset datasets, without lineage up to the warehouse, will make things confusing

Yes, you are right, this PR is aimed towards ingesting Superset datasets which are views over warehouse tables. These datasets are of interest because they allow users to interact with the data and leverage some capabilities of the Superset layer in a user-friendly way. So we decided it would be helpful to introduce these into Datahub so we could have a more detailed view of Superset lineage. It is especially useful for the period when all or some of the sources that are used in Superset are unavailable for ingesting to Datahub due to different reasons. For example, we could not currently ingest sources that use sql_alchemy in its plugins because the proxy that we use for access doesn't allow for it. One of such sources is Clickhouse.

I also introduced "use_superset_platfrom" parameter to assign Superset platform to new datasets. Superset assigns the platform of the source to its datasets by default which indeed could be confusing and we are able to deal with it in this PR by changing platform to Superset.

One more thing to consider is that I make a distinction between datasets that are based on tables and on views, these datasets receive "virtual" tag.

@Serge-B2
Copy link
Author

@hsheth2 could you please review this, I believe this PR will bring value to those who mainly use metadata from Superset

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community-contribution PR or Issue raised by member(s) of DataHub Community ingestion PR or Issue related to the ingestion of metadata
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants