OpenMetadata icon indicating copy to clipboard operation
OpenMetadata copied to clipboard

Teradata Connector

Open gpby opened this issue 1 year ago • 9 comments

Supporting Teradata Vantage:

Fixes #15756

Here is a beta version of Teradata Database / Teradata Vantage Connector It supports only Metadata and Profiler ingestion

Known limitations:

  • No columns info for Views (only ColumnName)
  • Unable to parse DDL for views for some cases: REPLACE VIEW (only CREATE VIEW supported), LOCKING .. FOR ACEESS, etc. Third party library sqlparse should be adopted for Teradata specific.
  • There are no schemas in Teradata only Databases but from entity point of view Teradara Database is OpenMetadata Schema. So Database for each Teradata object in OM will be default and Terdata DatabaseName used as OM Schema

Type of change:

  • [x] New feature

Checklist:

  • [x] I have read the CONTRIBUTING document.

  • [x] My PR title is Fixes 15756: Support Teradata Connector

  • [x] I have commented on my code, particularly in hard-to-understand areas.

  • [x] For JSON Schema changes: I updated the migration scripts or explained why it is not needed.

  • [ ] The issue properly describes why the new feature is needed, what's the goal, and how we are building it. Any discussion or decision-making process is reflected in the issue.

  • [ ] I have updated the documentation.

  • [ ] I have added tests around the new logic.

gpby avatar May 21 '24 17:05 gpby

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

github-actions[bot] avatar May 21 '24 17:05 github-actions[bot]

hi @gpby thank you for the contribution. We will review and merge it in

harshach avatar May 21 '24 20:05 harshach

The Python checkstyle failed.

Please run make py_format and py_format_check in the root of your repository and commit the changes to this PR. You can also use pre-commit to automate the Python code formatting.

You can install the pre-commit hooks with make install_test precommit_install.

github-actions[bot] avatar May 22 '24 06:05 github-actions[bot]

Jest test Coverage

UI tests summary

Lines Statements Branches Functions
Coverage: 64%
64.79% (34797/53710) 41.66% (13718/32927) 43.6% (4268/9788)

github-actions[bot] avatar May 22 '24 06:05 github-actions[bot]

2 failed tests on run #34268 ↗︎

2 481 8 0 Flakiness 0

Details:

Merge branch 'main' into teradata
Project: openmetadata Commit: 966fe39fae
Status: Failed Duration: 00:14 💡
Started: May 27, 2024 7:40 AM Ended: May 27, 2024 8:40 AM
Failed  cypress/e2e/Pages/Services.spec.ts • 2 failed tests • cypress-ci-mysql-pr-9250839733-1

View Output Video

Test Artifacts
Services detail page > Database Service page > GlossaryTerm assign, update & delete Screenshots Video
Services detail page > Database Service page > Soft delete Screenshots Video

Review all test suite changes for PR #16373 ↗︎

cypress[bot] avatar May 22 '24 07:05 cypress[bot]

hi @gpby, thanks a lot for the contribution! Appreciate the effort!

A couple of comments here:

  • You might need to run make py_format to ensure CI passes
  • We might need your help with the docs. For example, here you can find the documentation for Athena. Basically, we need to ensure we direct users to the proper permissions and field descriptions. This can be a followup PR.
  • Re the lineage limitations, if you could please share a few queries as a comment in this issue https://github.com/open-metadata/OpenMetadata/issues/7427, it'll help us make the necessary enhancements to the lineage parsing module to add proper support for Teradata's dialect

Thanks!

pmbrull avatar May 22 '24 08:05 pmbrull

  1. I've done make py_format
  2. I'm still working on documentattion
  3. I'll add sql examples with parsing errors

gpby avatar May 22 '24 17:05 gpby

Quality Gate Failed Quality Gate failed for 'open-metadata-ingestion'

Failed conditions
6.6% Coverage on New Code (required ≥ 20%)

See analysis details on SonarCloud

sonarqubecloud[bot] avatar May 27 '24 07:05 sonarqubecloud[bot]