openmetadata-ingestion 1.4.8.0__py3-none-any.whl → 1.5.0.0__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 openmetadata-ingestion might be problematic. Click here for more details.

Files changed (1079) hide show
  1. _openmetadata_testutils/data/dvdrental.zip +0 -0
  2. _openmetadata_testutils/helpers/assumption.py +118 -0
  3. _openmetadata_testutils/helpers/docker.py +38 -0
  4. _openmetadata_testutils/helpers/markers.py +5 -0
  5. _openmetadata_testutils/kafka/load_csv_data.py +133 -0
  6. _openmetadata_testutils/kafka/schema_registry_container.py +31 -0
  7. _openmetadata_testutils/ometa.py +23 -0
  8. _openmetadata_testutils/postgres/conftest.py +75 -0
  9. _openmetadata_testutils/pydantic/test_utils.py +79 -0
  10. airflow_provider_openmetadata/lineage/callback.py +3 -3
  11. airflow_provider_openmetadata/lineage/config/loader.py +1 -1
  12. airflow_provider_openmetadata/lineage/runner.py +5 -5
  13. airflow_provider_openmetadata/lineage/status.py +2 -2
  14. metadata/automations/runner.py +1 -1
  15. metadata/cli/app.py +1 -3
  16. metadata/cli/dataquality.py +8 -8
  17. metadata/cli/ingest.py +8 -8
  18. metadata/cli/lineage.py +10 -5
  19. metadata/cli/profile.py +8 -8
  20. metadata/cli/usage.py +6 -8
  21. metadata/clients/aws_client.py +4 -4
  22. metadata/clients/azure_client.py +1 -1
  23. metadata/clients/domo_client.py +12 -18
  24. metadata/cmd.py +16 -20
  25. metadata/config/common.py +3 -4
  26. metadata/data_quality/api/models.py +2 -2
  27. metadata/data_quality/builders/i_validator_builder.py +100 -0
  28. metadata/{data_insight/producer/producer_interface.py → data_quality/builders/pandas_validator_builder.py} +12 -12
  29. metadata/data_quality/{validations/validator.py → builders/sqa_validator_builder.py} +7 -8
  30. metadata/data_quality/interface/pandas/pandas_test_suite_interface.py +9 -42
  31. metadata/data_quality/interface/sqlalchemy/sqa_test_suite_interface.py +7 -40
  32. metadata/data_quality/interface/test_suite_interface.py +84 -2
  33. metadata/data_quality/processor/test_case_runner.py +76 -40
  34. metadata/data_quality/runner/base_test_suite_source.py +1 -1
  35. metadata/data_quality/runner/core.py +2 -2
  36. metadata/data_quality/source/test_suite.py +17 -15
  37. metadata/data_quality/validations/base_test_handler.py +25 -5
  38. metadata/data_quality/validations/column/base/columnValueLengthsToBeBetween.py +2 -0
  39. metadata/data_quality/validations/column/base/columnValueMaxToBeBetween.py +2 -0
  40. metadata/data_quality/validations/column/base/columnValueMeanToBeBetween.py +2 -0
  41. metadata/data_quality/validations/column/base/columnValueMedianToBeBetween.py +2 -0
  42. metadata/data_quality/validations/column/base/columnValueMinToBeBetween.py +2 -0
  43. metadata/data_quality/validations/column/base/columnValueStdDevToBeBetween.py +2 -0
  44. metadata/data_quality/validations/column/base/columnValuesSumToBeBetween.py +2 -0
  45. metadata/data_quality/validations/column/base/columnValuesToBeBetween.py +24 -14
  46. metadata/data_quality/validations/column/base/columnValuesToBeInSet.py +13 -1
  47. metadata/data_quality/validations/column/base/columnValuesToBeNotInSet.py +1 -1
  48. metadata/data_quality/validations/column/pandas/columnValueLengthsToBeBetween.py +1 -1
  49. metadata/data_quality/validations/column/pandas/columnValueMaxToBeBetween.py +1 -1
  50. metadata/data_quality/validations/column/pandas/columnValueMeanToBeBetween.py +1 -1
  51. metadata/data_quality/validations/column/pandas/columnValueMedianToBeBetween.py +1 -1
  52. metadata/data_quality/validations/column/pandas/columnValueMinToBeBetween.py +1 -1
  53. metadata/data_quality/validations/column/pandas/columnValueStdDevToBeBetween.py +1 -1
  54. metadata/data_quality/validations/column/pandas/columnValuesMissingCount.py +1 -1
  55. metadata/data_quality/validations/column/pandas/columnValuesSumToBeBetween.py +1 -1
  56. metadata/data_quality/validations/column/pandas/columnValuesToBeBetween.py +1 -1
  57. metadata/data_quality/validations/column/pandas/columnValuesToBeInSet.py +1 -1
  58. metadata/data_quality/validations/column/pandas/columnValuesToBeNotInSet.py +1 -1
  59. metadata/data_quality/validations/column/pandas/columnValuesToBeNotNull.py +1 -1
  60. metadata/data_quality/validations/column/pandas/columnValuesToBeUnique.py +1 -1
  61. metadata/data_quality/validations/column/pandas/columnValuesToMatchRegex.py +1 -1
  62. metadata/data_quality/validations/column/pandas/columnValuesToNotMatchRegex.py +1 -1
  63. metadata/data_quality/validations/column/sqlalchemy/columnValueLengthsToBeBetween.py +8 -7
  64. metadata/data_quality/validations/column/sqlalchemy/columnValueMaxToBeBetween.py +1 -1
  65. metadata/data_quality/validations/column/sqlalchemy/columnValueMeanToBeBetween.py +1 -1
  66. metadata/data_quality/validations/column/sqlalchemy/columnValueMedianToBeBetween.py +1 -1
  67. metadata/data_quality/validations/column/sqlalchemy/columnValueMinToBeBetween.py +1 -1
  68. metadata/data_quality/validations/column/sqlalchemy/columnValueStdDevToBeBetween.py +1 -1
  69. metadata/data_quality/validations/column/sqlalchemy/columnValuesMissingCount.py +1 -1
  70. metadata/data_quality/validations/column/sqlalchemy/columnValuesSumToBeBetween.py +1 -1
  71. metadata/data_quality/validations/column/sqlalchemy/columnValuesToBeBetween.py +8 -3
  72. metadata/data_quality/validations/column/sqlalchemy/columnValuesToBeInSet.py +1 -1
  73. metadata/data_quality/validations/column/sqlalchemy/columnValuesToBeNotInSet.py +1 -1
  74. metadata/data_quality/validations/column/sqlalchemy/columnValuesToBeNotNull.py +1 -1
  75. metadata/data_quality/validations/column/sqlalchemy/columnValuesToBeUnique.py +1 -1
  76. metadata/data_quality/validations/column/sqlalchemy/columnValuesToMatchRegex.py +1 -1
  77. metadata/data_quality/validations/column/sqlalchemy/columnValuesToNotMatchRegex.py +1 -1
  78. metadata/data_quality/validations/models.py +21 -0
  79. metadata/data_quality/validations/runtime_param_setter/param_setter.py +42 -0
  80. metadata/data_quality/validations/runtime_param_setter/param_setter_factory.py +54 -0
  81. metadata/data_quality/validations/runtime_param_setter/table_diff_params_setter.py +190 -0
  82. metadata/data_quality/validations/table/base/tableRowCountToBeBetween.py +4 -13
  83. metadata/data_quality/validations/table/pandas/tableRowInsertedCountToBeBetween.py +2 -2
  84. metadata/data_quality/validations/table/sqlalchemy/tableDiff.py +434 -0
  85. metadata/examples/workflows/alationsink.yaml +34 -0
  86. metadata/examples/workflows/bigquery_profiler.yaml +1 -1
  87. metadata/examples/workflows/dbtcloud.yaml +26 -0
  88. metadata/examples/workflows/deltalake.yaml +6 -5
  89. metadata/examples/workflows/flink.yaml +33 -0
  90. metadata/examples/workflows/saperp.yaml +24 -0
  91. metadata/examples/workflows/synapse.yaml +24 -0
  92. metadata/generated/antlr/EntityLinkLexer.py +380 -352
  93. metadata/generated/schema/analytics/__init__.py +1 -1
  94. metadata/generated/schema/analytics/basic.py +19 -16
  95. metadata/generated/schema/analytics/reportData.py +26 -18
  96. metadata/generated/schema/analytics/reportDataType/__init__.py +1 -1
  97. metadata/generated/schema/analytics/reportDataType/aggregatedCostAnalysisReportData.py +64 -43
  98. metadata/generated/schema/analytics/reportDataType/entityReportData.py +35 -24
  99. metadata/generated/schema/analytics/reportDataType/rawCostAnalysisReportData.py +18 -11
  100. metadata/generated/schema/analytics/reportDataType/webAnalyticEntityViewReportData.py +24 -16
  101. metadata/generated/schema/analytics/reportDataType/webAnalyticUserActivityReportData.py +23 -12
  102. metadata/generated/schema/analytics/webAnalyticEvent.py +75 -42
  103. metadata/generated/schema/analytics/webAnalyticEventData.py +17 -12
  104. metadata/generated/schema/analytics/webAnalyticEventType/__init__.py +1 -1
  105. metadata/generated/schema/analytics/webAnalyticEventType/customEvent.py +24 -16
  106. metadata/generated/schema/analytics/webAnalyticEventType/pageViewEvent.py +31 -21
  107. metadata/generated/schema/api/__init__.py +1 -1
  108. metadata/generated/schema/api/addGlossaryToAssetsRequest.py +28 -18
  109. metadata/generated/schema/api/analytics/__init__.py +1 -1
  110. metadata/generated/schema/api/analytics/createWebAnalyticEvent.py +33 -20
  111. metadata/generated/schema/api/automations/__init__.py +1 -1
  112. metadata/generated/schema/api/automations/createWorkflow.py +46 -27
  113. metadata/generated/schema/api/bulkAssets.py +14 -8
  114. metadata/generated/schema/api/classification/__init__.py +1 -1
  115. metadata/generated/schema/api/classification/createClassification.py +28 -15
  116. metadata/generated/schema/api/classification/createTag.py +43 -24
  117. metadata/generated/schema/api/classification/loadTags.py +11 -6
  118. metadata/generated/schema/api/createBot.py +30 -14
  119. metadata/generated/schema/api/createEventPublisherJob.py +42 -26
  120. metadata/generated/schema/api/createType.py +33 -21
  121. metadata/generated/schema/api/data/__init__.py +1 -1
  122. metadata/generated/schema/api/data/createAPICollection.py +97 -0
  123. metadata/generated/schema/api/data/createAPIEndpoint.py +107 -0
  124. metadata/generated/schema/api/data/createChart.py +71 -39
  125. metadata/generated/schema/api/data/createContainer.py +105 -68
  126. metadata/generated/schema/api/data/createCustomProperty.py +22 -14
  127. metadata/generated/schema/api/data/createDashboard.py +95 -58
  128. metadata/generated/schema/api/data/createDashboardDataModel.py +88 -51
  129. metadata/generated/schema/api/data/createDatabase.py +85 -53
  130. metadata/generated/schema/api/data/createDatabaseSchema.py +81 -50
  131. metadata/generated/schema/api/data/createGlossary.py +51 -34
  132. metadata/generated/schema/api/data/createGlossaryTerm.py +75 -48
  133. metadata/generated/schema/api/data/createMlModel.py +105 -68
  134. metadata/generated/schema/api/data/createPipeline.py +95 -58
  135. metadata/generated/schema/api/data/createQuery.py +85 -54
  136. metadata/generated/schema/api/data/createSearchIndex.py +76 -49
  137. metadata/generated/schema/api/data/createStoredProcedure.py +70 -46
  138. metadata/generated/schema/api/data/createTable.py +87 -58
  139. metadata/generated/schema/api/data/createTableProfile.py +16 -11
  140. metadata/generated/schema/api/data/createTopic.py +120 -75
  141. metadata/generated/schema/api/data/loadGlossary.py +12 -8
  142. metadata/generated/schema/api/data/restoreEntity.py +11 -7
  143. metadata/generated/schema/api/dataInsight/__init__.py +1 -1
  144. metadata/generated/schema/api/dataInsight/createDataInsightChart.py +41 -26
  145. metadata/generated/schema/api/dataInsight/custom/__init__.py +3 -0
  146. metadata/generated/schema/api/dataInsight/custom/createDataInsightCustomChart.py +53 -0
  147. metadata/generated/schema/api/dataInsight/kpi/__init__.py +1 -1
  148. metadata/generated/schema/api/dataInsight/kpi/createKpiRequest.py +49 -21
  149. metadata/generated/schema/api/docStore/__init__.py +1 -1
  150. metadata/generated/schema/api/docStore/createDocument.py +24 -12
  151. metadata/generated/schema/api/domains/__init__.py +1 -1
  152. metadata/generated/schema/api/domains/createDataProduct.py +50 -30
  153. metadata/generated/schema/api/domains/createDomain.py +38 -25
  154. metadata/generated/schema/api/feed/__init__.py +1 -1
  155. metadata/generated/schema/api/feed/closeTask.py +17 -10
  156. metadata/generated/schema/api/feed/createPost.py +16 -11
  157. metadata/generated/schema/api/feed/createSuggestion.py +56 -16
  158. metadata/generated/schema/api/feed/createThread.py +55 -34
  159. metadata/generated/schema/api/feed/resolveTask.py +21 -14
  160. metadata/generated/schema/api/feed/threadCount.py +29 -19
  161. metadata/generated/schema/api/lineage/__init__.py +1 -1
  162. metadata/generated/schema/api/lineage/addLineage.py +11 -6
  163. metadata/generated/schema/api/openMetadataServerVersion.py +18 -11
  164. metadata/generated/schema/api/policies/__init__.py +1 -1
  165. metadata/generated/schema/api/policies/createPolicy.py +38 -18
  166. metadata/generated/schema/api/services/__init__.py +1 -1
  167. metadata/generated/schema/api/services/createApiService.py +60 -0
  168. metadata/generated/schema/api/services/createDashboardService.py +42 -28
  169. metadata/generated/schema/api/services/createDatabaseService.py +42 -28
  170. metadata/generated/schema/api/services/createMessagingService.py +45 -29
  171. metadata/generated/schema/api/services/createMetadataService.py +34 -20
  172. metadata/generated/schema/api/services/createMlModelService.py +42 -28
  173. metadata/generated/schema/api/services/createPipelineService.py +50 -34
  174. metadata/generated/schema/api/services/createSearchService.py +45 -29
  175. metadata/generated/schema/api/services/createStorageService.py +45 -29
  176. metadata/generated/schema/api/services/ingestionPipelines/__init__.py +1 -1
  177. metadata/generated/schema/api/services/ingestionPipelines/createIngestionPipeline.py +45 -24
  178. metadata/generated/schema/api/setOwner.py +17 -8
  179. metadata/generated/schema/api/teams/__init__.py +1 -1
  180. metadata/generated/schema/api/teams/createPersona.py +32 -15
  181. metadata/generated/schema/api/teams/createRole.py +31 -16
  182. metadata/generated/schema/api/teams/createTeam.py +72 -46
  183. metadata/generated/schema/api/teams/createUser.py +75 -47
  184. metadata/generated/schema/api/tests/__init__.py +1 -1
  185. metadata/generated/schema/api/tests/createCustomMetric.py +38 -26
  186. metadata/generated/schema/api/tests/createLogicalTestCases.py +14 -10
  187. metadata/generated/schema/api/tests/createTestCase.py +46 -26
  188. metadata/generated/schema/api/tests/createTestCaseResolutionStatus.py +25 -17
  189. metadata/generated/schema/api/tests/createTestDefinition.py +29 -15
  190. metadata/generated/schema/api/tests/createTestSuite.py +50 -27
  191. metadata/generated/schema/api/voteRequest.py +12 -6
  192. metadata/generated/schema/auth/__init__.py +1 -1
  193. metadata/generated/schema/auth/basicAuth.py +9 -6
  194. metadata/generated/schema/auth/basicLoginRequest.py +10 -7
  195. metadata/generated/schema/auth/changePasswordRequest.py +18 -13
  196. metadata/generated/schema/auth/createPersonalToken.py +9 -6
  197. metadata/generated/schema/auth/emailRequest.py +9 -6
  198. metadata/generated/schema/auth/emailVerificationToken.py +17 -13
  199. metadata/generated/schema/auth/generateToken.py +7 -5
  200. metadata/generated/schema/auth/jwtAuth.py +15 -9
  201. metadata/generated/schema/auth/loginRequest.py +10 -7
  202. metadata/generated/schema/auth/logoutRequest.py +14 -9
  203. metadata/generated/schema/auth/passwordResetRequest.py +16 -12
  204. metadata/generated/schema/auth/passwordResetToken.py +27 -18
  205. metadata/generated/schema/auth/personalAccessToken.py +21 -16
  206. metadata/generated/schema/auth/refreshToken.py +21 -16
  207. metadata/generated/schema/auth/registrationRequest.py +13 -10
  208. metadata/generated/schema/auth/revokePersonalToken.py +11 -7
  209. metadata/generated/schema/auth/revokeToken.py +7 -5
  210. metadata/generated/schema/auth/serviceTokenEnum.py +1 -1
  211. metadata/generated/schema/auth/ssoAuth.py +24 -17
  212. metadata/generated/schema/auth/tokenRefreshRequest.py +11 -6
  213. metadata/generated/schema/configuration/__init__.py +1 -1
  214. metadata/generated/schema/configuration/appsPrivateConfiguration.py +23 -17
  215. metadata/generated/schema/configuration/authConfig.py +31 -22
  216. metadata/generated/schema/configuration/authenticationConfiguration.py +46 -33
  217. metadata/generated/schema/configuration/authorizerConfiguration.py +43 -37
  218. metadata/generated/schema/configuration/changeEventConfiguration.py +7 -5
  219. metadata/generated/schema/configuration/dataQualityConfiguration.py +10 -7
  220. metadata/generated/schema/configuration/elasticSearchConfiguration.py +52 -34
  221. metadata/generated/schema/configuration/eventHandlerConfiguration.py +10 -7
  222. metadata/generated/schema/configuration/fernetConfiguration.py +9 -6
  223. metadata/generated/schema/configuration/jwtTokenConfiguration.py +15 -12
  224. metadata/generated/schema/configuration/kafkaEventConfiguration.py +50 -36
  225. metadata/generated/schema/configuration/ldapConfiguration.py +72 -57
  226. metadata/generated/schema/configuration/ldapTrustStoreConfig/__init__.py +1 -1
  227. metadata/generated/schema/configuration/ldapTrustStoreConfig/customTrustManagerConfig.py +23 -17
  228. metadata/generated/schema/configuration/ldapTrustStoreConfig/hostNameConfig.py +13 -8
  229. metadata/generated/schema/configuration/ldapTrustStoreConfig/jvmDefaultConfig.py +10 -7
  230. metadata/generated/schema/configuration/ldapTrustStoreConfig/trustAllConfig.py +11 -7
  231. metadata/generated/schema/configuration/ldapTrustStoreConfig/truststoreConfig.py +23 -16
  232. metadata/generated/schema/configuration/limitsConfiguration.py +30 -0
  233. metadata/generated/schema/configuration/loginConfiguration.py +21 -14
  234. metadata/generated/schema/configuration/logoConfiguration.py +16 -13
  235. metadata/generated/schema/configuration/pipelineServiceClientConfiguration.py +80 -49
  236. metadata/generated/schema/configuration/profilerConfiguration.py +18 -11
  237. metadata/generated/schema/configuration/slackAppConfiguration.py +27 -11
  238. metadata/generated/schema/configuration/taskNotificationConfiguration.py +11 -6
  239. metadata/generated/schema/configuration/testResultNotificationConfiguration.py +21 -14
  240. metadata/generated/schema/configuration/themeConfiguration.py +42 -23
  241. metadata/generated/schema/configuration/uiThemePreference.py +19 -12
  242. metadata/generated/schema/dataInsight/__init__.py +1 -1
  243. metadata/generated/schema/dataInsight/custom/__init__.py +3 -0
  244. metadata/generated/schema/dataInsight/custom/dataInsightCustomChart.py +111 -0
  245. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResult.py +21 -0
  246. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResultList.py +25 -0
  247. metadata/generated/schema/dataInsight/custom/formulaHolder.py +24 -0
  248. metadata/generated/schema/dataInsight/custom/lineChart.py +76 -0
  249. metadata/generated/schema/dataInsight/custom/summaryCard.py +49 -0
  250. metadata/generated/schema/dataInsight/dataInsightChart.py +79 -48
  251. metadata/generated/schema/dataInsight/dataInsightChartResult.py +34 -45
  252. metadata/generated/schema/dataInsight/kpi/__init__.py +1 -1
  253. metadata/generated/schema/dataInsight/kpi/basic.py +43 -32
  254. metadata/generated/schema/dataInsight/kpi/kpi.py +81 -52
  255. metadata/generated/schema/dataInsight/type/__init__.py +1 -1
  256. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsCount.py +19 -12
  257. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsSize.py +19 -12
  258. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsCount.py +32 -19
  259. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsSize.py +32 -18
  260. metadata/generated/schema/dataInsight/type/dailyActiveUsers.py +16 -8
  261. metadata/generated/schema/dataInsight/type/mostActiveUsers.py +28 -19
  262. metadata/generated/schema/dataInsight/type/mostViewedEntities.py +18 -13
  263. metadata/generated/schema/dataInsight/type/pageViewsByEntities.py +17 -9
  264. metadata/generated/schema/dataInsight/type/unusedAssets.py +17 -9
  265. metadata/generated/schema/email/__init__.py +1 -1
  266. metadata/generated/schema/email/emailRequest.py +26 -18
  267. metadata/generated/schema/email/emailTemplate.py +25 -0
  268. metadata/generated/schema/email/emailTemplatePlaceholder.py +20 -0
  269. metadata/generated/schema/email/smtpSettings.py +34 -18
  270. metadata/generated/schema/email/templateValidationReponse.py +29 -0
  271. metadata/generated/schema/entity/__init__.py +1 -1
  272. metadata/generated/schema/entity/applications/__init__.py +1 -1
  273. metadata/generated/schema/entity/applications/app.py +164 -107
  274. metadata/generated/schema/entity/applications/appRunRecord.py +42 -30
  275. metadata/generated/schema/entity/applications/configuration/__init__.py +1 -1
  276. metadata/generated/schema/entity/applications/configuration/applicationConfig.py +24 -7
  277. metadata/generated/schema/entity/applications/configuration/external/__init__.py +1 -1
  278. metadata/generated/schema/entity/applications/configuration/external/automator/__init__.py +1 -1
  279. metadata/generated/schema/entity/applications/configuration/external/automator/addDescriptionAction.py +28 -18
  280. metadata/generated/schema/entity/applications/configuration/external/automator/addDomainAction.py +22 -13
  281. metadata/generated/schema/entity/applications/configuration/external/automator/addOwnerAction.py +23 -14
  282. metadata/generated/schema/entity/applications/configuration/external/automator/addTagsAction.py +28 -18
  283. metadata/generated/schema/entity/applications/configuration/external/automator/addTierAction.py +20 -13
  284. metadata/generated/schema/entity/applications/configuration/external/automator/lineagePropagationAction.py +19 -12
  285. metadata/generated/schema/entity/applications/configuration/external/automator/mlTaggingAction.py +11 -7
  286. metadata/generated/schema/entity/applications/configuration/external/automator/removeDescriptionAction.py +19 -12
  287. metadata/generated/schema/entity/applications/configuration/external/automator/removeDomainAction.py +11 -7
  288. metadata/generated/schema/entity/applications/configuration/external/automator/removeOwnerAction.py +11 -7
  289. metadata/generated/schema/entity/applications/configuration/external/automator/removeTagsAction.py +20 -13
  290. metadata/generated/schema/entity/applications/configuration/external/automator/removeTierAction.py +11 -7
  291. metadata/generated/schema/entity/applications/configuration/external/automatorAppConfig.py +68 -39
  292. metadata/generated/schema/entity/applications/configuration/external/metaPilotAppConfig.py +47 -19
  293. metadata/generated/schema/entity/applications/configuration/internal/__init__.py +1 -1
  294. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsAppConfig.py +65 -6
  295. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsReportAppConfig.py +17 -11
  296. metadata/generated/schema/entity/applications/configuration/internal/searchIndexingAppConfig.py +34 -24
  297. metadata/generated/schema/entity/applications/configuration/private/external/__init__.py +1 -1
  298. metadata/generated/schema/entity/applications/configuration/private/external/metaPilotAppPrivateConfig.py +19 -16
  299. metadata/generated/schema/entity/applications/createAppRequest.py +35 -23
  300. metadata/generated/schema/entity/applications/jobStatus.py +10 -6
  301. metadata/generated/schema/entity/applications/liveExecutionContext.py +15 -6
  302. metadata/generated/schema/entity/applications/marketplace/__init__.py +1 -1
  303. metadata/generated/schema/entity/applications/marketplace/appMarketPlaceDefinition.py +144 -89
  304. metadata/generated/schema/entity/applications/marketplace/createAppMarketPlaceDefinitionReq.py +95 -64
  305. metadata/generated/schema/entity/applications/scheduledExecutionContext.py +8 -3
  306. metadata/generated/schema/entity/automations/__init__.py +1 -1
  307. metadata/generated/schema/entity/automations/testServiceConnection.py +47 -29
  308. metadata/generated/schema/entity/automations/workflow.py +82 -48
  309. metadata/generated/schema/entity/bot.py +64 -37
  310. metadata/generated/schema/entity/classification/__init__.py +1 -1
  311. metadata/generated/schema/entity/classification/classification.py +90 -50
  312. metadata/generated/schema/entity/classification/tag.py +104 -53
  313. metadata/generated/schema/entity/data/__init__.py +1 -1
  314. metadata/generated/schema/entity/data/apiCollection.py +145 -0
  315. metadata/generated/schema/entity/data/apiEndpoint.py +173 -0
  316. metadata/generated/schema/entity/data/chart.py +120 -72
  317. metadata/generated/schema/entity/data/container.py +178 -116
  318. metadata/generated/schema/entity/data/dashboard.py +141 -89
  319. metadata/generated/schema/entity/data/dashboardDataModel.py +129 -77
  320. metadata/generated/schema/entity/data/database.py +167 -104
  321. metadata/generated/schema/entity/data/databaseSchema.py +157 -98
  322. metadata/generated/schema/entity/data/glossary.py +118 -64
  323. metadata/generated/schema/entity/data/glossaryTerm.py +173 -105
  324. metadata/generated/schema/entity/data/metrics.py +93 -55
  325. metadata/generated/schema/entity/data/mlmodel.py +213 -148
  326. metadata/generated/schema/entity/data/pipeline.py +227 -150
  327. metadata/generated/schema/entity/data/query.py +126 -80
  328. metadata/generated/schema/entity/data/report.py +90 -49
  329. metadata/generated/schema/entity/data/searchIndex.py +171 -114
  330. metadata/generated/schema/entity/data/storedProcedure.py +140 -86
  331. metadata/generated/schema/entity/data/table.py +637 -436
  332. metadata/generated/schema/entity/data/topic.py +175 -111
  333. metadata/generated/schema/entity/docStore/__init__.py +1 -1
  334. metadata/generated/schema/entity/docStore/document.py +52 -31
  335. metadata/generated/schema/entity/domains/__init__.py +1 -1
  336. metadata/generated/schema/entity/domains/dataProduct.py +72 -43
  337. metadata/generated/schema/entity/domains/domain.py +69 -45
  338. metadata/generated/schema/entity/events/__init__.py +1 -1
  339. metadata/generated/schema/entity/events/webhook.py +46 -25
  340. metadata/generated/schema/entity/feed/__init__.py +1 -1
  341. metadata/generated/schema/entity/feed/assets.py +7 -5
  342. metadata/generated/schema/entity/feed/customProperty.py +14 -7
  343. metadata/generated/schema/entity/feed/description.py +21 -13
  344. metadata/generated/schema/entity/feed/domain.py +15 -10
  345. metadata/generated/schema/entity/feed/entityInfo.py +14 -8
  346. metadata/generated/schema/entity/feed/owner.py +16 -11
  347. metadata/generated/schema/entity/feed/suggestion.py +112 -35
  348. metadata/generated/schema/entity/feed/tag.py +15 -10
  349. metadata/generated/schema/entity/feed/testCaseResult.py +19 -13
  350. metadata/generated/schema/entity/feed/thread.py +226 -148
  351. metadata/generated/schema/entity/policies/__init__.py +1 -1
  352. metadata/generated/schema/entity/policies/accessControl/__init__.py +1 -1
  353. metadata/generated/schema/entity/policies/accessControl/resourceDescriptor.py +25 -12
  354. metadata/generated/schema/entity/policies/accessControl/resourcePermission.py +42 -28
  355. metadata/generated/schema/entity/policies/accessControl/rule.py +36 -23
  356. metadata/generated/schema/entity/policies/filters.py +14 -12
  357. metadata/generated/schema/entity/policies/policy.py +107 -67
  358. metadata/generated/schema/entity/services/__init__.py +1 -1
  359. metadata/generated/schema/entity/services/apiService.py +114 -0
  360. metadata/generated/schema/entity/services/connections/__init__.py +1 -1
  361. metadata/generated/schema/entity/services/connections/apiService/__init__.py +5 -0
  362. metadata/generated/schema/entity/services/connections/apiService/restConnection.py +38 -0
  363. metadata/generated/schema/entity/services/connections/common/__init__.py +1 -3
  364. metadata/generated/schema/entity/services/connections/common/sslCertPaths.py +21 -13
  365. metadata/generated/schema/entity/services/connections/common/sslCertValues.py +30 -19
  366. metadata/generated/schema/entity/services/connections/common/sslConfig.py +14 -8
  367. metadata/generated/schema/entity/services/connections/connectionBasicType.py +71 -55
  368. metadata/generated/schema/entity/services/connections/dashboard/__init__.py +1 -1
  369. metadata/generated/schema/entity/services/connections/dashboard/customDashboardConnection.py +23 -15
  370. metadata/generated/schema/entity/services/connections/dashboard/domoDashboardConnection.py +44 -30
  371. metadata/generated/schema/entity/services/connections/dashboard/lightdashConnection.py +50 -36
  372. metadata/generated/schema/entity/services/connections/dashboard/lookerConnection.py +51 -37
  373. metadata/generated/schema/entity/services/connections/dashboard/metabaseConnection.py +31 -24
  374. metadata/generated/schema/entity/services/connections/dashboard/modeConnection.py +35 -27
  375. metadata/generated/schema/entity/services/connections/dashboard/mstrConnection.py +35 -27
  376. metadata/generated/schema/entity/services/connections/dashboard/powerBIConnection.py +97 -63
  377. metadata/generated/schema/entity/services/connections/dashboard/powerbi/__init__.py +1 -1
  378. metadata/generated/schema/entity/services/connections/dashboard/powerbi/azureConfig.py +25 -18
  379. metadata/generated/schema/entity/services/connections/dashboard/powerbi/bucketDetails.py +23 -14
  380. metadata/generated/schema/entity/services/connections/dashboard/powerbi/gcsConfig.py +25 -18
  381. metadata/generated/schema/entity/services/connections/dashboard/powerbi/s3Config.py +25 -18
  382. metadata/generated/schema/entity/services/connections/dashboard/qlikCloudConnection.py +27 -19
  383. metadata/generated/schema/entity/services/connections/dashboard/qlikSenseConnection.py +53 -36
  384. metadata/generated/schema/entity/services/connections/dashboard/quickSightConnection.py +38 -23
  385. metadata/generated/schema/entity/services/connections/dashboard/redashConnection.py +30 -21
  386. metadata/generated/schema/entity/services/connections/dashboard/supersetConnection.py +30 -22
  387. metadata/generated/schema/entity/services/connections/dashboard/tableauConnection.py +46 -35
  388. metadata/generated/schema/entity/services/connections/database/__init__.py +1 -1
  389. metadata/generated/schema/entity/services/connections/database/athenaConnection.py +70 -52
  390. metadata/generated/schema/entity/services/connections/database/azureSQLConnection.py +131 -89
  391. metadata/generated/schema/entity/services/connections/database/bigQueryConnection.py +83 -56
  392. metadata/generated/schema/entity/services/connections/database/bigTableConnection.py +31 -22
  393. metadata/generated/schema/entity/services/connections/database/clickhouseConnection.py +109 -72
  394. metadata/generated/schema/entity/services/connections/database/common/__init__.py +1 -1
  395. metadata/generated/schema/entity/services/connections/database/common/azureConfig.py +11 -7
  396. metadata/generated/schema/entity/services/connections/database/common/basicAuth.py +10 -8
  397. metadata/generated/schema/entity/services/connections/database/common/iamAuthConfig.py +11 -7
  398. metadata/generated/schema/entity/services/connections/database/common/jwtAuth.py +10 -8
  399. metadata/generated/schema/entity/services/connections/database/couchbaseConnection.py +46 -32
  400. metadata/generated/schema/entity/services/connections/database/customDatabaseConnection.py +23 -15
  401. metadata/generated/schema/entity/services/connections/database/databricksConnection.py +87 -60
  402. metadata/generated/schema/entity/services/connections/database/datalake/__init__.py +1 -1
  403. metadata/generated/schema/entity/services/connections/database/datalake/azureConfig.py +11 -7
  404. metadata/generated/schema/entity/services/connections/database/datalake/gcsConfig.py +11 -7
  405. metadata/generated/schema/entity/services/connections/database/datalake/s3Config.py +11 -7
  406. metadata/generated/schema/entity/services/connections/database/datalakeConnection.py +59 -43
  407. metadata/generated/schema/entity/services/connections/database/db2Connection.py +64 -48
  408. metadata/generated/schema/entity/services/connections/database/deltaLakeConnection.py +41 -85
  409. metadata/generated/schema/entity/services/connections/database/deltalake/__init__.py +3 -0
  410. metadata/generated/schema/entity/services/connections/database/deltalake/metastoreConfig.py +109 -0
  411. metadata/generated/schema/entity/services/connections/database/deltalake/storageConfig.py +42 -0
  412. metadata/generated/schema/entity/services/connections/database/domoDatabaseConnection.py +52 -33
  413. metadata/generated/schema/entity/services/connections/database/dorisConnection.py +73 -52
  414. metadata/generated/schema/entity/services/connections/database/druidConnection.py +66 -47
  415. metadata/generated/schema/entity/services/connections/database/dynamoDBConnection.py +38 -27
  416. metadata/generated/schema/entity/services/connections/database/glueConnection.py +34 -24
  417. metadata/generated/schema/entity/services/connections/database/greenplumConnection.py +85 -56
  418. metadata/generated/schema/entity/services/connections/database/hiveConnection.py +108 -75
  419. metadata/generated/schema/entity/services/connections/database/iceberg/__init__.py +1 -1
  420. metadata/generated/schema/entity/services/connections/database/iceberg/dynamoDbCatalogConnection.py +11 -6
  421. metadata/generated/schema/entity/services/connections/database/iceberg/glueCatalogConnection.py +7 -5
  422. metadata/generated/schema/entity/services/connections/database/iceberg/hiveCatalogConnection.py +14 -9
  423. metadata/generated/schema/entity/services/connections/database/iceberg/icebergCatalog.py +36 -25
  424. metadata/generated/schema/entity/services/connections/database/iceberg/icebergFileSystem.py +7 -5
  425. metadata/generated/schema/entity/services/connections/database/iceberg/restCatalogConnection.py +67 -46
  426. metadata/generated/schema/entity/services/connections/database/icebergConnection.py +23 -15
  427. metadata/generated/schema/entity/services/connections/database/impalaConnection.py +102 -67
  428. metadata/generated/schema/entity/services/connections/database/mariaDBConnection.py +75 -52
  429. metadata/generated/schema/entity/services/connections/database/mongoDBConnection.py +56 -38
  430. metadata/generated/schema/entity/services/connections/database/mssqlConnection.py +89 -60
  431. metadata/generated/schema/entity/services/connections/database/mysqlConnection.py +88 -60
  432. metadata/generated/schema/entity/services/connections/database/oracleConnection.py +105 -74
  433. metadata/generated/schema/entity/services/connections/database/pinotDBConnection.py +78 -54
  434. metadata/generated/schema/entity/services/connections/database/postgresConnection.py +97 -65
  435. metadata/generated/schema/entity/services/connections/database/prestoConnection.py +90 -61
  436. metadata/generated/schema/entity/services/connections/database/redshiftConnection.py +78 -55
  437. metadata/generated/schema/entity/services/connections/database/salesforceConnection.py +75 -47
  438. metadata/generated/schema/entity/services/connections/database/sapErpConnection.py +84 -0
  439. metadata/generated/schema/entity/services/connections/database/sapHana/__init__.py +1 -1
  440. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaHDBConnection.py +15 -9
  441. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaSQLConnection.py +33 -24
  442. metadata/generated/schema/entity/services/connections/database/sapHanaConnection.py +53 -38
  443. metadata/generated/schema/entity/services/connections/database/sasConnection.py +45 -31
  444. metadata/generated/schema/entity/services/connections/database/singleStoreConnection.py +82 -54
  445. metadata/generated/schema/entity/services/connections/database/snowflakeConnection.py +121 -80
  446. metadata/generated/schema/entity/services/connections/database/sqliteConnection.py +82 -56
  447. metadata/generated/schema/entity/services/connections/database/synapseConnection.py +168 -0
  448. metadata/generated/schema/entity/services/connections/database/teradataConnection.py +92 -62
  449. metadata/generated/schema/entity/services/connections/database/trinoConnection.py +108 -72
  450. metadata/generated/schema/entity/services/connections/database/unityCatalogConnection.py +89 -60
  451. metadata/generated/schema/entity/services/connections/database/verticaConnection.py +71 -50
  452. metadata/generated/schema/entity/services/connections/messaging/__init__.py +1 -1
  453. metadata/generated/schema/entity/services/connections/messaging/customMessagingConnection.py +23 -15
  454. metadata/generated/schema/entity/services/connections/messaging/kafkaConnection.py +101 -61
  455. metadata/generated/schema/entity/services/connections/messaging/kinesisConnection.py +18 -13
  456. metadata/generated/schema/entity/services/connections/messaging/pulsarConnection.py +15 -10
  457. metadata/generated/schema/entity/services/connections/messaging/redpandaConnection.py +85 -54
  458. metadata/generated/schema/entity/services/connections/messaging/saslMechanismType.py +1 -1
  459. metadata/generated/schema/entity/services/connections/metadata/__init__.py +1 -1
  460. metadata/generated/schema/entity/services/connections/metadata/alationConnection.py +117 -74
  461. metadata/generated/schema/entity/services/connections/metadata/alationSinkConnection.py +72 -0
  462. metadata/generated/schema/entity/services/connections/metadata/amundsenConnection.py +43 -28
  463. metadata/generated/schema/entity/services/connections/metadata/atlasConnection.py +40 -27
  464. metadata/generated/schema/entity/services/connections/metadata/metadataESConnection.py +50 -40
  465. metadata/generated/schema/entity/services/connections/metadata/openMetadataConnection.py +151 -92
  466. metadata/generated/schema/entity/services/connections/mlmodel/__init__.py +1 -1
  467. metadata/generated/schema/entity/services/connections/mlmodel/customMlModelConnection.py +23 -15
  468. metadata/generated/schema/entity/services/connections/mlmodel/mlflowConnection.py +29 -20
  469. metadata/generated/schema/entity/services/connections/mlmodel/sageMakerConnection.py +20 -13
  470. metadata/generated/schema/entity/services/connections/mlmodel/sklearnConnection.py +15 -10
  471. metadata/generated/schema/entity/services/connections/pipeline/__init__.py +1 -1
  472. metadata/generated/schema/entity/services/connections/pipeline/airbyteConnection.py +25 -18
  473. metadata/generated/schema/entity/services/connections/pipeline/airflowConnection.py +34 -26
  474. metadata/generated/schema/entity/services/connections/pipeline/backendConnection.py +11 -7
  475. metadata/generated/schema/entity/services/connections/pipeline/customPipelineConnection.py +23 -15
  476. metadata/generated/schema/entity/services/connections/pipeline/dagsterConnection.py +29 -20
  477. metadata/generated/schema/entity/services/connections/pipeline/databricksPipelineConnection.py +37 -27
  478. metadata/generated/schema/entity/services/connections/pipeline/dbtCloudConnection.py +43 -0
  479. metadata/generated/schema/entity/services/connections/pipeline/domoPipelineConnection.py +44 -28
  480. metadata/generated/schema/entity/services/connections/pipeline/fivetranConnection.py +37 -27
  481. metadata/generated/schema/entity/services/connections/pipeline/flinkConnection.py +35 -0
  482. metadata/generated/schema/entity/services/connections/pipeline/gluePipelineConnection.py +18 -13
  483. metadata/generated/schema/entity/services/connections/pipeline/kafkaConnectConnection.py +62 -40
  484. metadata/generated/schema/entity/services/connections/pipeline/nifiConnection.py +71 -45
  485. metadata/generated/schema/entity/services/connections/pipeline/openLineageConnection.py +71 -41
  486. metadata/generated/schema/entity/services/connections/pipeline/sparkConnection.py +11 -7
  487. metadata/generated/schema/entity/services/connections/pipeline/splineConnection.py +28 -18
  488. metadata/generated/schema/entity/services/connections/search/__init__.py +1 -1
  489. metadata/generated/schema/entity/services/connections/search/customSearchConnection.py +23 -15
  490. metadata/generated/schema/entity/services/connections/search/elasticSearch/__init__.py +1 -1
  491. metadata/generated/schema/entity/services/connections/search/elasticSearch/apiAuth.py +22 -15
  492. metadata/generated/schema/entity/services/connections/search/elasticSearch/basicAuth.py +14 -11
  493. metadata/generated/schema/entity/services/connections/search/elasticSearchConnection.py +48 -31
  494. metadata/generated/schema/entity/services/connections/search/openSearchConnection.py +54 -35
  495. metadata/generated/schema/entity/services/connections/serviceConnection.py +38 -22
  496. metadata/generated/schema/entity/services/connections/storage/__init__.py +1 -1
  497. metadata/generated/schema/entity/services/connections/storage/adlsConnection.py +27 -19
  498. metadata/generated/schema/entity/services/connections/storage/customStorageConnection.py +23 -15
  499. metadata/generated/schema/entity/services/connections/storage/gcsConnection.py +34 -20
  500. metadata/generated/schema/entity/services/connections/storage/s3Connection.py +32 -22
  501. metadata/generated/schema/entity/services/connections/testConnectionDefinition.py +96 -57
  502. metadata/generated/schema/entity/services/connections/testConnectionResult.py +40 -26
  503. metadata/generated/schema/entity/services/dashboardService.py +93 -62
  504. metadata/generated/schema/entity/services/databaseService.py +101 -63
  505. metadata/generated/schema/entity/services/ingestionPipelines/__init__.py +1 -1
  506. metadata/generated/schema/entity/services/ingestionPipelines/ingestionPipeline.py +198 -122
  507. metadata/generated/schema/entity/services/ingestionPipelines/pipelineServiceClientResponse.py +24 -13
  508. metadata/generated/schema/entity/services/ingestionPipelines/status.py +47 -37
  509. metadata/generated/schema/entity/services/messagingService.py +103 -69
  510. metadata/generated/schema/entity/services/metadataService.py +96 -56
  511. metadata/generated/schema/entity/services/mlmodelService.py +96 -63
  512. metadata/generated/schema/entity/services/pipelineService.py +102 -63
  513. metadata/generated/schema/entity/services/searchService.py +92 -62
  514. metadata/generated/schema/entity/services/serviceType.py +2 -1
  515. metadata/generated/schema/entity/services/storageService.py +93 -62
  516. metadata/generated/schema/entity/teams/__init__.py +1 -1
  517. metadata/generated/schema/entity/teams/persona.py +59 -35
  518. metadata/generated/schema/entity/teams/role.py +82 -51
  519. metadata/generated/schema/entity/teams/team.py +128 -82
  520. metadata/generated/schema/entity/teams/teamHierarchy.py +52 -35
  521. metadata/generated/schema/entity/teams/user.py +122 -81
  522. metadata/generated/schema/entity/type.py +94 -48
  523. metadata/generated/schema/entity/utils/__init__.py +1 -1
  524. metadata/generated/schema/entity/utils/entitiesCount.py +25 -18
  525. metadata/generated/schema/entity/utils/servicesCount.py +25 -22
  526. metadata/generated/schema/entity/utils/supersetApiConnection.py +19 -14
  527. metadata/generated/schema/events/__init__.py +1 -1
  528. metadata/generated/schema/events/alertMetrics.py +22 -14
  529. metadata/generated/schema/events/api/__init__.py +1 -1
  530. metadata/generated/schema/events/api/createEventSubscription.py +63 -35
  531. metadata/generated/schema/events/api/testEventSubscriptionDestination.py +27 -0
  532. metadata/generated/schema/events/emailAlertConfig.py +20 -12
  533. metadata/generated/schema/events/eventFilterRule.py +40 -24
  534. metadata/generated/schema/events/eventSubscription.py +220 -142
  535. metadata/generated/schema/events/eventSubscriptionOffset.py +12 -8
  536. metadata/generated/schema/events/failedEvent.py +25 -13
  537. metadata/generated/schema/events/filterResourceDescriptor.py +24 -14
  538. metadata/generated/schema/events/subscriptionResourceDescriptor.py +20 -11
  539. metadata/generated/schema/metadataIngestion/__init__.py +1 -1
  540. metadata/generated/schema/metadataIngestion/application.py +39 -25
  541. metadata/generated/schema/metadataIngestion/applicationPipeline.py +23 -16
  542. metadata/generated/schema/metadataIngestion/dashboardServiceMetadataPipeline.py +125 -67
  543. metadata/generated/schema/metadataIngestion/dataInsightPipeline.py +9 -6
  544. metadata/generated/schema/metadataIngestion/databaseServiceMetadataPipeline.py +182 -106
  545. metadata/generated/schema/metadataIngestion/databaseServiceProfilerPipeline.py +117 -73
  546. metadata/generated/schema/metadataIngestion/databaseServiceQueryLineagePipeline.py +75 -47
  547. metadata/generated/schema/metadataIngestion/databaseServiceQueryUsagePipeline.py +51 -32
  548. metadata/generated/schema/metadataIngestion/dbtPipeline.py +75 -51
  549. metadata/generated/schema/metadataIngestion/dbtconfig/__init__.py +1 -1
  550. metadata/generated/schema/metadataIngestion/dbtconfig/dbtAzureConfig.py +37 -25
  551. metadata/generated/schema/metadataIngestion/dbtconfig/dbtBucketDetails.py +23 -14
  552. metadata/generated/schema/metadataIngestion/dbtconfig/dbtCloudConfig.py +36 -27
  553. metadata/generated/schema/metadataIngestion/dbtconfig/dbtGCSConfig.py +37 -25
  554. metadata/generated/schema/metadataIngestion/dbtconfig/dbtHttpConfig.py +31 -20
  555. metadata/generated/schema/metadataIngestion/dbtconfig/dbtLocalConfig.py +31 -20
  556. metadata/generated/schema/metadataIngestion/dbtconfig/dbtS3Config.py +37 -25
  557. metadata/generated/schema/metadataIngestion/messagingServiceMetadataPipeline.py +45 -22
  558. metadata/generated/schema/metadataIngestion/metadataToElasticSearchPipeline.py +65 -43
  559. metadata/generated/schema/metadataIngestion/mlmodelServiceMetadataPipeline.py +35 -17
  560. metadata/generated/schema/metadataIngestion/pipelineServiceMetadataPipeline.py +99 -50
  561. metadata/generated/schema/metadataIngestion/searchServiceMetadataPipeline.py +51 -27
  562. metadata/generated/schema/metadataIngestion/storage/__init__.py +1 -1
  563. metadata/generated/schema/metadataIngestion/storage/containerMetadataConfig.py +60 -33
  564. metadata/generated/schema/metadataIngestion/storage/manifestMetadataConfig.py +59 -38
  565. metadata/generated/schema/metadataIngestion/storage/storageBucketDetails.py +22 -14
  566. metadata/generated/schema/metadataIngestion/storage/storageMetadataADLSConfig.py +15 -10
  567. metadata/generated/schema/metadataIngestion/storage/storageMetadataGCSConfig.py +15 -10
  568. metadata/generated/schema/metadataIngestion/storage/storageMetadataHttpConfig.py +14 -9
  569. metadata/generated/schema/metadataIngestion/storage/storageMetadataLocalConfig.py +14 -9
  570. metadata/generated/schema/metadataIngestion/storage/storageMetadataS3Config.py +14 -10
  571. metadata/generated/schema/metadataIngestion/storageServiceMetadataPipeline.py +57 -28
  572. metadata/generated/schema/metadataIngestion/testSuitePipeline.py +32 -17
  573. metadata/generated/schema/metadataIngestion/workflow.py +114 -62
  574. metadata/generated/schema/monitoring/__init__.py +1 -1
  575. metadata/generated/schema/monitoring/eventMonitorProvider.py +1 -1
  576. metadata/generated/schema/security/__init__.py +1 -1
  577. metadata/generated/schema/security/client/__init__.py +1 -1
  578. metadata/generated/schema/security/client/auth0SSOClientConfig.py +10 -9
  579. metadata/generated/schema/security/client/azureSSOClientConfig.py +12 -11
  580. metadata/generated/schema/security/client/customOidcSSOClientConfig.py +11 -10
  581. metadata/generated/schema/security/client/googleSSOClientConfig.py +17 -12
  582. metadata/generated/schema/security/client/oidcClientConfig.py +45 -30
  583. metadata/generated/schema/security/client/oktaSSOClientConfig.py +14 -11
  584. metadata/generated/schema/security/client/openMetadataJWTClientConfig.py +9 -8
  585. metadata/generated/schema/security/client/samlSSOClientConfig.py +104 -67
  586. metadata/generated/schema/security/credentials/__init__.py +1 -1
  587. metadata/generated/schema/security/credentials/accessTokenAuth.py +17 -13
  588. metadata/generated/schema/security/credentials/apiAccessTokenAuth.py +10 -8
  589. metadata/generated/schema/security/credentials/awsCredentials.py +57 -38
  590. metadata/generated/schema/security/credentials/azureCredentials.py +47 -29
  591. metadata/generated/schema/security/credentials/basicAuth.py +13 -11
  592. metadata/generated/schema/security/credentials/bitbucketCredentials.py +22 -14
  593. metadata/generated/schema/security/credentials/gcpCredentials.py +66 -33
  594. metadata/generated/schema/security/credentials/gcpExternalAccount.py +55 -26
  595. metadata/generated/schema/security/credentials/gcpValues.py +70 -49
  596. metadata/generated/schema/security/credentials/gitCredentials.py +32 -25
  597. metadata/generated/schema/security/credentials/githubCredentials.py +13 -7
  598. metadata/generated/schema/security/credentials/gitlabCredentials.py +34 -0
  599. metadata/generated/schema/security/sasl/__init__.py +3 -0
  600. metadata/generated/schema/security/sasl/saslClientConfig.py +40 -0
  601. metadata/generated/schema/security/secrets/__init__.py +1 -1
  602. metadata/generated/schema/security/secrets/secretsManagerClientLoader.py +1 -1
  603. metadata/generated/schema/security/secrets/secretsManagerConfiguration.py +39 -24
  604. metadata/generated/schema/security/secrets/secretsManagerProvider.py +2 -1
  605. metadata/generated/schema/security/securityConfiguration.py +15 -9
  606. metadata/generated/schema/security/ssl/__init__.py +1 -1
  607. metadata/generated/schema/security/ssl/validateSSLClientConfig.py +30 -20
  608. metadata/generated/schema/security/ssl/verifySSLConfig.py +16 -18
  609. metadata/generated/schema/settings/__init__.py +1 -1
  610. metadata/generated/schema/settings/settings.py +10 -5
  611. metadata/generated/schema/system/__init__.py +1 -1
  612. metadata/generated/schema/system/entityError.py +7 -5
  613. metadata/generated/schema/system/eventPublisherJob.py +58 -37
  614. metadata/generated/schema/system/indexingError.py +7 -5
  615. metadata/generated/schema/system/limitsResponse.py +20 -0
  616. metadata/generated/schema/system/ui/__init__.py +1 -1
  617. metadata/generated/schema/system/ui/knowledgePanel.py +12 -8
  618. metadata/generated/schema/system/ui/page.py +24 -18
  619. metadata/generated/schema/system/validationResponse.py +40 -28
  620. metadata/generated/schema/tests/__init__.py +1 -1
  621. metadata/generated/schema/tests/assigned.py +11 -7
  622. metadata/generated/schema/tests/basic.py +98 -55
  623. metadata/generated/schema/tests/customMetric.py +41 -29
  624. metadata/generated/schema/tests/dataQualityReport.py +40 -0
  625. metadata/generated/schema/tests/resolved.py +17 -13
  626. metadata/generated/schema/tests/testCase.py +137 -76
  627. metadata/generated/schema/tests/testCaseResolutionStatus.py +49 -33
  628. metadata/generated/schema/tests/testDefinition.py +129 -67
  629. metadata/generated/schema/tests/testSuite.py +137 -75
  630. metadata/generated/schema/type/__init__.py +1 -1
  631. metadata/generated/schema/type/apiSchema.py +27 -0
  632. metadata/generated/schema/type/auditLog.py +29 -20
  633. metadata/generated/schema/type/basic.py +177 -110
  634. metadata/generated/schema/type/bulkOperationResult.py +45 -30
  635. metadata/generated/schema/type/changeEvent.py +72 -40
  636. metadata/generated/schema/type/changeEventType.py +1 -1
  637. metadata/generated/schema/type/collectionDescriptor.py +24 -15
  638. metadata/generated/schema/type/csvDocumentation.py +11 -8
  639. metadata/generated/schema/type/csvErrorType.py +1 -1
  640. metadata/generated/schema/type/csvFile.py +25 -17
  641. metadata/generated/schema/type/csvImportResult.py +34 -21
  642. metadata/generated/schema/type/customProperties/__init__.py +1 -1
  643. metadata/generated/schema/type/customProperties/complexTypes.py +110 -64
  644. metadata/generated/schema/type/customProperties/enumConfig.py +7 -5
  645. metadata/generated/schema/type/customProperty.py +34 -25
  646. metadata/generated/schema/type/dailyCount.py +10 -7
  647. metadata/generated/schema/type/databaseConnectionConfig.py +69 -42
  648. metadata/generated/schema/type/entityHierarchy.py +35 -26
  649. metadata/generated/schema/type/entityHistory.py +71 -45
  650. metadata/generated/schema/type/entityLineage.py +89 -57
  651. metadata/generated/schema/type/entityReference.py +51 -30
  652. metadata/generated/schema/type/entityReferenceList.py +11 -8
  653. metadata/generated/schema/type/entityRelationship.py +68 -39
  654. metadata/generated/schema/type/entityUsage.py +15 -10
  655. metadata/generated/schema/type/filterPattern.py +21 -12
  656. metadata/generated/schema/type/function.py +30 -21
  657. metadata/generated/schema/type/include.py +1 -1
  658. metadata/generated/schema/type/jdbcConnection.py +24 -19
  659. metadata/generated/schema/type/lifeCycle.py +47 -26
  660. metadata/generated/schema/type/paging.py +32 -21
  661. metadata/generated/schema/type/profile.py +13 -11
  662. metadata/generated/schema/type/queryParserData.py +47 -32
  663. metadata/generated/schema/type/reaction.py +13 -8
  664. metadata/generated/schema/type/schedule.py +18 -11
  665. metadata/generated/schema/type/schema.py +64 -44
  666. metadata/generated/schema/type/tableQuery.py +53 -40
  667. metadata/generated/schema/type/tableUsageCount.py +46 -33
  668. metadata/generated/schema/type/tagLabel.py +36 -24
  669. metadata/generated/schema/type/usageDetails.py +40 -24
  670. metadata/generated/schema/type/usageRequest.py +10 -7
  671. metadata/generated/schema/type/votes.py +21 -12
  672. metadata/great_expectations/action.py +14 -12
  673. metadata/great_expectations/utils/ometa_config_handler.py +1 -1
  674. metadata/ingestion/api/common.py +3 -4
  675. metadata/ingestion/api/delete.py +1 -1
  676. metadata/ingestion/api/models.py +6 -8
  677. metadata/ingestion/api/parser.py +13 -17
  678. metadata/ingestion/api/status.py +35 -13
  679. metadata/ingestion/api/topology_runner.py +2 -1
  680. metadata/ingestion/bulksink/metadata_usage.py +17 -14
  681. metadata/ingestion/connections/builders.py +18 -12
  682. metadata/ingestion/connections/secrets.py +8 -6
  683. metadata/ingestion/connections/test_connections.py +7 -2
  684. metadata/ingestion/lineage/models.py +5 -4
  685. metadata/ingestion/lineage/sql_lineage.py +43 -13
  686. metadata/ingestion/models/custom_properties.py +9 -9
  687. metadata/ingestion/models/custom_pydantic.py +70 -44
  688. metadata/ingestion/models/lf_tags_model.py +3 -3
  689. metadata/ingestion/models/ometa_classification.py +1 -1
  690. metadata/ingestion/models/ometa_lineage.py +24 -0
  691. metadata/ingestion/models/patch_request.py +96 -56
  692. metadata/ingestion/models/table_metadata.py +2 -2
  693. metadata/ingestion/models/topology.py +18 -12
  694. metadata/ingestion/ometa/client.py +34 -8
  695. metadata/ingestion/ometa/client_utils.py +6 -7
  696. metadata/ingestion/ometa/mixins/custom_property_mixin.py +2 -4
  697. metadata/ingestion/ometa/mixins/dashboard_mixin.py +2 -2
  698. metadata/ingestion/ometa/mixins/data_insight_mixin.py +10 -6
  699. metadata/ingestion/ometa/mixins/ingestion_pipeline_mixin.py +5 -3
  700. metadata/ingestion/ometa/mixins/lineage_mixin.py +36 -15
  701. metadata/ingestion/ometa/mixins/mlmodel_mixin.py +2 -2
  702. metadata/ingestion/ometa/mixins/patch_mixin.py +32 -30
  703. metadata/ingestion/ometa/mixins/pipeline_mixin.py +3 -3
  704. metadata/ingestion/ometa/mixins/query_mixin.py +4 -4
  705. metadata/ingestion/ometa/mixins/role_policy_mixin.py +13 -13
  706. metadata/ingestion/ometa/mixins/search_index_mixin.py +5 -5
  707. metadata/ingestion/ometa/mixins/server_mixin.py +4 -5
  708. metadata/ingestion/ometa/mixins/service_mixin.py +2 -2
  709. metadata/ingestion/ometa/mixins/suggestions_mixin.py +2 -2
  710. metadata/ingestion/ometa/mixins/table_mixin.py +20 -20
  711. metadata/ingestion/ometa/mixins/tests_mixin.py +21 -18
  712. metadata/ingestion/ometa/mixins/topic_mixin.py +2 -2
  713. metadata/ingestion/ometa/mixins/user_mixin.py +44 -23
  714. metadata/ingestion/ometa/models.py +1 -1
  715. metadata/ingestion/ometa/ometa_api.py +6 -7
  716. metadata/ingestion/ometa/routes.py +18 -0
  717. metadata/ingestion/ometa/ttl_cache.py +47 -0
  718. metadata/ingestion/ometa/utils.py +3 -3
  719. metadata/ingestion/processor/query_parser.py +3 -3
  720. metadata/ingestion/sink/file.py +2 -2
  721. metadata/ingestion/sink/metadata_rest.py +59 -29
  722. metadata/ingestion/source/dashboard/dashboard_service.py +45 -45
  723. metadata/ingestion/source/dashboard/domodashboard/metadata.py +31 -19
  724. metadata/ingestion/source/dashboard/lightdash/client.py +1 -1
  725. metadata/ingestion/source/dashboard/lightdash/metadata.py +26 -14
  726. metadata/ingestion/source/dashboard/lightdash/models.py +11 -11
  727. metadata/ingestion/source/dashboard/looker/bulk_parser.py +3 -3
  728. metadata/ingestion/source/dashboard/looker/connection.py +1 -1
  729. metadata/ingestion/source/dashboard/looker/metadata.py +67 -42
  730. metadata/ingestion/source/dashboard/looker/parser.py +3 -3
  731. metadata/ingestion/source/dashboard/looker/utils.py +8 -5
  732. metadata/ingestion/source/dashboard/metabase/client.py +19 -2
  733. metadata/ingestion/source/dashboard/metabase/metadata.py +45 -14
  734. metadata/ingestion/source/dashboard/metabase/models.py +46 -28
  735. metadata/ingestion/source/dashboard/mode/client.py +1 -1
  736. metadata/ingestion/source/dashboard/mode/metadata.py +24 -14
  737. metadata/ingestion/source/dashboard/mstr/client.py +1 -1
  738. metadata/ingestion/source/dashboard/mstr/metadata.py +18 -11
  739. metadata/ingestion/source/dashboard/mstr/models.py +4 -4
  740. metadata/ingestion/source/dashboard/powerbi/client.py +2 -3
  741. metadata/ingestion/source/dashboard/powerbi/metadata.py +52 -31
  742. metadata/ingestion/source/dashboard/powerbi/models.py +25 -22
  743. metadata/ingestion/source/dashboard/qlikcloud/client.py +2 -2
  744. metadata/ingestion/source/dashboard/qlikcloud/metadata.py +28 -16
  745. metadata/ingestion/source/dashboard/qlikcloud/models.py +4 -4
  746. metadata/ingestion/source/dashboard/qliksense/client.py +3 -3
  747. metadata/ingestion/source/dashboard/qliksense/metadata.py +35 -19
  748. metadata/ingestion/source/dashboard/qliksense/models.py +8 -8
  749. metadata/ingestion/source/dashboard/quicksight/metadata.py +26 -18
  750. metadata/ingestion/source/dashboard/quicksight/models.py +16 -16
  751. metadata/ingestion/source/dashboard/redash/client.py +1 -1
  752. metadata/ingestion/source/dashboard/redash/metadata.py +31 -19
  753. metadata/ingestion/source/dashboard/superset/api_source.py +46 -18
  754. metadata/ingestion/source/dashboard/superset/client.py +2 -2
  755. metadata/ingestion/source/dashboard/superset/db_source.py +44 -18
  756. metadata/ingestion/source/dashboard/superset/metadata.py +2 -2
  757. metadata/ingestion/source/dashboard/superset/mixin.py +12 -13
  758. metadata/ingestion/source/dashboard/superset/models.py +68 -68
  759. metadata/ingestion/source/dashboard/tableau/connection.py +2 -2
  760. metadata/ingestion/source/dashboard/tableau/metadata.py +406 -99
  761. metadata/ingestion/source/dashboard/tableau/models.py +33 -35
  762. metadata/ingestion/source/dashboard/tableau/queries.py +14 -0
  763. metadata/ingestion/source/database/athena/connection.py +34 -5
  764. metadata/ingestion/source/database/athena/metadata.py +43 -168
  765. metadata/ingestion/source/database/athena/models.py +10 -10
  766. metadata/ingestion/source/database/athena/query_parser.py +2 -2
  767. metadata/ingestion/source/database/athena/utils.py +191 -0
  768. metadata/ingestion/source/database/azuresql/metadata.py +4 -4
  769. metadata/ingestion/source/database/azuresql/query_parser.py +2 -2
  770. metadata/ingestion/source/database/bigquery/connection.py +17 -5
  771. metadata/ingestion/source/database/bigquery/helper.py +1 -1
  772. metadata/ingestion/source/database/bigquery/metadata.py +91 -52
  773. metadata/ingestion/source/database/bigquery/query_parser.py +3 -3
  774. metadata/ingestion/source/database/bigtable/connection.py +2 -2
  775. metadata/ingestion/source/database/bigtable/metadata.py +2 -2
  776. metadata/ingestion/source/database/clickhouse/connection.py +3 -3
  777. metadata/ingestion/source/database/clickhouse/metadata.py +11 -8
  778. metadata/ingestion/source/database/clickhouse/query_parser.py +4 -4
  779. metadata/ingestion/source/database/column_type_parser.py +20 -12
  780. metadata/ingestion/source/database/common_db_source.py +106 -48
  781. metadata/ingestion/source/database/common_nosql_source.py +22 -17
  782. metadata/ingestion/source/database/couchbase/connection.py +1 -1
  783. metadata/ingestion/source/database/couchbase/metadata.py +3 -3
  784. metadata/ingestion/source/database/database_service.py +30 -17
  785. metadata/ingestion/source/database/databricks/connection.py +1 -1
  786. metadata/ingestion/source/database/databricks/lineage.py +4 -3
  787. metadata/ingestion/source/database/databricks/metadata.py +93 -24
  788. metadata/ingestion/source/database/databricks/queries.py +5 -1
  789. metadata/ingestion/source/database/databricks/query_parser.py +2 -2
  790. metadata/ingestion/source/database/databricks/usage.py +4 -3
  791. metadata/ingestion/source/database/datalake/clients/azure_blob.py +72 -0
  792. metadata/ingestion/source/database/datalake/clients/base.py +47 -0
  793. metadata/ingestion/source/database/datalake/clients/gcs.py +136 -0
  794. metadata/ingestion/source/database/datalake/clients/s3.py +79 -0
  795. metadata/ingestion/source/database/datalake/connection.py +12 -70
  796. metadata/ingestion/source/database/datalake/metadata.py +75 -219
  797. metadata/ingestion/source/database/db2/metadata.py +13 -13
  798. metadata/ingestion/source/database/dbt/dbt_config.py +3 -2
  799. metadata/ingestion/source/database/dbt/dbt_service.py +15 -6
  800. metadata/ingestion/source/database/dbt/metadata.py +128 -83
  801. metadata/ingestion/source/database/dbt/models.py +9 -9
  802. metadata/ingestion/source/database/deltalake/clients/__init__.py +0 -0
  803. metadata/ingestion/source/database/deltalake/clients/base.py +82 -0
  804. metadata/ingestion/source/database/deltalake/clients/pyspark.py +304 -0
  805. metadata/ingestion/source/database/deltalake/clients/s3.py +200 -0
  806. metadata/ingestion/source/database/deltalake/connection.py +56 -84
  807. metadata/ingestion/source/database/deltalake/metadata.py +67 -193
  808. metadata/ingestion/source/database/domodatabase/metadata.py +83 -38
  809. metadata/ingestion/source/database/domodatabase/models.py +6 -6
  810. metadata/ingestion/source/database/doris/metadata.py +3 -3
  811. metadata/ingestion/source/database/druid/metadata.py +2 -2
  812. metadata/ingestion/source/database/dynamodb/metadata.py +5 -5
  813. metadata/ingestion/source/database/dynamodb/models.py +2 -2
  814. metadata/ingestion/source/database/extended_sample_data.py +41 -41
  815. metadata/ingestion/source/database/external_table_lineage_mixin.py +58 -3
  816. metadata/ingestion/source/database/glue/metadata.py +23 -18
  817. metadata/ingestion/source/database/glue/models.py +6 -6
  818. metadata/ingestion/source/database/greenplum/metadata.py +4 -4
  819. metadata/ingestion/source/database/hive/connection.py +2 -2
  820. metadata/ingestion/source/database/hive/metadata.py +2 -2
  821. metadata/ingestion/source/database/iceberg/catalog/hive.py +1 -1
  822. metadata/ingestion/source/database/iceberg/catalog/rest.py +1 -1
  823. metadata/ingestion/source/database/iceberg/fs/__init__.py +1 -1
  824. metadata/ingestion/source/database/iceberg/fs/s3.py +1 -1
  825. metadata/ingestion/source/database/iceberg/helper.py +4 -4
  826. metadata/ingestion/source/database/iceberg/metadata.py +28 -22
  827. metadata/ingestion/source/database/iceberg/models.py +6 -6
  828. metadata/ingestion/source/database/impala/connection.py +3 -3
  829. metadata/ingestion/source/database/impala/metadata.py +2 -2
  830. metadata/ingestion/source/database/incremental_metadata_extraction.py +1 -1
  831. metadata/ingestion/source/database/life_cycle_query_mixin.py +12 -8
  832. metadata/ingestion/source/database/lineage_source.py +25 -13
  833. metadata/ingestion/source/database/mariadb/metadata.py +2 -2
  834. metadata/ingestion/source/database/mongodb/connection.py +1 -1
  835. metadata/ingestion/source/database/mongodb/metadata.py +2 -2
  836. metadata/ingestion/source/database/mssql/constants.py +23 -0
  837. metadata/ingestion/source/database/mssql/lineage.py +25 -0
  838. metadata/ingestion/source/database/mssql/metadata.py +30 -10
  839. metadata/ingestion/source/database/mssql/queries.py +2 -0
  840. metadata/ingestion/source/database/mssql/query_parser.py +2 -2
  841. metadata/ingestion/source/database/mssql/usage.py +42 -0
  842. metadata/ingestion/source/database/mssql/utils.py +16 -1
  843. metadata/ingestion/source/database/mysql/metadata.py +2 -2
  844. metadata/ingestion/source/database/oracle/metadata.py +16 -13
  845. metadata/ingestion/source/database/oracle/models.py +1 -1
  846. metadata/ingestion/source/database/oracle/query_parser.py +2 -2
  847. metadata/ingestion/source/database/pinotdb/metadata.py +2 -2
  848. metadata/ingestion/source/database/postgres/converter_orm.py +52 -0
  849. metadata/ingestion/source/database/postgres/lineage.py +2 -1
  850. metadata/ingestion/source/database/postgres/metadata.py +34 -6
  851. metadata/ingestion/source/database/postgres/metrics.py +42 -0
  852. metadata/ingestion/source/database/postgres/pgspider/lineage.py +2 -2
  853. metadata/ingestion/source/database/postgres/queries.py +7 -0
  854. metadata/ingestion/source/database/postgres/query_parser.py +4 -4
  855. metadata/ingestion/source/database/postgres/types/money.py +37 -0
  856. metadata/ingestion/source/database/postgres/usage.py +15 -2
  857. metadata/ingestion/source/database/presto/connection.py +2 -2
  858. metadata/ingestion/source/database/presto/metadata.py +2 -2
  859. metadata/ingestion/source/database/query/lineage.py +1 -1
  860. metadata/ingestion/source/database/query/usage.py +5 -3
  861. metadata/ingestion/source/database/query_parser_source.py +1 -1
  862. metadata/ingestion/source/database/redshift/connection.py +37 -9
  863. metadata/ingestion/source/database/redshift/metadata.py +7 -7
  864. metadata/ingestion/source/database/redshift/models.py +1 -1
  865. metadata/ingestion/source/database/redshift/queries.py +30 -7
  866. metadata/ingestion/source/database/redshift/query_parser.py +2 -2
  867. metadata/ingestion/source/database/salesforce/connection.py +1 -3
  868. metadata/ingestion/source/database/salesforce/metadata.py +22 -17
  869. metadata/ingestion/source/database/sample_data.py +198 -98
  870. metadata/ingestion/source/database/sample_usage.py +5 -7
  871. metadata/ingestion/source/database/saperp/__init__.py +0 -0
  872. metadata/ingestion/source/database/saperp/client.py +170 -0
  873. metadata/ingestion/source/database/saperp/connection.py +50 -0
  874. metadata/ingestion/source/database/saperp/constants.py +27 -0
  875. metadata/ingestion/source/database/saperp/metadata.py +322 -0
  876. metadata/ingestion/source/database/saperp/models.py +100 -0
  877. metadata/ingestion/source/database/saphana/metadata.py +2 -2
  878. metadata/ingestion/source/database/sas/client.py +2 -2
  879. metadata/ingestion/source/database/sas/metadata.py +35 -44
  880. metadata/ingestion/source/database/singlestore/metadata.py +2 -2
  881. metadata/ingestion/source/database/snowflake/connection.py +3 -3
  882. metadata/ingestion/source/database/snowflake/metadata.py +39 -12
  883. metadata/ingestion/source/database/snowflake/models.py +7 -7
  884. metadata/ingestion/source/database/snowflake/query_parser.py +2 -2
  885. metadata/ingestion/source/database/sql_column_handler.py +4 -3
  886. metadata/ingestion/source/database/sqlite/metadata.py +2 -2
  887. metadata/ingestion/source/database/stored_procedures_mixin.py +10 -11
  888. metadata/ingestion/source/database/teradata/metadata.py +4 -4
  889. metadata/ingestion/source/database/trino/connection.py +5 -7
  890. metadata/ingestion/source/database/trino/metadata.py +2 -2
  891. metadata/ingestion/source/database/trino/query_parser.py +2 -2
  892. metadata/ingestion/source/database/unitycatalog/client.py +21 -0
  893. metadata/ingestion/source/database/unitycatalog/lineage.py +7 -7
  894. metadata/ingestion/source/database/unitycatalog/metadata.py +82 -42
  895. metadata/ingestion/source/database/unitycatalog/models.py +16 -16
  896. metadata/ingestion/source/database/unitycatalog/query_parser.py +2 -2
  897. metadata/ingestion/source/database/usage_source.py +51 -34
  898. metadata/ingestion/source/database/vertica/metadata.py +3 -3
  899. metadata/ingestion/source/database/vertica/query_parser.py +4 -4
  900. metadata/ingestion/source/messaging/common_broker_source.py +18 -4
  901. metadata/ingestion/source/messaging/kafka/connection.py +1 -1
  902. metadata/ingestion/source/messaging/kafka/metadata.py +7 -9
  903. metadata/ingestion/source/messaging/kinesis/metadata.py +10 -5
  904. metadata/ingestion/source/messaging/kinesis/models.py +3 -5
  905. metadata/ingestion/source/messaging/messaging_service.py +12 -7
  906. metadata/ingestion/source/messaging/redpanda/metadata.py +2 -2
  907. metadata/ingestion/source/metadata/alationsink/__init__.py +0 -0
  908. metadata/ingestion/source/metadata/alationsink/client.py +213 -0
  909. metadata/ingestion/source/metadata/alationsink/connection.py +53 -0
  910. metadata/ingestion/source/metadata/alationsink/constants.py +60 -0
  911. metadata/ingestion/source/metadata/alationsink/metadata.py +397 -0
  912. metadata/ingestion/source/metadata/alationsink/models.py +148 -0
  913. metadata/ingestion/source/metadata/amundsen/connection.py +1 -1
  914. metadata/ingestion/source/metadata/amundsen/metadata.py +14 -10
  915. metadata/ingestion/source/metadata/atlas/client.py +1 -1
  916. metadata/ingestion/source/metadata/atlas/metadata.py +11 -12
  917. metadata/ingestion/source/mlmodel/mlflow/metadata.py +12 -6
  918. metadata/ingestion/source/mlmodel/mlmodel_service.py +13 -6
  919. metadata/ingestion/source/mlmodel/sagemaker/metadata.py +34 -21
  920. metadata/ingestion/source/pipeline/airbyte/client.py +1 -1
  921. metadata/ingestion/source/pipeline/airbyte/metadata.py +15 -11
  922. metadata/ingestion/source/pipeline/airflow/lineage_parser.py +3 -4
  923. metadata/ingestion/source/pipeline/airflow/metadata.py +28 -17
  924. metadata/ingestion/source/pipeline/airflow/models.py +21 -24
  925. metadata/ingestion/source/pipeline/dagster/client.py +3 -3
  926. metadata/ingestion/source/pipeline/dagster/metadata.py +31 -17
  927. metadata/ingestion/source/pipeline/dagster/models.py +14 -14
  928. metadata/ingestion/source/pipeline/databrickspipeline/metadata.py +120 -126
  929. metadata/ingestion/source/pipeline/databrickspipeline/models.py +72 -0
  930. metadata/ingestion/source/pipeline/dbtcloud/__init__.py +0 -0
  931. metadata/ingestion/source/pipeline/dbtcloud/client.py +143 -0
  932. metadata/ingestion/source/pipeline/dbtcloud/connection.py +60 -0
  933. metadata/ingestion/source/pipeline/dbtcloud/metadata.py +345 -0
  934. metadata/ingestion/source/pipeline/dbtcloud/models.py +72 -0
  935. metadata/ingestion/source/pipeline/dbtcloud/queries.py +45 -0
  936. metadata/ingestion/source/pipeline/domopipeline/metadata.py +21 -12
  937. metadata/ingestion/source/pipeline/fivetran/client.py +20 -6
  938. metadata/ingestion/source/pipeline/fivetran/metadata.py +124 -50
  939. metadata/ingestion/source/pipeline/fivetran/models.py +20 -0
  940. metadata/ingestion/source/pipeline/flink/client.py +53 -0
  941. metadata/ingestion/source/pipeline/flink/connection.py +52 -0
  942. metadata/ingestion/source/pipeline/flink/metadata.py +188 -0
  943. metadata/ingestion/source/pipeline/flink/models.py +44 -0
  944. metadata/ingestion/source/pipeline/gluepipeline/metadata.py +23 -11
  945. metadata/ingestion/source/pipeline/kafkaconnect/metadata.py +7 -8
  946. metadata/ingestion/source/pipeline/nifi/metadata.py +17 -8
  947. metadata/ingestion/source/pipeline/openlineage/connection.py +12 -3
  948. metadata/ingestion/source/pipeline/openlineage/metadata.py +3 -27
  949. metadata/ingestion/source/pipeline/pipeline_service.py +52 -8
  950. metadata/ingestion/source/pipeline/spline/client.py +1 -1
  951. metadata/ingestion/source/pipeline/spline/metadata.py +3 -3
  952. metadata/ingestion/source/pipeline/spline/models.py +12 -12
  953. metadata/ingestion/source/search/elasticsearch/connection.py +2 -2
  954. metadata/ingestion/source/search/elasticsearch/metadata.py +5 -4
  955. metadata/ingestion/source/search/search_service.py +13 -6
  956. metadata/ingestion/source/storage/gcs/client.py +58 -0
  957. metadata/ingestion/source/storage/gcs/connection.py +159 -0
  958. metadata/ingestion/source/storage/gcs/metadata.py +465 -0
  959. metadata/ingestion/source/storage/gcs/models.py +86 -0
  960. metadata/ingestion/source/storage/s3/metadata.py +268 -18
  961. metadata/ingestion/source/storage/s3/models.py +30 -11
  962. metadata/ingestion/source/storage/storage_service.py +43 -7
  963. metadata/ingestion/stage/table_usage.py +3 -3
  964. metadata/mixins/pandas/pandas_mixin.py +2 -2
  965. metadata/mixins/sqalchemy/sqa_mixin.py +1 -1
  966. metadata/parsers/avro_parser.py +12 -10
  967. metadata/parsers/json_schema_parser.py +4 -4
  968. metadata/parsers/protobuf_parser.py +4 -5
  969. metadata/pii/processor.py +4 -6
  970. metadata/profiler/adaptors/dynamodb.py +2 -2
  971. metadata/profiler/adaptors/mongodb.py +5 -17
  972. metadata/profiler/api/models.py +9 -9
  973. metadata/profiler/interface/nosql/profiler_interface.py +5 -8
  974. metadata/profiler/interface/pandas/profiler_interface.py +8 -10
  975. metadata/profiler/interface/profiler_interface.py +3 -3
  976. metadata/profiler/interface/profiler_interface_factory.py +46 -51
  977. metadata/profiler/interface/sqlalchemy/databricks/profiler_interface.py +28 -17
  978. metadata/profiler/interface/sqlalchemy/profiler_interface.py +25 -14
  979. metadata/profiler/metrics/composed/null_ratio.py +5 -4
  980. metadata/profiler/metrics/static/mean.py +16 -8
  981. metadata/profiler/metrics/system/queries/snowflake.py +1 -1
  982. metadata/profiler/metrics/window/percentille_mixin.py +1 -1
  983. metadata/profiler/orm/converter/base.py +21 -13
  984. metadata/profiler/orm/converter/common.py +3 -4
  985. metadata/profiler/orm/functions/datetime.py +1 -1
  986. metadata/profiler/orm/functions/median.py +11 -4
  987. metadata/profiler/orm/functions/sum.py +8 -1
  988. metadata/profiler/orm/functions/table_metric_computer.py +4 -5
  989. metadata/profiler/orm/registry.py +8 -1
  990. metadata/profiler/orm/types/custom_hex_byte_string.py +5 -3
  991. metadata/profiler/orm/types/undetermined_type.py +38 -0
  992. metadata/profiler/processor/core.py +19 -13
  993. metadata/profiler/processor/default.py +4 -1
  994. metadata/profiler/processor/processor.py +4 -4
  995. metadata/profiler/processor/sample_data_handler.py +5 -5
  996. metadata/profiler/processor/sampler/nosql/sampler.py +9 -4
  997. metadata/profiler/processor/sampler/sampler_factory.py +36 -6
  998. metadata/profiler/processor/sampler/sqlalchemy/azuresql/sampler.py +40 -0
  999. metadata/profiler/processor/sampler/sqlalchemy/sampler.py +33 -62
  1000. metadata/profiler/processor/sampler/sqlalchemy/snowflake/sampler.py +60 -0
  1001. metadata/profiler/source/base/profiler_source.py +12 -14
  1002. metadata/profiler/source/bigquery/profiler_source.py +2 -2
  1003. metadata/profiler/source/bigquery/type_mapper.py +2 -2
  1004. metadata/profiler/source/metadata.py +14 -16
  1005. metadata/profiler/source/metadata_ext.py +3 -3
  1006. metadata/readers/dataframe/avro.py +1 -3
  1007. metadata/readers/dataframe/models.py +29 -12
  1008. metadata/readers/dataframe/parquet.py +3 -3
  1009. metadata/readers/dataframe/reader_factory.py +6 -0
  1010. metadata/readers/file/api_reader.py +5 -2
  1011. metadata/readers/file/bitbucket.py +4 -4
  1012. metadata/readers/file/credentials.py +5 -5
  1013. metadata/readers/file/github.py +6 -6
  1014. metadata/readers/file/gitlab.py +172 -0
  1015. metadata/utils/class_helper.py +3 -5
  1016. metadata/utils/credentials.py +2 -2
  1017. metadata/utils/datalake/datalake_utils.py +4 -2
  1018. metadata/utils/entity_link.py +8 -0
  1019. metadata/utils/execution_time_tracker.py +2 -2
  1020. metadata/utils/filters.py +25 -17
  1021. metadata/utils/fqn.py +59 -14
  1022. metadata/utils/helpers.py +15 -12
  1023. metadata/utils/importer.py +29 -2
  1024. metadata/utils/life_cycle_utils.py +3 -3
  1025. metadata/utils/logger.py +9 -24
  1026. metadata/utils/lru_cache.py +3 -0
  1027. metadata/utils/metadata_service_helper.py +3 -1
  1028. metadata/utils/secrets/gcp_secrets_manager.py +128 -0
  1029. metadata/utils/secrets/secrets_manager_factory.py +3 -0
  1030. metadata/utils/source_hash.py +1 -1
  1031. metadata/utils/ssl_manager.py +20 -26
  1032. metadata/utils/ssl_registry.py +5 -1
  1033. metadata/utils/storage_metadata_config.py +6 -5
  1034. metadata/utils/tag_utils.py +21 -13
  1035. metadata/utils/time_utils.py +45 -5
  1036. metadata/workflow/application.py +4 -4
  1037. metadata/workflow/application_output_handler.py +6 -19
  1038. metadata/workflow/base.py +42 -5
  1039. metadata/workflow/data_quality.py +5 -5
  1040. metadata/workflow/ingestion.py +4 -6
  1041. metadata/workflow/metadata.py +4 -4
  1042. metadata/workflow/output_handler.py +35 -214
  1043. metadata/workflow/profiler.py +5 -5
  1044. metadata/workflow/usage.py +8 -6
  1045. metadata/workflow/workflow_init_error_handler.py +154 -0
  1046. metadata/workflow/workflow_output_handler.py +189 -98
  1047. metadata/workflow/workflow_status_mixin.py +20 -11
  1048. {openmetadata_ingestion-1.4.8.0.dist-info → openmetadata_ingestion-1.5.0.0.dist-info}/METADATA +388 -313
  1049. openmetadata_ingestion-1.5.0.0.dist-info/RECORD +1595 -0
  1050. {openmetadata_ingestion-1.4.8.0.dist-info → openmetadata_ingestion-1.5.0.0.dist-info}/top_level.txt +1 -0
  1051. metadata/cli/insight.py +0 -51
  1052. metadata/data_insight/processor/kpi/kpi_runner.py +0 -156
  1053. metadata/data_insight/processor/kpi/run_result_registry.py +0 -162
  1054. metadata/data_insight/processor/reports/cost_analysis_report_data_processor.py +0 -253
  1055. metadata/data_insight/processor/reports/data_processor.py +0 -72
  1056. metadata/data_insight/processor/reports/entity_report_data_processor.py +0 -262
  1057. metadata/data_insight/processor/reports/web_analytic_report_data_processor.py +0 -384
  1058. metadata/data_insight/producer/cost_analysis_producer.py +0 -126
  1059. metadata/data_insight/producer/entity_producer.py +0 -63
  1060. metadata/data_insight/producer/producer_factory.py +0 -53
  1061. metadata/data_insight/producer/web_analytics_producer.py +0 -84
  1062. metadata/data_insight/source/metadata.py +0 -175
  1063. metadata/generated/schema/dataInsight/type/percentageOfEntitiesWithDescriptionByType.py +0 -30
  1064. metadata/generated/schema/dataInsight/type/percentageOfEntitiesWithOwnerByType.py +0 -30
  1065. metadata/generated/schema/dataInsight/type/percentageOfServicesWithDescription.py +0 -30
  1066. metadata/generated/schema/dataInsight/type/percentageOfServicesWithOwner.py +0 -30
  1067. metadata/generated/schema/dataInsight/type/totalEntitiesByTier.py +0 -27
  1068. metadata/generated/schema/dataInsight/type/totalEntitiesByType.py +0 -27
  1069. metadata/workflow/data_insight.py +0 -78
  1070. openmetadata_ingestion-1.4.8.0.dist-info/RECORD +0 -1509
  1071. {metadata/cli → _openmetadata_testutils}/__init__.py +0 -0
  1072. {metadata/data_insight/processor → _openmetadata_testutils/helpers}/__init__.py +0 -0
  1073. {metadata/data_insight/processor/kpi → _openmetadata_testutils/kafka}/__init__.py +0 -0
  1074. {metadata/data_insight/processor/reports → _openmetadata_testutils/postgres}/__init__.py +0 -0
  1075. {metadata/data_insight/producer → _openmetadata_testutils/pydantic}/__init__.py +0 -0
  1076. /metadata/{data_insight/source → ingestion/source/database/datalake/clients}/__init__.py +0 -0
  1077. {openmetadata_ingestion-1.4.8.0.dist-info → openmetadata_ingestion-1.5.0.0.dist-info}/LICENSE +0 -0
  1078. {openmetadata_ingestion-1.4.8.0.dist-info → openmetadata_ingestion-1.5.0.0.dist-info}/WHEEL +0 -0
  1079. {openmetadata_ingestion-1.4.8.0.dist-info → openmetadata_ingestion-1.5.0.0.dist-info}/entry_points.txt +0 -0
