acryl-datahub 1.0.0rc18__py3-none-any.whl → 1.3.0.1rc9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of acryl-datahub might be problematic. Click here for more details.
- {acryl_datahub-1.0.0rc18.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/METADATA +2686 -2563
- {acryl_datahub-1.0.0rc18.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/RECORD +499 -392
- {acryl_datahub-1.0.0rc18.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/WHEEL +1 -1
- {acryl_datahub-1.0.0rc18.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/entry_points.txt +7 -1
- datahub/_version.py +1 -1
- datahub/api/circuit_breaker/operation_circuit_breaker.py +2 -2
- datahub/api/entities/assertion/assertion.py +1 -1
- datahub/api/entities/common/serialized_value.py +1 -1
- datahub/api/entities/corpgroup/corpgroup.py +1 -1
- datahub/api/entities/datacontract/datacontract.py +35 -3
- datahub/api/entities/datajob/dataflow.py +18 -3
- datahub/api/entities/datajob/datajob.py +24 -4
- datahub/api/entities/dataprocess/dataprocess_instance.py +4 -0
- datahub/api/entities/dataproduct/dataproduct.py +32 -3
- datahub/api/entities/dataset/dataset.py +47 -72
- datahub/api/entities/external/__init__.py +0 -0
- datahub/api/entities/external/external_entities.py +724 -0
- datahub/api/entities/external/external_tag.py +147 -0
- datahub/api/entities/external/lake_formation_external_entites.py +162 -0
- datahub/api/entities/external/restricted_text.py +172 -0
- datahub/api/entities/external/unity_catalog_external_entites.py +172 -0
- datahub/api/entities/forms/forms.py +37 -37
- datahub/api/entities/structuredproperties/structuredproperties.py +6 -6
- datahub/api/graphql/assertion.py +1 -1
- datahub/api/graphql/base.py +8 -6
- datahub/api/graphql/operation.py +14 -10
- datahub/cli/check_cli.py +91 -9
- datahub/cli/cli_utils.py +63 -0
- datahub/cli/config_utils.py +20 -12
- datahub/cli/container_cli.py +5 -0
- datahub/cli/delete_cli.py +133 -34
- datahub/cli/docker_check.py +110 -14
- datahub/cli/docker_cli.py +155 -231
- datahub/cli/exists_cli.py +2 -3
- datahub/cli/get_cli.py +2 -3
- datahub/cli/graphql_cli.py +1422 -0
- datahub/cli/iceberg_cli.py +11 -5
- datahub/cli/ingest_cli.py +25 -26
- datahub/cli/migrate.py +12 -9
- datahub/cli/migration_utils.py +4 -3
- datahub/cli/put_cli.py +4 -6
- datahub/cli/quickstart_versioning.py +53 -10
- datahub/cli/specific/assertions_cli.py +39 -7
- datahub/cli/specific/datacontract_cli.py +57 -9
- datahub/cli/specific/dataproduct_cli.py +12 -24
- datahub/cli/specific/dataset_cli.py +31 -21
- datahub/cli/specific/forms_cli.py +2 -5
- datahub/cli/specific/group_cli.py +2 -3
- datahub/cli/specific/structuredproperties_cli.py +5 -7
- datahub/cli/specific/user_cli.py +174 -4
- datahub/cli/state_cli.py +2 -3
- datahub/cli/timeline_cli.py +2 -3
- datahub/configuration/common.py +46 -2
- datahub/configuration/connection_resolver.py +5 -2
- datahub/configuration/env_vars.py +331 -0
- datahub/configuration/import_resolver.py +7 -4
- datahub/configuration/kafka.py +21 -1
- datahub/configuration/pydantic_migration_helpers.py +6 -13
- datahub/configuration/source_common.py +4 -3
- datahub/configuration/validate_field_deprecation.py +5 -2
- datahub/configuration/validate_field_removal.py +8 -2
- datahub/configuration/validate_field_rename.py +6 -5
- datahub/configuration/validate_multiline_string.py +5 -2
- datahub/emitter/mce_builder.py +12 -8
- datahub/emitter/mcp.py +20 -5
- datahub/emitter/mcp_builder.py +12 -0
- datahub/emitter/request_helper.py +138 -15
- datahub/emitter/response_helper.py +111 -19
- datahub/emitter/rest_emitter.py +399 -163
- datahub/entrypoints.py +10 -5
- datahub/errors.py +12 -0
- datahub/ingestion/api/auto_work_units/auto_ensure_aspect_size.py +299 -2
- datahub/ingestion/api/auto_work_units/auto_validate_input_fields.py +87 -0
- datahub/ingestion/api/common.py +9 -0
- datahub/ingestion/api/decorators.py +15 -3
- datahub/ingestion/api/report.py +381 -3
- datahub/ingestion/api/sink.py +27 -2
- datahub/ingestion/api/source.py +174 -62
- datahub/ingestion/api/source_helpers.py +41 -3
- datahub/ingestion/api/source_protocols.py +23 -0
- datahub/ingestion/autogenerated/__init__.py +0 -0
- datahub/ingestion/autogenerated/capability_summary.json +3652 -0
- datahub/ingestion/autogenerated/lineage.json +402 -0
- datahub/ingestion/autogenerated/lineage_helper.py +177 -0
- datahub/ingestion/extractor/schema_util.py +31 -5
- datahub/ingestion/glossary/classification_mixin.py +9 -2
- datahub/ingestion/graph/client.py +492 -55
- datahub/ingestion/graph/config.py +18 -2
- datahub/ingestion/graph/filters.py +96 -32
- datahub/ingestion/graph/links.py +55 -0
- datahub/ingestion/reporting/datahub_ingestion_run_summary_provider.py +21 -11
- datahub/ingestion/run/pipeline.py +90 -23
- datahub/ingestion/run/pipeline_config.py +3 -3
- datahub/ingestion/sink/datahub_kafka.py +1 -0
- datahub/ingestion/sink/datahub_rest.py +31 -23
- datahub/ingestion/sink/file.py +1 -0
- datahub/ingestion/source/abs/config.py +1 -1
- datahub/ingestion/source/abs/datalake_profiler_config.py +1 -1
- datahub/ingestion/source/abs/source.py +15 -30
- datahub/ingestion/source/apply/datahub_apply.py +6 -5
- datahub/ingestion/source/aws/aws_common.py +185 -13
- datahub/ingestion/source/aws/glue.py +517 -244
- datahub/ingestion/source/aws/platform_resource_repository.py +30 -0
- datahub/ingestion/source/aws/s3_boto_utils.py +100 -5
- datahub/ingestion/source/aws/sagemaker_processors/feature_groups.py +1 -1
- datahub/ingestion/source/aws/sagemaker_processors/models.py +4 -4
- datahub/ingestion/source/aws/tag_entities.py +270 -0
- datahub/ingestion/source/azure/azure_common.py +3 -3
- datahub/ingestion/source/bigquery_v2/bigquery.py +51 -7
- datahub/ingestion/source/bigquery_v2/bigquery_config.py +51 -81
- datahub/ingestion/source/bigquery_v2/bigquery_connection.py +81 -0
- datahub/ingestion/source/bigquery_v2/bigquery_queries.py +6 -1
- datahub/ingestion/source/bigquery_v2/bigquery_report.py +0 -2
- datahub/ingestion/source/bigquery_v2/bigquery_schema.py +23 -16
- datahub/ingestion/source/bigquery_v2/bigquery_schema_gen.py +20 -5
- datahub/ingestion/source/bigquery_v2/common.py +1 -1
- datahub/ingestion/source/bigquery_v2/lineage.py +1 -1
- datahub/ingestion/source/bigquery_v2/profiler.py +4 -2
- datahub/ingestion/source/bigquery_v2/queries.py +3 -3
- datahub/ingestion/source/bigquery_v2/queries_extractor.py +45 -9
- datahub/ingestion/source/cassandra/cassandra.py +7 -18
- datahub/ingestion/source/cassandra/cassandra_api.py +36 -0
- datahub/ingestion/source/cassandra/cassandra_config.py +20 -0
- datahub/ingestion/source/cassandra/cassandra_profiling.py +26 -24
- datahub/ingestion/source/cassandra/cassandra_utils.py +1 -2
- datahub/ingestion/source/common/data_platforms.py +23 -0
- datahub/ingestion/source/common/gcp_credentials_config.py +9 -1
- datahub/ingestion/source/common/subtypes.py +73 -1
- datahub/ingestion/source/data_lake_common/data_lake_utils.py +59 -10
- datahub/ingestion/source/data_lake_common/object_store.py +732 -0
- datahub/ingestion/source/data_lake_common/path_spec.py +87 -38
- datahub/ingestion/source/datahub/config.py +19 -5
- datahub/ingestion/source/datahub/datahub_database_reader.py +205 -36
- datahub/ingestion/source/datahub/datahub_source.py +11 -1
- datahub/ingestion/source/dbt/dbt_cloud.py +17 -10
- datahub/ingestion/source/dbt/dbt_common.py +270 -26
- datahub/ingestion/source/dbt/dbt_core.py +88 -47
- datahub/ingestion/source/dbt/dbt_tests.py +8 -6
- datahub/ingestion/source/debug/__init__.py +0 -0
- datahub/ingestion/source/debug/datahub_debug.py +300 -0
- datahub/ingestion/source/delta_lake/config.py +9 -5
- datahub/ingestion/source/delta_lake/source.py +8 -0
- datahub/ingestion/source/dremio/dremio_api.py +114 -73
- datahub/ingestion/source/dremio/dremio_aspects.py +3 -2
- datahub/ingestion/source/dremio/dremio_config.py +5 -4
- datahub/ingestion/source/dremio/dremio_datahub_source_mapping.py +1 -1
- datahub/ingestion/source/dremio/dremio_entities.py +6 -5
- datahub/ingestion/source/dremio/dremio_reporting.py +22 -3
- datahub/ingestion/source/dremio/dremio_source.py +228 -215
- datahub/ingestion/source/dremio/dremio_sql_queries.py +82 -21
- datahub/ingestion/source/dynamodb/dynamodb.py +19 -13
- datahub/ingestion/source/excel/__init__.py +0 -0
- datahub/ingestion/source/excel/config.py +92 -0
- datahub/ingestion/source/excel/excel_file.py +539 -0
- datahub/ingestion/source/excel/profiling.py +308 -0
- datahub/ingestion/source/excel/report.py +49 -0
- datahub/ingestion/source/excel/source.py +662 -0
- datahub/ingestion/source/excel/util.py +18 -0
- datahub/ingestion/source/feast.py +12 -14
- datahub/ingestion/source/file.py +3 -0
- datahub/ingestion/source/fivetran/config.py +67 -8
- datahub/ingestion/source/fivetran/fivetran.py +228 -43
- datahub/ingestion/source/fivetran/fivetran_log_api.py +42 -9
- datahub/ingestion/source/fivetran/fivetran_query.py +58 -36
- datahub/ingestion/source/fivetran/fivetran_rest_api.py +65 -0
- datahub/ingestion/source/fivetran/response_models.py +97 -0
- datahub/ingestion/source/gc/datahub_gc.py +0 -2
- datahub/ingestion/source/gc/soft_deleted_entity_cleanup.py +101 -104
- datahub/ingestion/source/gcs/gcs_source.py +53 -10
- datahub/ingestion/source/gcs/gcs_utils.py +36 -9
- datahub/ingestion/source/ge_data_profiler.py +146 -33
- datahub/ingestion/source/ge_profiling_config.py +26 -11
- datahub/ingestion/source/grafana/entity_mcp_builder.py +272 -0
- datahub/ingestion/source/grafana/field_utils.py +307 -0
- datahub/ingestion/source/grafana/grafana_api.py +142 -0
- datahub/ingestion/source/grafana/grafana_config.py +104 -0
- datahub/ingestion/source/grafana/grafana_source.py +522 -84
- datahub/ingestion/source/grafana/lineage.py +202 -0
- datahub/ingestion/source/grafana/models.py +137 -0
- datahub/ingestion/source/grafana/report.py +90 -0
- datahub/ingestion/source/grafana/types.py +16 -0
- datahub/ingestion/source/hex/__init__.py +0 -0
- datahub/ingestion/source/hex/api.py +402 -0
- datahub/ingestion/source/hex/constants.py +8 -0
- datahub/ingestion/source/hex/hex.py +311 -0
- datahub/ingestion/source/hex/mapper.py +412 -0
- datahub/ingestion/source/hex/model.py +78 -0
- datahub/ingestion/source/hex/query_fetcher.py +307 -0
- datahub/ingestion/source/iceberg/iceberg.py +385 -164
- datahub/ingestion/source/iceberg/iceberg_common.py +2 -2
- datahub/ingestion/source/iceberg/iceberg_profiler.py +25 -20
- datahub/ingestion/source/identity/azure_ad.py +1 -1
- datahub/ingestion/source/identity/okta.py +1 -14
- datahub/ingestion/source/kafka/kafka.py +28 -71
- datahub/ingestion/source/kafka/kafka_config.py +78 -0
- datahub/ingestion/source/kafka_connect/common.py +2 -2
- datahub/ingestion/source/kafka_connect/sink_connectors.py +157 -48
- datahub/ingestion/source/kafka_connect/source_connectors.py +63 -5
- datahub/ingestion/source/ldap.py +1 -1
- datahub/ingestion/source/looker/looker_common.py +216 -86
- datahub/ingestion/source/looker/looker_config.py +15 -4
- datahub/ingestion/source/looker/looker_constant.py +4 -0
- datahub/ingestion/source/looker/looker_lib_wrapper.py +37 -4
- datahub/ingestion/source/looker/looker_liquid_tag.py +56 -5
- datahub/ingestion/source/looker/looker_source.py +539 -555
- datahub/ingestion/source/looker/looker_view_id_cache.py +1 -1
- datahub/ingestion/source/looker/lookml_concept_context.py +1 -1
- datahub/ingestion/source/looker/lookml_config.py +31 -3
- datahub/ingestion/source/looker/lookml_refinement.py +1 -1
- datahub/ingestion/source/looker/lookml_source.py +103 -118
- datahub/ingestion/source/looker/view_upstream.py +494 -1
- datahub/ingestion/source/metabase.py +32 -6
- datahub/ingestion/source/metadata/business_glossary.py +7 -7
- datahub/ingestion/source/metadata/lineage.py +11 -10
- datahub/ingestion/source/mlflow.py +254 -23
- datahub/ingestion/source/mock_data/__init__.py +0 -0
- datahub/ingestion/source/mock_data/datahub_mock_data.py +533 -0
- datahub/ingestion/source/mock_data/datahub_mock_data_report.py +12 -0
- datahub/ingestion/source/mock_data/table_naming_helper.py +97 -0
- datahub/ingestion/source/mode.py +359 -181
- datahub/ingestion/source/mongodb.py +11 -1
- datahub/ingestion/source/neo4j/neo4j_source.py +122 -153
- datahub/ingestion/source/nifi.py +5 -5
- datahub/ingestion/source/openapi.py +85 -38
- datahub/ingestion/source/openapi_parser.py +59 -40
- datahub/ingestion/source/powerbi/config.py +92 -27
- datahub/ingestion/source/powerbi/m_query/data_classes.py +3 -0
- datahub/ingestion/source/powerbi/m_query/odbc.py +185 -0
- datahub/ingestion/source/powerbi/m_query/parser.py +2 -2
- datahub/ingestion/source/powerbi/m_query/pattern_handler.py +358 -14
- datahub/ingestion/source/powerbi/m_query/resolver.py +10 -0
- datahub/ingestion/source/powerbi/powerbi.py +66 -32
- datahub/ingestion/source/powerbi/rest_api_wrapper/data_resolver.py +2 -2
- datahub/ingestion/source/powerbi/rest_api_wrapper/powerbi_api.py +11 -12
- datahub/ingestion/source/powerbi_report_server/report_server.py +0 -23
- datahub/ingestion/source/powerbi_report_server/report_server_domain.py +2 -4
- datahub/ingestion/source/preset.py +3 -3
- datahub/ingestion/source/qlik_sense/data_classes.py +28 -8
- datahub/ingestion/source/qlik_sense/qlik_sense.py +2 -1
- datahub/ingestion/source/redash.py +1 -1
- datahub/ingestion/source/redshift/config.py +15 -9
- datahub/ingestion/source/redshift/datashares.py +1 -1
- datahub/ingestion/source/redshift/lineage.py +386 -687
- datahub/ingestion/source/redshift/profile.py +2 -2
- datahub/ingestion/source/redshift/query.py +24 -20
- datahub/ingestion/source/redshift/redshift.py +52 -111
- datahub/ingestion/source/redshift/redshift_schema.py +17 -12
- datahub/ingestion/source/redshift/report.py +0 -2
- datahub/ingestion/source/redshift/usage.py +13 -11
- datahub/ingestion/source/s3/report.py +4 -2
- datahub/ingestion/source/s3/source.py +515 -244
- datahub/ingestion/source/sac/sac.py +3 -1
- datahub/ingestion/source/salesforce.py +28 -13
- datahub/ingestion/source/schema/json_schema.py +14 -14
- datahub/ingestion/source/schema_inference/object.py +22 -6
- datahub/ingestion/source/sigma/config.py +75 -8
- datahub/ingestion/source/sigma/data_classes.py +3 -0
- datahub/ingestion/source/sigma/sigma.py +36 -7
- datahub/ingestion/source/sigma/sigma_api.py +99 -58
- datahub/ingestion/source/slack/slack.py +403 -140
- datahub/ingestion/source/snaplogic/__init__.py +0 -0
- datahub/ingestion/source/snaplogic/snaplogic.py +355 -0
- datahub/ingestion/source/snaplogic/snaplogic_config.py +37 -0
- datahub/ingestion/source/snaplogic/snaplogic_lineage_extractor.py +107 -0
- datahub/ingestion/source/snaplogic/snaplogic_parser.py +168 -0
- datahub/ingestion/source/snaplogic/snaplogic_utils.py +31 -0
- datahub/ingestion/source/snowflake/constants.py +4 -0
- datahub/ingestion/source/snowflake/snowflake_config.py +103 -34
- datahub/ingestion/source/snowflake/snowflake_connection.py +47 -25
- datahub/ingestion/source/snowflake/snowflake_lineage_v2.py +25 -6
- datahub/ingestion/source/snowflake/snowflake_profiler.py +1 -6
- datahub/ingestion/source/snowflake/snowflake_queries.py +511 -107
- datahub/ingestion/source/snowflake/snowflake_query.py +100 -72
- datahub/ingestion/source/snowflake/snowflake_report.py +4 -2
- datahub/ingestion/source/snowflake/snowflake_schema.py +381 -16
- datahub/ingestion/source/snowflake/snowflake_schema_gen.py +163 -52
- datahub/ingestion/source/snowflake/snowflake_summary.py +7 -1
- datahub/ingestion/source/snowflake/snowflake_tag.py +4 -1
- datahub/ingestion/source/snowflake/snowflake_usage_v2.py +8 -2
- datahub/ingestion/source/snowflake/snowflake_utils.py +62 -17
- datahub/ingestion/source/snowflake/snowflake_v2.py +56 -10
- datahub/ingestion/source/snowflake/stored_proc_lineage.py +143 -0
- datahub/ingestion/source/sql/athena.py +219 -26
- datahub/ingestion/source/sql/athena_properties_extractor.py +795 -0
- datahub/ingestion/source/sql/clickhouse.py +29 -9
- datahub/ingestion/source/sql/cockroachdb.py +5 -4
- datahub/ingestion/source/sql/druid.py +9 -4
- datahub/ingestion/source/sql/hana.py +3 -1
- datahub/ingestion/source/sql/hive.py +28 -8
- datahub/ingestion/source/sql/hive_metastore.py +24 -25
- datahub/ingestion/source/sql/mariadb.py +0 -1
- datahub/ingestion/source/sql/mssql/job_models.py +18 -2
- datahub/ingestion/source/sql/mssql/source.py +376 -62
- datahub/ingestion/source/sql/mysql.py +154 -4
- datahub/ingestion/source/sql/oracle.py +62 -11
- datahub/ingestion/source/sql/postgres.py +142 -6
- datahub/ingestion/source/sql/presto.py +20 -2
- datahub/ingestion/source/sql/sql_common.py +281 -49
- datahub/ingestion/source/sql/sql_config.py +1 -34
- datahub/ingestion/source/sql/sql_generic_profiler.py +2 -1
- datahub/ingestion/source/sql/sql_types.py +27 -2
- datahub/ingestion/source/sql/sqlalchemy_uri.py +68 -0
- datahub/ingestion/source/sql/stored_procedures/__init__.py +0 -0
- datahub/ingestion/source/sql/stored_procedures/base.py +253 -0
- datahub/ingestion/source/sql/{mssql/stored_procedure_lineage.py → stored_procedures/lineage.py} +2 -29
- datahub/ingestion/source/sql/teradata.py +1028 -245
- datahub/ingestion/source/sql/trino.py +43 -10
- datahub/ingestion/source/sql/two_tier_sql_source.py +3 -4
- datahub/ingestion/source/sql/vertica.py +14 -7
- datahub/ingestion/source/sql_queries.py +219 -121
- datahub/ingestion/source/state/checkpoint.py +8 -29
- datahub/ingestion/source/state/entity_removal_state.py +5 -2
- datahub/ingestion/source/state/redundant_run_skip_handler.py +21 -0
- datahub/ingestion/source/state/stale_entity_removal_handler.py +0 -1
- datahub/ingestion/source/state/stateful_ingestion_base.py +36 -11
- datahub/ingestion/source/state_provider/datahub_ingestion_checkpointing_provider.py +2 -1
- datahub/ingestion/source/superset.py +810 -126
- datahub/ingestion/source/tableau/tableau.py +172 -69
- datahub/ingestion/source/tableau/tableau_common.py +11 -4
- datahub/ingestion/source/tableau/tableau_constant.py +1 -4
- datahub/ingestion/source/tableau/tableau_server_wrapper.py +3 -0
- datahub/ingestion/source/tableau/tableau_validation.py +1 -1
- datahub/ingestion/source/unity/config.py +161 -40
- datahub/ingestion/source/unity/connection.py +61 -0
- datahub/ingestion/source/unity/connection_test.py +1 -0
- datahub/ingestion/source/unity/platform_resource_repository.py +19 -0
- datahub/ingestion/source/unity/proxy.py +794 -51
- datahub/ingestion/source/unity/proxy_patch.py +321 -0
- datahub/ingestion/source/unity/proxy_types.py +36 -2
- datahub/ingestion/source/unity/report.py +15 -3
- datahub/ingestion/source/unity/source.py +465 -131
- datahub/ingestion/source/unity/tag_entities.py +197 -0
- datahub/ingestion/source/unity/usage.py +46 -4
- datahub/ingestion/source/usage/clickhouse_usage.py +11 -4
- datahub/ingestion/source/usage/starburst_trino_usage.py +10 -5
- datahub/ingestion/source/usage/usage_common.py +4 -68
- datahub/ingestion/source/vertexai/__init__.py +0 -0
- datahub/ingestion/source/vertexai/vertexai.py +1367 -0
- datahub/ingestion/source/vertexai/vertexai_config.py +29 -0
- datahub/ingestion/source/vertexai/vertexai_result_type_utils.py +89 -0
- datahub/ingestion/source_config/pulsar.py +3 -1
- datahub/ingestion/source_report/ingestion_stage.py +50 -11
- datahub/ingestion/transformer/add_dataset_dataproduct.py +1 -1
- datahub/ingestion/transformer/add_dataset_ownership.py +19 -3
- datahub/ingestion/transformer/base_transformer.py +8 -5
- datahub/ingestion/transformer/dataset_domain.py +1 -1
- datahub/ingestion/transformer/set_browse_path.py +112 -0
- datahub/integrations/assertion/common.py +3 -2
- datahub/integrations/assertion/snowflake/compiler.py +4 -3
- datahub/lite/lite_util.py +2 -2
- datahub/metadata/{_schema_classes.py → _internal_schema_classes.py} +3095 -631
- datahub/metadata/_urns/urn_defs.py +1866 -1582
- datahub/metadata/com/linkedin/pegasus2avro/application/__init__.py +19 -0
- datahub/metadata/com/linkedin/pegasus2avro/common/__init__.py +2 -0
- datahub/metadata/com/linkedin/pegasus2avro/dataplatform/slack/__init__.py +15 -0
- datahub/metadata/com/linkedin/pegasus2avro/event/__init__.py +11 -0
- datahub/metadata/com/linkedin/pegasus2avro/event/notification/__init__.py +15 -0
- datahub/metadata/com/linkedin/pegasus2avro/event/notification/settings/__init__.py +19 -0
- datahub/metadata/com/linkedin/pegasus2avro/file/__init__.py +19 -0
- datahub/metadata/com/linkedin/pegasus2avro/identity/__init__.py +2 -0
- datahub/metadata/com/linkedin/pegasus2avro/logical/__init__.py +15 -0
- datahub/metadata/com/linkedin/pegasus2avro/metadata/key/__init__.py +8 -0
- datahub/metadata/com/linkedin/pegasus2avro/module/__init__.py +31 -0
- datahub/metadata/com/linkedin/pegasus2avro/platform/event/v1/__init__.py +4 -0
- datahub/metadata/com/linkedin/pegasus2avro/role/__init__.py +2 -0
- datahub/metadata/com/linkedin/pegasus2avro/settings/asset/__init__.py +19 -0
- datahub/metadata/com/linkedin/pegasus2avro/settings/global/__init__.py +8 -0
- datahub/metadata/com/linkedin/pegasus2avro/template/__init__.py +31 -0
- datahub/metadata/schema.avsc +18404 -16617
- datahub/metadata/schema_classes.py +3 -3
- datahub/metadata/schemas/Actors.avsc +38 -1
- datahub/metadata/schemas/ApplicationKey.avsc +31 -0
- datahub/metadata/schemas/ApplicationProperties.avsc +72 -0
- datahub/metadata/schemas/Applications.avsc +38 -0
- datahub/metadata/schemas/AssetSettings.avsc +63 -0
- datahub/metadata/schemas/ChartInfo.avsc +2 -1
- datahub/metadata/schemas/ChartKey.avsc +1 -0
- datahub/metadata/schemas/ContainerKey.avsc +1 -0
- datahub/metadata/schemas/ContainerProperties.avsc +8 -0
- datahub/metadata/schemas/CorpUserEditableInfo.avsc +15 -1
- datahub/metadata/schemas/CorpUserKey.avsc +2 -1
- datahub/metadata/schemas/CorpUserSettings.avsc +145 -0
- datahub/metadata/schemas/DashboardKey.avsc +1 -0
- datahub/metadata/schemas/DataContractKey.avsc +2 -1
- datahub/metadata/schemas/DataFlowInfo.avsc +8 -0
- datahub/metadata/schemas/DataFlowKey.avsc +1 -0
- datahub/metadata/schemas/DataHubFileInfo.avsc +230 -0
- datahub/metadata/schemas/DataHubFileKey.avsc +21 -0
- datahub/metadata/schemas/DataHubIngestionSourceKey.avsc +2 -1
- datahub/metadata/schemas/DataHubOpenAPISchemaKey.avsc +22 -0
- datahub/metadata/schemas/DataHubPageModuleKey.avsc +21 -0
- datahub/metadata/schemas/DataHubPageModuleProperties.avsc +298 -0
- datahub/metadata/schemas/DataHubPageTemplateKey.avsc +21 -0
- datahub/metadata/schemas/DataHubPageTemplateProperties.avsc +251 -0
- datahub/metadata/schemas/DataHubPolicyInfo.avsc +12 -1
- datahub/metadata/schemas/DataJobInfo.avsc +8 -0
- datahub/metadata/schemas/DataJobInputOutput.avsc +8 -0
- datahub/metadata/schemas/DataJobKey.avsc +1 -0
- datahub/metadata/schemas/DataProcessInstanceInput.avsc +2 -1
- datahub/metadata/schemas/DataProcessInstanceOutput.avsc +2 -1
- datahub/metadata/schemas/DataProcessKey.avsc +8 -0
- datahub/metadata/schemas/DataProductKey.avsc +3 -1
- datahub/metadata/schemas/DataProductProperties.avsc +1 -1
- datahub/metadata/schemas/DataTransformLogic.avsc +4 -2
- datahub/metadata/schemas/DatasetKey.avsc +11 -1
- datahub/metadata/schemas/DatasetUsageStatistics.avsc +8 -0
- datahub/metadata/schemas/Deprecation.avsc +2 -0
- datahub/metadata/schemas/DomainKey.avsc +2 -1
- datahub/metadata/schemas/ExecutionRequestInput.avsc +5 -0
- datahub/metadata/schemas/FormInfo.avsc +5 -0
- datahub/metadata/schemas/GlobalSettingsInfo.avsc +134 -0
- datahub/metadata/schemas/GlossaryNodeKey.avsc +2 -1
- datahub/metadata/schemas/GlossaryTermKey.avsc +3 -1
- datahub/metadata/schemas/IcebergWarehouseInfo.avsc +8 -0
- datahub/metadata/schemas/IncidentInfo.avsc +3 -3
- datahub/metadata/schemas/InstitutionalMemory.avsc +31 -0
- datahub/metadata/schemas/LogicalParent.avsc +145 -0
- datahub/metadata/schemas/MLFeatureKey.avsc +1 -0
- datahub/metadata/schemas/MLFeatureTableKey.avsc +1 -0
- datahub/metadata/schemas/MLModelDeploymentKey.avsc +8 -0
- datahub/metadata/schemas/MLModelDeploymentProperties.avsc +3 -0
- datahub/metadata/schemas/MLModelGroupKey.avsc +11 -1
- datahub/metadata/schemas/MLModelGroupProperties.avsc +16 -0
- datahub/metadata/schemas/MLModelKey.avsc +9 -0
- datahub/metadata/schemas/MLPrimaryKeyKey.avsc +1 -0
- datahub/metadata/schemas/MetadataChangeEvent.avsc +189 -47
- datahub/metadata/schemas/MetadataChangeLog.avsc +65 -44
- datahub/metadata/schemas/MetadataChangeProposal.avsc +64 -0
- datahub/metadata/schemas/NotebookKey.avsc +1 -0
- datahub/metadata/schemas/Operation.avsc +21 -2
- datahub/metadata/schemas/Ownership.avsc +69 -0
- datahub/metadata/schemas/QueryProperties.avsc +24 -2
- datahub/metadata/schemas/QuerySubjects.avsc +1 -12
- datahub/metadata/schemas/RelationshipChangeEvent.avsc +215 -0
- datahub/metadata/schemas/SchemaFieldKey.avsc +4 -1
- datahub/metadata/schemas/Siblings.avsc +2 -0
- datahub/metadata/schemas/SlackUserInfo.avsc +160 -0
- datahub/metadata/schemas/StructuredProperties.avsc +69 -0
- datahub/metadata/schemas/StructuredPropertySettings.avsc +9 -0
- datahub/metadata/schemas/SystemMetadata.avsc +147 -0
- datahub/metadata/schemas/UpstreamLineage.avsc +9 -0
- datahub/metadata/schemas/__init__.py +3 -3
- datahub/sdk/__init__.py +7 -0
- datahub/sdk/_all_entities.py +15 -0
- datahub/sdk/_shared.py +393 -10
- datahub/sdk/_utils.py +4 -0
- datahub/sdk/chart.py +386 -0
- datahub/sdk/container.py +7 -0
- datahub/sdk/dashboard.py +453 -0
- datahub/sdk/dataflow.py +309 -0
- datahub/sdk/datajob.py +367 -0
- datahub/sdk/dataset.py +180 -4
- datahub/sdk/entity.py +99 -3
- datahub/sdk/entity_client.py +154 -12
- datahub/sdk/lineage_client.py +943 -0
- datahub/sdk/main_client.py +83 -8
- datahub/sdk/mlmodel.py +383 -0
- datahub/sdk/mlmodelgroup.py +240 -0
- datahub/sdk/search_client.py +85 -8
- datahub/sdk/search_filters.py +393 -68
- datahub/secret/datahub_secret_store.py +5 -1
- datahub/secret/environment_secret_store.py +29 -0
- datahub/secret/file_secret_store.py +49 -0
- datahub/specific/aspect_helpers/fine_grained_lineage.py +76 -0
- datahub/specific/aspect_helpers/siblings.py +73 -0
- datahub/specific/aspect_helpers/structured_properties.py +27 -0
- datahub/specific/chart.py +1 -1
- datahub/specific/datajob.py +15 -1
- datahub/specific/dataproduct.py +4 -0
- datahub/specific/dataset.py +51 -59
- datahub/sql_parsing/_sqlglot_patch.py +1 -2
- datahub/sql_parsing/fingerprint_utils.py +6 -0
- datahub/sql_parsing/split_statements.py +30 -3
- datahub/sql_parsing/sql_parsing_aggregator.py +144 -63
- datahub/sql_parsing/sqlglot_lineage.py +517 -44
- datahub/sql_parsing/sqlglot_utils.py +30 -18
- datahub/sql_parsing/tool_meta_extractor.py +25 -2
- datahub/telemetry/telemetry.py +30 -16
- datahub/testing/check_imports.py +1 -1
- datahub/testing/docker_utils.py +8 -2
- datahub/testing/mce_helpers.py +421 -0
- datahub/testing/mcp_diff.py +17 -21
- datahub/testing/sdk_v2_helpers.py +18 -0
- datahub/upgrade/upgrade.py +86 -30
- datahub/utilities/file_backed_collections.py +14 -15
- datahub/utilities/hive_schema_to_avro.py +2 -2
- datahub/utilities/ingest_utils.py +2 -2
- datahub/utilities/is_pytest.py +3 -2
- datahub/utilities/logging_manager.py +30 -7
- datahub/utilities/mapping.py +29 -2
- datahub/utilities/sample_data.py +5 -4
- datahub/utilities/server_config_util.py +298 -10
- datahub/utilities/sqlalchemy_query_combiner.py +6 -4
- datahub/utilities/stats_collections.py +4 -0
- datahub/utilities/threaded_iterator_executor.py +16 -3
- datahub/utilities/urn_encoder.py +1 -1
- datahub/utilities/urns/urn.py +41 -2
- datahub/emitter/sql_parsing_builder.py +0 -306
- datahub/ingestion/source/redshift/lineage_v2.py +0 -458
- datahub/ingestion/source/vertexai.py +0 -697
- datahub/ingestion/transformer/system_metadata_transformer.py +0 -45
- {acryl_datahub-1.0.0rc18.dist-info → acryl_datahub-1.3.0.1rc9.dist-info/licenses}/LICENSE +0 -0
- {acryl_datahub-1.0.0rc18.dist-info → acryl_datahub-1.3.0.1rc9.dist-info}/top_level.txt +0 -0
|
@@ -162,6 +162,75 @@
|
|
|
162
162
|
"name": "source",
|
|
163
163
|
"default": null,
|
|
164
164
|
"doc": "Source information for the ownership"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"Searchable": {
|
|
168
|
+
"/actor": {
|
|
169
|
+
"fieldName": "ownerAttributionActors",
|
|
170
|
+
"fieldType": "URN",
|
|
171
|
+
"queryByDefault": false
|
|
172
|
+
},
|
|
173
|
+
"/source": {
|
|
174
|
+
"fieldName": "ownerAttributionSources",
|
|
175
|
+
"fieldType": "URN",
|
|
176
|
+
"queryByDefault": false
|
|
177
|
+
},
|
|
178
|
+
"/time": {
|
|
179
|
+
"fieldName": "ownerAttributionDates",
|
|
180
|
+
"fieldType": "DATETIME",
|
|
181
|
+
"queryByDefault": false
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
"type": [
|
|
185
|
+
"null",
|
|
186
|
+
{
|
|
187
|
+
"type": "record",
|
|
188
|
+
"name": "MetadataAttribution",
|
|
189
|
+
"namespace": "com.linkedin.pegasus2avro.common",
|
|
190
|
+
"fields": [
|
|
191
|
+
{
|
|
192
|
+
"type": "long",
|
|
193
|
+
"name": "time",
|
|
194
|
+
"doc": "When this metadata was updated."
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"java": {
|
|
198
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
199
|
+
},
|
|
200
|
+
"type": "string",
|
|
201
|
+
"name": "actor",
|
|
202
|
+
"doc": "The entity (e.g. a member URN) responsible for applying the assocated metadata. This can\neither be a user (in case of UI edits) or the datahub system for automation.",
|
|
203
|
+
"Urn": "Urn"
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"java": {
|
|
207
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
208
|
+
},
|
|
209
|
+
"type": [
|
|
210
|
+
"null",
|
|
211
|
+
"string"
|
|
212
|
+
],
|
|
213
|
+
"name": "source",
|
|
214
|
+
"default": null,
|
|
215
|
+
"doc": "The DataHub source responsible for applying the associated metadata. This will only be filled out\nwhen a DataHub source is responsible. This includes the specific metadata test urn, the automation urn.",
|
|
216
|
+
"Urn": "Urn"
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"type": {
|
|
220
|
+
"type": "map",
|
|
221
|
+
"values": "string"
|
|
222
|
+
},
|
|
223
|
+
"name": "sourceDetail",
|
|
224
|
+
"default": {},
|
|
225
|
+
"doc": "The details associated with why this metadata was applied. For example, this could include\nthe actual regex rule, sql statement, ingestion pipeline ID, etc."
|
|
226
|
+
}
|
|
227
|
+
],
|
|
228
|
+
"doc": "Information about who, why, and how this metadata was applied"
|
|
229
|
+
}
|
|
230
|
+
],
|
|
231
|
+
"name": "attribution",
|
|
232
|
+
"default": null,
|
|
233
|
+
"doc": "Information about who, why, and how this metadata was applied"
|
|
165
234
|
}
|
|
166
235
|
],
|
|
167
236
|
"doc": "Ownership information"
|
|
@@ -6,6 +6,21 @@
|
|
|
6
6
|
"name": "QueryProperties",
|
|
7
7
|
"namespace": "com.linkedin.pegasus2avro.query",
|
|
8
8
|
"fields": [
|
|
9
|
+
{
|
|
10
|
+
"Searchable": {
|
|
11
|
+
"/*": {
|
|
12
|
+
"fieldType": "TEXT",
|
|
13
|
+
"queryByDefault": true
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"type": {
|
|
17
|
+
"type": "map",
|
|
18
|
+
"values": "string"
|
|
19
|
+
},
|
|
20
|
+
"name": "customProperties",
|
|
21
|
+
"default": {},
|
|
22
|
+
"doc": "Custom property bag."
|
|
23
|
+
},
|
|
9
24
|
{
|
|
10
25
|
"type": {
|
|
11
26
|
"type": "record",
|
|
@@ -21,12 +36,14 @@
|
|
|
21
36
|
"type": {
|
|
22
37
|
"type": "enum",
|
|
23
38
|
"symbolDocs": {
|
|
24
|
-
"SQL": "A SQL Query"
|
|
39
|
+
"SQL": "A SQL Query",
|
|
40
|
+
"UNKNOWN": "Unknown query language"
|
|
25
41
|
},
|
|
26
42
|
"name": "QueryLanguage",
|
|
27
43
|
"namespace": "com.linkedin.pegasus2avro.query",
|
|
28
44
|
"symbols": [
|
|
29
|
-
"SQL"
|
|
45
|
+
"SQL",
|
|
46
|
+
"UNKNOWN"
|
|
30
47
|
]
|
|
31
48
|
},
|
|
32
49
|
"name": "language",
|
|
@@ -154,6 +171,11 @@
|
|
|
154
171
|
"doc": "Audit stamp capturing the time and actor who last modified the Query."
|
|
155
172
|
},
|
|
156
173
|
{
|
|
174
|
+
"Searchable": {
|
|
175
|
+
"addToFilters": false,
|
|
176
|
+
"fieldType": "URN",
|
|
177
|
+
"queryByDefault": false
|
|
178
|
+
},
|
|
157
179
|
"java": {
|
|
158
180
|
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
159
181
|
},
|
|
@@ -15,13 +15,6 @@
|
|
|
15
15
|
"namespace": "com.linkedin.pegasus2avro.query",
|
|
16
16
|
"fields": [
|
|
17
17
|
{
|
|
18
|
-
"Relationship": {
|
|
19
|
-
"entityTypes": [
|
|
20
|
-
"dataset",
|
|
21
|
-
"schemaField"
|
|
22
|
-
],
|
|
23
|
-
"name": "IsAssociatedWith"
|
|
24
|
-
},
|
|
25
18
|
"Searchable": {
|
|
26
19
|
"fieldName": "entities",
|
|
27
20
|
"fieldType": "URN"
|
|
@@ -32,11 +25,7 @@
|
|
|
32
25
|
"type": "string",
|
|
33
26
|
"name": "entity",
|
|
34
27
|
"doc": "An entity which is the subject of a query.",
|
|
35
|
-
"Urn": "Urn"
|
|
36
|
-
"entityTypes": [
|
|
37
|
-
"dataset",
|
|
38
|
-
"schemaField"
|
|
39
|
-
]
|
|
28
|
+
"Urn": "Urn"
|
|
40
29
|
}
|
|
41
30
|
],
|
|
42
31
|
"doc": "A single subject of a particular query.\nIn the future, we may evolve this model to include richer details\nabout the Query Subject in relation to the query."
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "record",
|
|
3
|
+
"Event": {
|
|
4
|
+
"name": "relationshipChangeEvent"
|
|
5
|
+
},
|
|
6
|
+
"name": "RelationshipChangeEvent",
|
|
7
|
+
"namespace": "com.linkedin.pegasus2avro.platform.event.v1",
|
|
8
|
+
"fields": [
|
|
9
|
+
{
|
|
10
|
+
"type": [
|
|
11
|
+
"null",
|
|
12
|
+
{
|
|
13
|
+
"type": "record",
|
|
14
|
+
"name": "KafkaAuditHeader",
|
|
15
|
+
"namespace": "com.linkedin.events",
|
|
16
|
+
"fields": [
|
|
17
|
+
{
|
|
18
|
+
"compliance": [
|
|
19
|
+
{
|
|
20
|
+
"policy": "EVENT_TIME"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"type": "long",
|
|
24
|
+
"name": "time",
|
|
25
|
+
"doc": "The time at which the event was emitted into kafka."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"compliance": "NONE",
|
|
29
|
+
"type": "string",
|
|
30
|
+
"name": "server",
|
|
31
|
+
"doc": "The fully qualified name of the host from which the event is being emitted."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"compliance": "NONE",
|
|
35
|
+
"type": [
|
|
36
|
+
"null",
|
|
37
|
+
"string"
|
|
38
|
+
],
|
|
39
|
+
"name": "instance",
|
|
40
|
+
"default": null,
|
|
41
|
+
"doc": "The instance on the server from which the event is being emitted. e.g. i001"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"compliance": "NONE",
|
|
45
|
+
"type": "string",
|
|
46
|
+
"name": "appName",
|
|
47
|
+
"doc": "The name of the application from which the event is being emitted. see go/appname"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"compliance": "NONE",
|
|
51
|
+
"type": {
|
|
52
|
+
"type": "fixed",
|
|
53
|
+
"name": "UUID",
|
|
54
|
+
"namespace": "com.linkedin.events",
|
|
55
|
+
"size": 16
|
|
56
|
+
},
|
|
57
|
+
"name": "messageId",
|
|
58
|
+
"doc": "A unique identifier for the message"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"compliance": "NONE",
|
|
62
|
+
"type": [
|
|
63
|
+
"null",
|
|
64
|
+
"int"
|
|
65
|
+
],
|
|
66
|
+
"name": "auditVersion",
|
|
67
|
+
"default": null,
|
|
68
|
+
"doc": "The version that is being used for auditing. In version 0, the audit trail buckets events into 10 minute audit windows based on the EventHeader timestamp. In version 1, the audit trail buckets events as follows: if the schema has an outer KafkaAuditHeader, use the outer audit header timestamp for bucketing; else if the EventHeader has an inner KafkaAuditHeader use that inner audit header's timestamp for bucketing"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"compliance": "NONE",
|
|
72
|
+
"type": [
|
|
73
|
+
"null",
|
|
74
|
+
"string"
|
|
75
|
+
],
|
|
76
|
+
"name": "fabricUrn",
|
|
77
|
+
"default": null,
|
|
78
|
+
"doc": "The fabricUrn of the host from which the event is being emitted. Fabric Urn in the format of urn:li:fabric:{fabric_name}. See go/fabric."
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"compliance": "NONE",
|
|
82
|
+
"type": [
|
|
83
|
+
"null",
|
|
84
|
+
"string"
|
|
85
|
+
],
|
|
86
|
+
"name": "clusterConnectionString",
|
|
87
|
+
"default": null,
|
|
88
|
+
"doc": "This is a String that the client uses to establish some kind of connection with the Kafka cluster. The exact format of it depends on specific versions of clients and brokers. This information could potentially identify the fabric and cluster with which the client is producing to or consuming from."
|
|
89
|
+
}
|
|
90
|
+
],
|
|
91
|
+
"doc": "This header records information about the context of an event as it is emitted into kafka and is intended to be used by the kafka audit application. For more information see go/kafkaauditheader"
|
|
92
|
+
}
|
|
93
|
+
],
|
|
94
|
+
"name": "auditHeader",
|
|
95
|
+
"default": null,
|
|
96
|
+
"doc": "Kafka audit header containing metadata about the message itself.\nIncludes information like message ID, timestamp, and server details."
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"java": {
|
|
100
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
101
|
+
},
|
|
102
|
+
"type": "string",
|
|
103
|
+
"name": "sourceUrn",
|
|
104
|
+
"doc": "The URN (Uniform Resource Name) of the source entity in the relationship.\nIn a downstream relationship example, this would be the URN of the upstream dataset.",
|
|
105
|
+
"Urn": "Urn"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"java": {
|
|
109
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
110
|
+
},
|
|
111
|
+
"type": "string",
|
|
112
|
+
"name": "destinationUrn",
|
|
113
|
+
"doc": "The URN of the destination entity in the relationship.\nIn a downstream relationship example, this would be the URN of the downstream dataset.",
|
|
114
|
+
"Urn": "Urn"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"type": {
|
|
118
|
+
"type": "enum",
|
|
119
|
+
"name": "RelationshipChangeOperation",
|
|
120
|
+
"namespace": "com.linkedin.pegasus2avro.platform.event.v1",
|
|
121
|
+
"symbols": [
|
|
122
|
+
"ADD",
|
|
123
|
+
"REMOVE",
|
|
124
|
+
"RESTATE"
|
|
125
|
+
]
|
|
126
|
+
},
|
|
127
|
+
"name": "operation",
|
|
128
|
+
"doc": "The operation being performed on this relationship.\nTypically includes operations like ADD, REMOVE, or RESTATE."
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"type": "string",
|
|
132
|
+
"name": "relationshipType",
|
|
133
|
+
"doc": "The type/category of relationship being established or modified.\nExamples: \"DownstreamOf\", \"Contains\", \"OwnedBy\", \"DerivedFrom\", etc."
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"type": [
|
|
137
|
+
"null",
|
|
138
|
+
"string"
|
|
139
|
+
],
|
|
140
|
+
"name": "lifecycleOwner",
|
|
141
|
+
"default": null,
|
|
142
|
+
"doc": "The system or service responsible for managing the lifecycle of this relationship.\nThis helps identify which component has authority over the relationship."
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"type": [
|
|
146
|
+
"null",
|
|
147
|
+
"string"
|
|
148
|
+
],
|
|
149
|
+
"name": "via",
|
|
150
|
+
"default": null,
|
|
151
|
+
"doc": "Information about how or through what means this relationship was established.\nCould indicate a specific pipeline, process, or tool that discovered/created the relationship."
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"type": [
|
|
155
|
+
"null",
|
|
156
|
+
{
|
|
157
|
+
"type": "map",
|
|
158
|
+
"values": "string"
|
|
159
|
+
}
|
|
160
|
+
],
|
|
161
|
+
"name": "properties",
|
|
162
|
+
"default": null,
|
|
163
|
+
"doc": "Additional custom properties associated with this relationship.\nAllows for flexible extension without changing the schema."
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"type": {
|
|
167
|
+
"type": "record",
|
|
168
|
+
"name": "AuditStamp",
|
|
169
|
+
"namespace": "com.linkedin.pegasus2avro.common",
|
|
170
|
+
"fields": [
|
|
171
|
+
{
|
|
172
|
+
"type": "long",
|
|
173
|
+
"name": "time",
|
|
174
|
+
"doc": "When did the resource/association/sub-resource move into the specific lifecycle stage represented by this AuditEvent."
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"java": {
|
|
178
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
179
|
+
},
|
|
180
|
+
"type": "string",
|
|
181
|
+
"name": "actor",
|
|
182
|
+
"doc": "The entity (e.g. a member URN) which will be credited for moving the resource/association/sub-resource into the specific lifecycle stage. It is also the one used to authorize the change.",
|
|
183
|
+
"Urn": "Urn"
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"java": {
|
|
187
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
188
|
+
},
|
|
189
|
+
"type": [
|
|
190
|
+
"null",
|
|
191
|
+
"string"
|
|
192
|
+
],
|
|
193
|
+
"name": "impersonator",
|
|
194
|
+
"default": null,
|
|
195
|
+
"doc": "The entity (e.g. a service URN) which performs the change on behalf of the Actor and must be authorized to act as the Actor.",
|
|
196
|
+
"Urn": "Urn"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"type": [
|
|
200
|
+
"null",
|
|
201
|
+
"string"
|
|
202
|
+
],
|
|
203
|
+
"name": "message",
|
|
204
|
+
"default": null,
|
|
205
|
+
"doc": "Additional context around how DataHub was informed of the particular change. For example: was the change created by an automated process, or manually."
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
"doc": "Data captured on a resource/association/sub-resource level giving insight into when that resource/association/sub-resource moved into a particular lifecycle stage, and who acted to move it into that specific lifecycle stage."
|
|
209
|
+
},
|
|
210
|
+
"name": "auditStamp",
|
|
211
|
+
"doc": "Stores information about who made this change and when.\nContains the actor (user or system) that performed the action and the timestamp."
|
|
212
|
+
}
|
|
213
|
+
],
|
|
214
|
+
"doc": "Kafka event for proposing a relationship change between two entities.\nFor example, when dataset1 establishes a new downstream relationship with dataset2."
|
|
215
|
+
}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "record",
|
|
3
|
+
"Aspect": {
|
|
4
|
+
"name": "slackUserInfo"
|
|
5
|
+
},
|
|
6
|
+
"name": "SlackUserInfo",
|
|
7
|
+
"namespace": "com.linkedin.pegasus2avro.dataplatform.slack",
|
|
8
|
+
"fields": [
|
|
9
|
+
{
|
|
10
|
+
"Relationship": {
|
|
11
|
+
"entityTypes": [
|
|
12
|
+
"dataPlatformInstance"
|
|
13
|
+
],
|
|
14
|
+
"name": "PartOfSlackWorkspace"
|
|
15
|
+
},
|
|
16
|
+
"java": {
|
|
17
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
18
|
+
},
|
|
19
|
+
"type": "string",
|
|
20
|
+
"name": "slackInstance",
|
|
21
|
+
"doc": "The dataplatform instance that this Slack member belongs to.",
|
|
22
|
+
"Urn": "Urn",
|
|
23
|
+
"entityTypes": [
|
|
24
|
+
"dataPlatformInstance"
|
|
25
|
+
]
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"type": "string",
|
|
29
|
+
"name": "id",
|
|
30
|
+
"doc": "The unique identifier for the Slack member."
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"type": "string",
|
|
34
|
+
"name": "name",
|
|
35
|
+
"doc": "The username of the Slack member."
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"type": "string",
|
|
39
|
+
"name": "realName",
|
|
40
|
+
"doc": "The real name of the Slack member."
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"type": "string",
|
|
44
|
+
"name": "displayName",
|
|
45
|
+
"doc": "The display name of the Slack member."
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"type": [
|
|
49
|
+
"null",
|
|
50
|
+
"string"
|
|
51
|
+
],
|
|
52
|
+
"name": "email",
|
|
53
|
+
"default": null,
|
|
54
|
+
"doc": "The email associated with the Slack member."
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"type": "string",
|
|
58
|
+
"name": "teamId",
|
|
59
|
+
"doc": "The ID associated with the Slack team."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"type": "boolean",
|
|
63
|
+
"name": "isDeleted",
|
|
64
|
+
"doc": "Whether the member is deleted or not."
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"type": "boolean",
|
|
68
|
+
"name": "isAdmin",
|
|
69
|
+
"doc": "Whether the member is an admin."
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"type": "boolean",
|
|
73
|
+
"name": "isOwner",
|
|
74
|
+
"doc": "Whether the member is an owner."
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"type": "boolean",
|
|
78
|
+
"name": "isPrimaryOwner",
|
|
79
|
+
"doc": "Whether the member is a primary owner."
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"type": "boolean",
|
|
83
|
+
"name": "isBot",
|
|
84
|
+
"doc": "Whether the member is a bot."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"type": [
|
|
88
|
+
"null",
|
|
89
|
+
"string"
|
|
90
|
+
],
|
|
91
|
+
"name": "timezone",
|
|
92
|
+
"default": null,
|
|
93
|
+
"doc": "The timezone of the Slack member."
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"type": [
|
|
97
|
+
"null",
|
|
98
|
+
"int"
|
|
99
|
+
],
|
|
100
|
+
"name": "timezoneOffset",
|
|
101
|
+
"default": null,
|
|
102
|
+
"doc": "The timezone offset of the Slack member."
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"type": [
|
|
106
|
+
"null",
|
|
107
|
+
"string"
|
|
108
|
+
],
|
|
109
|
+
"name": "title",
|
|
110
|
+
"default": null,
|
|
111
|
+
"doc": "The title of the Slack member."
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"type": [
|
|
115
|
+
"null",
|
|
116
|
+
"string"
|
|
117
|
+
],
|
|
118
|
+
"name": "phone",
|
|
119
|
+
"default": null,
|
|
120
|
+
"doc": "The phone number of the Slack member."
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"type": [
|
|
124
|
+
"null",
|
|
125
|
+
"string"
|
|
126
|
+
],
|
|
127
|
+
"name": "profilePictureUrl",
|
|
128
|
+
"default": null,
|
|
129
|
+
"doc": "The URL of the member's profile picture."
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"type": [
|
|
133
|
+
"null",
|
|
134
|
+
"string"
|
|
135
|
+
],
|
|
136
|
+
"name": "statusText",
|
|
137
|
+
"default": null,
|
|
138
|
+
"doc": "The status text of the Slack member."
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"type": [
|
|
142
|
+
"null",
|
|
143
|
+
"string"
|
|
144
|
+
],
|
|
145
|
+
"name": "statusEmoji",
|
|
146
|
+
"default": null,
|
|
147
|
+
"doc": "The status emoji of the Slack member."
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"type": [
|
|
151
|
+
"null",
|
|
152
|
+
"long"
|
|
153
|
+
],
|
|
154
|
+
"name": "lastUpdatedSeconds",
|
|
155
|
+
"default": null,
|
|
156
|
+
"doc": "The timestamp of when the member was last updated. (in seconds)"
|
|
157
|
+
}
|
|
158
|
+
],
|
|
159
|
+
"doc": "Information about a Slack user."
|
|
160
|
+
}
|
|
@@ -94,6 +94,75 @@
|
|
|
94
94
|
"name": "lastModified",
|
|
95
95
|
"default": null,
|
|
96
96
|
"doc": "Audit stamp containing who last modified this relationship edge and when"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"Searchable": {
|
|
100
|
+
"/actor": {
|
|
101
|
+
"fieldName": "structuredPropertyAttributionActors",
|
|
102
|
+
"fieldType": "URN",
|
|
103
|
+
"queryByDefault": false
|
|
104
|
+
},
|
|
105
|
+
"/source": {
|
|
106
|
+
"fieldName": "structuredPropertyAttributionSources",
|
|
107
|
+
"fieldType": "URN",
|
|
108
|
+
"queryByDefault": false
|
|
109
|
+
},
|
|
110
|
+
"/time": {
|
|
111
|
+
"fieldName": "structuredPropertyAttributionDates",
|
|
112
|
+
"fieldType": "DATETIME",
|
|
113
|
+
"queryByDefault": false
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
"type": [
|
|
117
|
+
"null",
|
|
118
|
+
{
|
|
119
|
+
"type": "record",
|
|
120
|
+
"name": "MetadataAttribution",
|
|
121
|
+
"namespace": "com.linkedin.pegasus2avro.common",
|
|
122
|
+
"fields": [
|
|
123
|
+
{
|
|
124
|
+
"type": "long",
|
|
125
|
+
"name": "time",
|
|
126
|
+
"doc": "When this metadata was updated."
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"java": {
|
|
130
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
131
|
+
},
|
|
132
|
+
"type": "string",
|
|
133
|
+
"name": "actor",
|
|
134
|
+
"doc": "The entity (e.g. a member URN) responsible for applying the assocated metadata. This can\neither be a user (in case of UI edits) or the datahub system for automation.",
|
|
135
|
+
"Urn": "Urn"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"java": {
|
|
139
|
+
"class": "com.linkedin.pegasus2avro.common.urn.Urn"
|
|
140
|
+
},
|
|
141
|
+
"type": [
|
|
142
|
+
"null",
|
|
143
|
+
"string"
|
|
144
|
+
],
|
|
145
|
+
"name": "source",
|
|
146
|
+
"default": null,
|
|
147
|
+
"doc": "The DataHub source responsible for applying the associated metadata. This will only be filled out\nwhen a DataHub source is responsible. This includes the specific metadata test urn, the automation urn.",
|
|
148
|
+
"Urn": "Urn"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"type": {
|
|
152
|
+
"type": "map",
|
|
153
|
+
"values": "string"
|
|
154
|
+
},
|
|
155
|
+
"name": "sourceDetail",
|
|
156
|
+
"default": {},
|
|
157
|
+
"doc": "The details associated with why this metadata was applied. For example, this could include\nthe actual regex rule, sql statement, ingestion pipeline ID, etc."
|
|
158
|
+
}
|
|
159
|
+
],
|
|
160
|
+
"doc": "Information about who, why, and how this metadata was applied"
|
|
161
|
+
}
|
|
162
|
+
],
|
|
163
|
+
"name": "attribution",
|
|
164
|
+
"default": null,
|
|
165
|
+
"doc": "Information about who, why, and how this metadata was applied"
|
|
97
166
|
}
|
|
98
167
|
]
|
|
99
168
|
}
|
|
@@ -33,6 +33,15 @@
|
|
|
33
33
|
"default": false,
|
|
34
34
|
"doc": "Whether or not this asset should be displayed in the asset sidebar"
|
|
35
35
|
},
|
|
36
|
+
{
|
|
37
|
+
"Searchable": {
|
|
38
|
+
"fieldType": "BOOLEAN"
|
|
39
|
+
},
|
|
40
|
+
"type": "boolean",
|
|
41
|
+
"name": "hideInAssetSummaryWhenEmpty",
|
|
42
|
+
"default": false,
|
|
43
|
+
"doc": "Whether or not this asset should be hidden in the asset sidebar (showInAssetSummary should be enabled)\nwhen its value is empty"
|
|
44
|
+
},
|
|
36
45
|
{
|
|
37
46
|
"Searchable": {
|
|
38
47
|
"fieldType": "BOOLEAN"
|