@@ -1,13 +1,16 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: metadataIngestion/databaseServiceMetadataPipeline.json
3
- # timestamp: 2024-08-21T07:08:21+00:00
3
+ # timestamp: 2024-08-26T10:15:21+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
7
7
  from enum import Enum
8
8
  from typing import Optional
9
9
 
10
- from pydantic import BaseModel, Extra, Field
10
+ from pydantic import ConfigDict, Field
11
+ from typing_extensions import Annotated
12
+
13
+ from metadata.ingestion.models.custom_pydantic import BaseModel
11
14
 
12
15
  from ..type import filterPattern
13
16
 
@@ -17,110 +20,183 @@ class DatabaseMetadataConfigType(Enum):
17
20
 
18
21
 
19
22
  class Incremental(BaseModel):
20
- class Config:
21
- extra = Extra.forbid
22
-
23
- enabled: bool = Field(
24
- ...,
25
- description='If True, enables Metadata Extraction to be incremental',
26
- title='Enabled',
27
- )
28
- lookbackDays: Optional[int] = Field(
29
- 7,
30
- description='Number os days to search back for a successful pipeline run. The timestamp of the last found successful pipeline run will be used as a base to search for updated entities.',
31
- title='Successful Pipeline Run Lookback Days',
32
- )
33
- safetyMarginDays: Optional[int] = Field(
34
- 1,
35
- description='Number of days to add to the last successful pipeline run timestamp to search for updated entities.',
36
- title='Safety Margin Days',
37
- )
23
+ model_config = ConfigDict(
24
+ extra='forbid',
25
+ )
26
+ enabled: Annotated[
27
+ bool,
28
+ Field(
29
+ description='If True, enables Metadata Extraction to be incremental',
30
+ title='Enabled',
31
+ ),
32
+ ]
33
+ lookbackDays: Annotated[
34
+ Optional[int],
35
+ Field(
36
+ 7,
37
+ description='Number os days to search back for a successful pipeline run. The timestamp of the last found successful pipeline run will be used as a base to search for updated entities.',
38
+ title='Successful Pipeline Run Lookback Days',
39
+ ),
40
+ ]
41
+ safetyMarginDays: Annotated[
42
+ Optional[int],
43
+ Field(
44
+ 1,
45
+ description='Number of days to add to the last successful pipeline run timestamp to search for updated entities.',
46
+ title='Safety Margin Days',
47
+ ),
48
+ ]
38
49
 
39
50
 
40
51
  class DatabaseServiceMetadataPipeline(BaseModel):
41
- class Config:
42
- extra = Extra.forbid
43
-
44
- type: Optional[DatabaseMetadataConfigType] = Field(
45
- DatabaseMetadataConfigType.DatabaseMetadata, description='Pipeline type'
46
- )
47
- markDeletedTables: Optional[bool] = Field(
48
- True,
49
- description='This is an optional configuration for enabling soft deletion of tables. When this option is enabled, only tables that have been deleted from the source will be soft deleted, and this will apply solely to the schema that is currently being ingested via the pipeline. Any related entities such as test suites or lineage information that were associated with those tables will also be deleted.',
50
- title='Mark Deleted Tables',
51
- )
52
- markDeletedStoredProcedures: Optional[bool] = Field(
53
- True,
54
- description='Optional configuration to soft delete stored procedures in OpenMetadata if the source stored procedures are deleted. Also, if the stored procedures is deleted, all the associated entities like lineage, etc., with that stored procedures will be deleted',
55
- title='Mark Deleted Stored Procedures',
56
- )
57
- includeTables: Optional[bool] = Field(
58
- True,
59
- description='Optional configuration to turn off fetching metadata for tables.',
60
- title='Include Tables',
61
- )
62
- includeViews: Optional[bool] = Field(
63
- True,
64
- description='Optional configuration to turn off fetching metadata for views.',
65
- title='Include Views',
66
- )
67
- includeTags: Optional[bool] = Field(
68
- True,
69
- description='Optional configuration to toggle the tags ingestion.',
70
- title='Include Tags',
71
- )
72
- includeOwners: Optional[bool] = Field(
73
- False,
74
- description="Set the 'Include Owners' toggle to control whether to include owners to the ingested entity if the owner email matches with a user stored in the OM server as part of metadata ingestion. If the ingested entity already exists and has an owner, the owner will not be overwritten.",
75
- title='Include Owners',
76
- )
77
- includeStoredProcedures: Optional[bool] = Field(
78
- True,
79
- description='Optional configuration to toggle the Stored Procedures ingestion.',
80
- title='Include Stored Procedures',
81
- )
82
- includeDDL: Optional[bool] = Field(
83
- False,
84
- description='Optional configuration to toggle the DDL Statements ingestion.',
85
- title='Include DDL Statements',
86
- )
87
- queryLogDuration: Optional[int] = Field(
88
- 1,
89
- description='Configuration to tune how far we want to look back in query logs to process Stored Procedures results.',
90
- title='Query Log Duration',
91
- )
92
- queryParsingTimeoutLimit: Optional[int] = Field(
93
- 300,
94
- description='Configuration to set the timeout for parsing the query in seconds.',
95
- title='Query Parsing Timeout Limit',
96
- )
97
- useFqnForFiltering: Optional[bool] = Field(
98
- False,
99
- description='Regex will be applied on fully qualified name (e.g service_name.db_name.schema_name.table_name) instead of raw name (e.g. table_name)',
100
- title='Use FQN For Filtering',
101
- )
102
- schemaFilterPattern: Optional[filterPattern.FilterPattern] = Field(
103
- None,
104
- description='Regex to only fetch tables or databases that matches the pattern.',
105
- title='Schema Filter Pattern',
106
- )
107
- tableFilterPattern: Optional[filterPattern.FilterPattern] = Field(
108
- None,
109
- description='Regex exclude tables or databases that matches the pattern.',
110
- title='Table Filter Pattern',
111
- )
112
- databaseFilterPattern: Optional[filterPattern.FilterPattern] = Field(
113
- None,
114
- description='Regex to only fetch databases that matches the pattern.',
115
- title='Database Filter Pattern',
116
- )
117
- threads: Optional[int] = Field(
118
- 1,
119
- description='Number of Threads to use in order to paralellize Table ingestion.',
120
- title='Number of Threads',
121
- )
122
- incremental: Optional[Incremental] = Field(
123
- None,
124
- description='Use incremental Metadata extraction after the first execution. This is commonly done by getting the changes from Audit tables on the supporting databases.',
125
- title='Incremental Metadata Extraction Configuration',
126
- )
52
+ model_config = ConfigDict(
53
+ extra='forbid',
54
+ )
55
+ type: Annotated[
56
+ Optional[DatabaseMetadataConfigType],
57
+ Field(DatabaseMetadataConfigType.DatabaseMetadata, description='Pipeline type'),
58
+ ]
59
+ markDeletedTables: Annotated[
60
+ Optional[bool],
61
+ Field(
62
+ True,
63
+ description='This is an optional configuration for enabling soft deletion of tables. When this option is enabled, only tables that have been deleted from the source will be soft deleted, and this will apply solely to the schema that is currently being ingested via the pipeline. Any related entities such as test suites or lineage information that were associated with those tables will also be deleted.',
64
+ title='Mark Deleted Tables',
65
+ ),
66
+ ]
67
+ markDeletedStoredProcedures: Annotated[
68
+ Optional[bool],
69
+ Field(
70
+ True,
71
+ description='Optional configuration to soft delete stored procedures in OpenMetadata if the source stored procedures are deleted. Also, if the stored procedures is deleted, all the associated entities like lineage, etc., with that stored procedures will be deleted',
72
+ title='Mark Deleted Stored Procedures',
73
+ ),
74
+ ]
75
+ includeTables: Annotated[
76
+ Optional[bool],
77
+ Field(
78
+ True,
79
+ description='Optional configuration to turn off fetching metadata for tables.',
80
+ title='Include Tables',
81
+ ),
82
+ ]
83
+ includeViews: Annotated[
84
+ Optional[bool],
85
+ Field(
86
+ True,
87
+ description='Optional configuration to turn off fetching metadata for views.',
88
+ title='Include Views',
89
+ ),
90
+ ]
91
+ includeTags: Annotated[
92
+ Optional[bool],
93
+ Field(
94
+ True,
95
+ description='Optional configuration to toggle the tags ingestion.',
96
+ title='Include Tags',
97
+ ),
98
+ ]
99
+ includeOwners: Annotated[
100
+ Optional[bool],
101
+ Field(
102
+ False,
103
+ description="Set the 'Include Owners' toggle to control whether to include owners to the ingested entity if the owner email matches with a user stored in the OM server as part of metadata ingestion. If the ingested entity already exists and has an owner, the owner will not be overwritten.",
104
+ title='Include Owners',
105
+ ),
106
+ ]
107
+ includeStoredProcedures: Annotated[
108
+ Optional[bool],
109
+ Field(
110
+ True,
111
+ description='Optional configuration to toggle the Stored Procedures ingestion.',
112
+ title='Include Stored Procedures',
113
+ ),
114
+ ]
115
+ includeDDL: Annotated[
116
+ Optional[bool],
117
+ Field(
118
+ False,
119
+ description='Optional configuration to toggle the DDL Statements ingestion.',
120
+ title='Include DDL Statements',
121
+ ),
122
+ ]
123
+ overrideMetadata: Annotated[
124
+ Optional[bool],
125
+ Field(
126
+ False,
127
+ description="Set the 'Override Metadata' toggle to control whether to override the existing metadata in the OpenMetadata server with the metadata fetched from the source. If the toggle is set to true, the metadata fetched from the source will override the existing metadata in the OpenMetadata server. If the toggle is set to false, the metadata fetched from the source will not override the existing metadata in the OpenMetadata server. This is applicable for fields like description, tags, owner and displayName",
128
+ title='Override Metadata',
129
+ ),
130
+ ]
131
+ overrideViewLineage: Annotated[
132
+ Optional[bool],
133
+ Field(
134
+ False,
135
+ description="Set the 'Override View Lineage' toggle to control whether to override the existing view lineage.",
136
+ title='Override View Lineage',
137
+ ),
138
+ ]
139
+ queryLogDuration: Annotated[
140
+ Optional[int],
141
+ Field(
142
+ 1,
143
+ description='Configuration to tune how far we want to look back in query logs to process Stored Procedures results.',
144
+ title='Query Log Duration',
145
+ ),
146
+ ]
147
+ queryParsingTimeoutLimit: Annotated[
148
+ Optional[int],
149
+ Field(
150
+ 300,
151
+ description='Configuration to set the timeout for parsing the query in seconds.',
152
+ title='Query Parsing Timeout Limit',
153
+ ),
154
+ ]
155
+ useFqnForFiltering: Annotated[
156
+ Optional[bool],
157
+ Field(
158
+ False,
159
+ description='Regex will be applied on fully qualified name (e.g service_name.db_name.schema_name.table_name) instead of raw name (e.g. table_name)',
160
+ title='Use FQN For Filtering',
161
+ ),
162
+ ]
163
+ schemaFilterPattern: Annotated[
164
+ Optional[filterPattern.FilterPattern],
165
+ Field(
166
+ None,
167
+ description='Regex to only fetch tables or databases that matches the pattern.',
168
+ title='Schema Filter Pattern',
169
+ ),
170
+ ]
171
+ tableFilterPattern: Annotated[
172
+ Optional[filterPattern.FilterPattern],
173
+ Field(
174
+ None,
175
+ description='Regex exclude tables or databases that matches the pattern.',
176
+ title='Table Filter Pattern',
177
+ ),
178
+ ]
179
+ databaseFilterPattern: Annotated[
180
+ Optional[filterPattern.FilterPattern],
181
+ Field(
182
+ None,
183
+ description='Regex to only fetch databases that matches the pattern.',
184
+ title='Database Filter Pattern',
185
+ ),
186
+ ]
187
+ threads: Annotated[
188
+ Optional[int],
189
+ Field(
190
+ 1,
191
+ description='Number of Threads to use in order to parallelize Table ingestion.',
192
+ title='Number of Threads',
193
+ ),
194
+ ]
195
+ incremental: Annotated[
196
+ Optional[Incremental],
197
+ Field(
198
+ None,
199
+ description='Use incremental Metadata extraction after the first execution. This is commonly done by getting the changes from Audit tables on the supporting databases.',
200
+ title='Incremental Metadata Extraction Configuration',
201
+ ),
202
+ ]
@@ -1,13 +1,16 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: metadataIngestion/databaseServiceProfilerPipeline.json
3
- # timestamp: 2024-08-21T07:08:21+00:00
3
+ # timestamp: 2024-08-26T10:15:21+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
7
7
  from enum import Enum
8
8
  from typing import Optional
9
9
 
10
- from pydantic import BaseModel, Extra, Field
10
+ from pydantic import ConfigDict, Field
11
+ from typing_extensions import Annotated
12
+
13
+ from metadata.ingestion.models.custom_pydantic import BaseModel
11
14
 
12
15
  from ..entity.data import table
13
16
  from ..type import filterPattern
@@ -18,75 +21,116 @@ class ProfilerConfigType(Enum):
18
21
 
19
22
 
20
23
  class DatabaseServiceProfilerPipeline(BaseModel):
21
- class Config:
22
- extra = Extra.forbid
23
-
24
- type: Optional[ProfilerConfigType] = Field(
25
- ProfilerConfigType.Profiler, description='Pipeline type'
26
- )
27
- schemaFilterPattern: Optional[filterPattern.FilterPattern] = Field(
28
- None,
29
- description='Regex to only fetch tables or databases that matches the pattern.',
30
- title='Schema Filter Pattern',
31
- )
32
- tableFilterPattern: Optional[filterPattern.FilterPattern] = Field(
33
- None,
34
- description='Regex exclude tables or databases that matches the pattern.',
35
- title='Table Filter Pattern',
36
- )
37
- databaseFilterPattern: Optional[filterPattern.FilterPattern] = Field(
38
- None,
39
- description='Regex to only fetch databases that matches the pattern.',
40
- title='Database Filter Pattern',
41
- )
42
- includeViews: Optional[bool] = Field(
43
- True,
44
- description='Optional configuration to turn off fetching metadata for views.',
45
- title='Include Views',
46
- )
47
- useFqnForFiltering: Optional[bool] = Field(
48
- False,
49
- description='Regex will be applied on fully qualified name (e.g service_name.db_name.schema_name.table_name) instead of raw name (e.g. table_name)',
50
- title='Use FQN For Filtering',
51
- )
52
- generateSampleData: Optional[bool] = Field(
53
- True,
54
- description='Option to turn on/off generating sample data. If enabled, profiler will ingest sample data for each table.',
55
- title='Generate Sample Data',
56
- )
57
- computeMetrics: Optional[bool] = Field(
58
- True,
59
- description='Option to turn on/off computing profiler metrics.',
60
- title='Compute Metrics',
61
- )
62
- processPiiSensitive: Optional[bool] = Field(
63
- False,
64
- description='Optional configuration to automatically tag columns that might contain sensitive information',
65
- title='Auto Tag PII',
66
- )
67
- confidence: Optional[float] = Field(
68
- 80,
69
- description='Set the Confidence value for which you want the column to be tagged as PII. Confidence value ranges from 0 to 100. A higher number will yield less false positives but more false negatives. A lower number will yield more false positives but less false negatives.',
70
- title='PII Inference Confidence Level',
71
- )
72
- profileSampleType: Optional[table.ProfileSampleType] = Field(
73
- table.ProfileSampleType.PERCENTAGE, title='Profile Sample Type'
74
- )
75
- profileSample: Optional[float] = Field(
76
- None,
77
- description='Percentage of data or no. of rows used to compute the profiler metrics and run data quality tests',
78
- title='Profile Sample',
79
- )
80
- sampleDataCount: Optional[int] = Field(
81
- 50,
82
- description="Number of sample rows to ingest when 'Generate Sample Data' is enabled",
83
- title='Sample Data Rows Count',
84
- )
85
- threadCount: Optional[float] = Field(
86
- 5,
87
- description='Number of threads to use during metric computations',
88
- title='Thread Count',
89
- )
90
- timeoutSeconds: Optional[int] = Field(
91
- 43200, description='Profiler Timeout in Seconds', title='Timeout (in sec.)'
24
+ model_config = ConfigDict(
25
+ extra='forbid',
92
26
  )
27
+ type: Annotated[
28
+ Optional[ProfilerConfigType],
29
+ Field(ProfilerConfigType.Profiler, description='Pipeline type'),
30
+ ]
31
+ schemaFilterPattern: Annotated[
32
+ Optional[filterPattern.FilterPattern],
33
+ Field(
34
+ None,
35
+ description='Regex to only fetch tables or databases that matches the pattern.',
36
+ title='Schema Filter Pattern',
37
+ ),
38
+ ]
39
+ tableFilterPattern: Annotated[
40
+ Optional[filterPattern.FilterPattern],
41
+ Field(
42
+ None,
43
+ description='Regex exclude tables or databases that matches the pattern.',
44
+ title='Table Filter Pattern',
45
+ ),
46
+ ]
47
+ databaseFilterPattern: Annotated[
48
+ Optional[filterPattern.FilterPattern],
49
+ Field(
50
+ None,
51
+ description='Regex to only fetch databases that matches the pattern.',
52
+ title='Database Filter Pattern',
53
+ ),
54
+ ]
55
+ includeViews: Annotated[
56
+ Optional[bool],
57
+ Field(
58
+ True,
59
+ description='Optional configuration to turn off fetching metadata for views.',
60
+ title='Include Views',
61
+ ),
62
+ ]
63
+ useFqnForFiltering: Annotated[
64
+ Optional[bool],
65
+ Field(
66
+ False,
67
+ description='Regex will be applied on fully qualified name (e.g service_name.db_name.schema_name.table_name) instead of raw name (e.g. table_name)',
68
+ title='Use FQN For Filtering',
69
+ ),
70
+ ]
71
+ generateSampleData: Annotated[
72
+ Optional[bool],
73
+ Field(
74
+ True,
75
+ description='Option to turn on/off generating sample data. If enabled, profiler will ingest sample data for each table.',
76
+ title='Generate Sample Data',
77
+ ),
78
+ ]
79
+ computeMetrics: Annotated[
80
+ Optional[bool],
81
+ Field(
82
+ True,
83
+ description='Option to turn on/off computing profiler metrics.',
84
+ title='Compute Metrics',
85
+ ),
86
+ ]
87
+ processPiiSensitive: Annotated[
88
+ Optional[bool],
89
+ Field(
90
+ False,
91
+ description='Optional configuration to automatically tag columns that might contain sensitive information',
92
+ title='Auto Tag PII',
93
+ ),
94
+ ]
95
+ confidence: Annotated[
96
+ Optional[float],
97
+ Field(
98
+ 80,
99
+ description='Set the Confidence value for which you want the column to be tagged as PII. Confidence value ranges from 0 to 100. A higher number will yield less false positives but more false negatives. A lower number will yield more false positives but less false negatives.',
100
+ title='PII Inference Confidence Level',
101
+ ),
102
+ ]
103
+ profileSampleType: Annotated[
104
+ Optional[table.ProfileSampleType],
105
+ Field(table.ProfileSampleType.PERCENTAGE, title='Profile Sample Type'),
106
+ ]
107
+ profileSample: Annotated[
108
+ Optional[float],
109
+ Field(
110
+ None,
111
+ description='Percentage of data or no. of rows used to compute the profiler metrics and run data quality tests',
112
+ title='Profile Sample',
113
+ ),
114
+ ]
115
+ sampleDataCount: Annotated[
116
+ Optional[int],
117
+ Field(
118
+ 50,
119
+ description="Number of sample rows to ingest when 'Generate Sample Data' is enabled",
120
+ title='Sample Data Rows Count',
121
+ ),
122
+ ]
123
+ threadCount: Annotated[
124
+ Optional[float],
125
+ Field(
126
+ 5,
127
+ description='Number of threads to use during metric computations',
128
+ title='Thread Count',
129
+ ),
130
+ ]
131
+ timeoutSeconds: Annotated[
132
+ Optional[int],
133
+ Field(
134
+ 43200, description='Profiler Timeout in Seconds', title='Timeout (in sec.)'
135
+ ),
136
+ ]
@@ -1,13 +1,16 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: metadataIngestion/databaseServiceQueryLineagePipeline.json
3
- # timestamp: 2024-08-21T07:08:21+00:00
3
+ # timestamp: 2024-08-26T10:15:21+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
7
7
  from enum import Enum
8
8
  from typing import Optional
9
9
 
10
- from pydantic import BaseModel, Extra, Field
10
+ from pydantic import ConfigDict, Field
11
+ from typing_extensions import Annotated
12
+
13
+ from metadata.ingestion.models.custom_pydantic import BaseModel
11
14
 
12
15
  from ..type import filterPattern
13
16
 
@@ -17,49 +20,74 @@ class DatabaseLineageConfigType(Enum):
17
20
 
18
21
 
19
22
  class DatabaseServiceQueryLineagePipeline(BaseModel):
20
- class Config:
21
- extra = Extra.forbid
22
-
23
- type: Optional[DatabaseLineageConfigType] = Field(
24
- DatabaseLineageConfigType.DatabaseLineage, description='Pipeline type'
25
- )
26
- queryLogDuration: Optional[int] = Field(
27
- 1,
28
- description='Configuration to tune how far we want to look back in query logs to process lineage data.',
29
- title='Query Log Duration',
30
- )
31
- queryLogFilePath: Optional[str] = Field(
32
- None,
33
- description='Configuration to set the file path for query logs',
34
- title='Query Log File Path',
35
- )
36
- resultLimit: Optional[int] = Field(
37
- 1000,
38
- description='Configuration to set the limit for query logs',
39
- title='Result Limit',
40
- )
41
- parsingTimeoutLimit: Optional[int] = Field(
42
- 300,
43
- description='Configuration to set the timeout for parsing the query in seconds.',
44
- title='Parsing Timeout Limit',
45
- )
46
- filterCondition: Optional[str] = Field(
47
- None,
48
- description='Configuration the condition to filter the query history.',
49
- title='Filter Condition',
50
- )
51
- schemaFilterPattern: Optional[filterPattern.FilterPattern] = Field(
52
- None,
53
- description='Regex to only fetch tables or databases that matches the pattern.',
54
- title='Schema Filter Pattern',
55
- )
56
- tableFilterPattern: Optional[filterPattern.FilterPattern] = Field(
57
- None,
58
- description='Regex exclude tables or databases that matches the pattern.',
59
- title='Table Filter Pattern',
60
- )
61
- databaseFilterPattern: Optional[filterPattern.FilterPattern] = Field(
62
- None,
63
- description='Regex to only fetch databases that matches the pattern.',
64
- title='Database Filter Pattern',
23
+ model_config = ConfigDict(
24
+ extra='forbid',
65
25
  )
26
+ type: Annotated[
27
+ Optional[DatabaseLineageConfigType],
28
+ Field(DatabaseLineageConfigType.DatabaseLineage, description='Pipeline type'),
29
+ ]
30
+ queryLogDuration: Annotated[
31
+ Optional[int],
32
+ Field(
33
+ 1,
34
+ description='Configuration to tune how far we want to look back in query logs to process lineage data.',
35
+ title='Query Log Duration',
36
+ ),
37
+ ]
38
+ queryLogFilePath: Annotated[
39
+ Optional[str],
40
+ Field(
41
+ None,
42
+ description='Configuration to set the file path for query logs',
43
+ title='Query Log File Path',
44
+ ),
45
+ ]
46
+ resultLimit: Annotated[
47
+ Optional[int],
48
+ Field(
49
+ 1000,
50
+ description='Configuration to set the limit for query logs',
51
+ title='Result Limit',
52
+ ),
53
+ ]
54
+ parsingTimeoutLimit: Annotated[
55
+ Optional[int],
56
+ Field(
57
+ 300,
58
+ description='Configuration to set the timeout for parsing the query in seconds.',
59
+ title='Parsing Timeout Limit',
60
+ ),
61
+ ]
62
+ filterCondition: Annotated[
63
+ Optional[str],
64
+ Field(
65
+ None,
66
+ description='Configuration the condition to filter the query history.',
67
+ title='Filter Condition',
68
+ ),
69
+ ]
70
+ schemaFilterPattern: Annotated[
71
+ Optional[filterPattern.FilterPattern],
72
+ Field(
73
+ None,
74
+ description='Regex to only fetch tables or databases that matches the pattern.',
75
+ title='Schema Filter Pattern',
76
+ ),
77
+ ]
78
+ tableFilterPattern: Annotated[
79
+ Optional[filterPattern.FilterPattern],
80
+ Field(
81
+ None,
82
+ description='Regex exclude tables or databases that matches the pattern.',
83
+ title='Table Filter Pattern',
84
+ ),
85
+ ]
86
+ databaseFilterPattern: Annotated[
87
+ Optional[filterPattern.FilterPattern],
88
+ Field(
89
+ None,
90
+ description='Regex to only fetch databases that matches the pattern.',
91
+ title='Database Filter Pattern',
92
+ ),
93
+ ]