openmetadata-ingestion 1.7.1.4__py3-none-any.whl → 1.7.2.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 (737) hide show
  1. metadata/cli/classify.py +3 -1
  2. metadata/cli/dataquality.py +3 -1
  3. metadata/generated/schema/analytics/__init__.py +1 -1
  4. metadata/generated/schema/analytics/basic.py +1 -1
  5. metadata/generated/schema/analytics/reportData.py +1 -1
  6. metadata/generated/schema/analytics/reportDataType/__init__.py +1 -1
  7. metadata/generated/schema/analytics/reportDataType/aggregatedCostAnalysisReportData.py +1 -1
  8. metadata/generated/schema/analytics/reportDataType/entityReportData.py +1 -1
  9. metadata/generated/schema/analytics/reportDataType/rawCostAnalysisReportData.py +1 -1
  10. metadata/generated/schema/analytics/reportDataType/webAnalyticEntityViewReportData.py +1 -1
  11. metadata/generated/schema/analytics/reportDataType/webAnalyticUserActivityReportData.py +1 -1
  12. metadata/generated/schema/analytics/webAnalyticEvent.py +1 -1
  13. metadata/generated/schema/analytics/webAnalyticEventData.py +1 -1
  14. metadata/generated/schema/analytics/webAnalyticEventType/__init__.py +1 -1
  15. metadata/generated/schema/analytics/webAnalyticEventType/customEvent.py +1 -1
  16. metadata/generated/schema/analytics/webAnalyticEventType/pageViewEvent.py +1 -1
  17. metadata/generated/schema/api/__init__.py +1 -1
  18. metadata/generated/schema/api/addGlossaryToAssetsRequest.py +1 -1
  19. metadata/generated/schema/api/addTagToAssetsRequest.py +1 -1
  20. metadata/generated/schema/api/analytics/__init__.py +1 -1
  21. metadata/generated/schema/api/analytics/createWebAnalyticEvent.py +1 -1
  22. metadata/generated/schema/api/automations/__init__.py +1 -1
  23. metadata/generated/schema/api/automations/createWorkflow.py +1 -1
  24. metadata/generated/schema/api/bulkAssets.py +1 -1
  25. metadata/generated/schema/api/classification/__init__.py +1 -1
  26. metadata/generated/schema/api/classification/createClassification.py +1 -1
  27. metadata/generated/schema/api/classification/createTag.py +1 -1
  28. metadata/generated/schema/api/classification/loadTags.py +1 -1
  29. metadata/generated/schema/api/createBot.py +1 -1
  30. metadata/generated/schema/api/createEventPublisherJob.py +1 -1
  31. metadata/generated/schema/api/createType.py +1 -1
  32. metadata/generated/schema/api/data/__init__.py +1 -1
  33. metadata/generated/schema/api/data/createAPICollection.py +1 -1
  34. metadata/generated/schema/api/data/createAPIEndpoint.py +1 -1
  35. metadata/generated/schema/api/data/createChart.py +1 -1
  36. metadata/generated/schema/api/data/createContainer.py +1 -1
  37. metadata/generated/schema/api/data/createCustomProperty.py +1 -1
  38. metadata/generated/schema/api/data/createDashboard.py +1 -1
  39. metadata/generated/schema/api/data/createDashboardDataModel.py +1 -1
  40. metadata/generated/schema/api/data/createDatabase.py +1 -1
  41. metadata/generated/schema/api/data/createDatabaseSchema.py +1 -1
  42. metadata/generated/schema/api/data/createGlossary.py +1 -1
  43. metadata/generated/schema/api/data/createGlossaryTerm.py +1 -1
  44. metadata/generated/schema/api/data/createMetric.py +1 -1
  45. metadata/generated/schema/api/data/createMlModel.py +1 -1
  46. metadata/generated/schema/api/data/createPipeline.py +1 -1
  47. metadata/generated/schema/api/data/createQuery.py +1 -1
  48. metadata/generated/schema/api/data/createQueryCostRecord.py +1 -1
  49. metadata/generated/schema/api/data/createSearchIndex.py +1 -1
  50. metadata/generated/schema/api/data/createStoredProcedure.py +1 -1
  51. metadata/generated/schema/api/data/createTable.py +1 -1
  52. metadata/generated/schema/api/data/createTableProfile.py +1 -1
  53. metadata/generated/schema/api/data/createTopic.py +1 -1
  54. metadata/generated/schema/api/data/loadGlossary.py +1 -1
  55. metadata/generated/schema/api/data/restoreEntity.py +1 -1
  56. metadata/generated/schema/api/dataInsight/__init__.py +1 -1
  57. metadata/generated/schema/api/dataInsight/createDataInsightChart.py +1 -1
  58. metadata/generated/schema/api/dataInsight/custom/__init__.py +1 -1
  59. metadata/generated/schema/api/dataInsight/custom/createDataInsightCustomChart.py +1 -1
  60. metadata/generated/schema/api/dataInsight/kpi/__init__.py +1 -1
  61. metadata/generated/schema/api/dataInsight/kpi/createKpiRequest.py +1 -1
  62. metadata/generated/schema/api/docStore/__init__.py +1 -1
  63. metadata/generated/schema/api/docStore/createDocument.py +1 -1
  64. metadata/generated/schema/api/domains/__init__.py +1 -1
  65. metadata/generated/schema/api/domains/createDataProduct.py +1 -1
  66. metadata/generated/schema/api/domains/createDomain.py +1 -1
  67. metadata/generated/schema/api/feed/__init__.py +1 -1
  68. metadata/generated/schema/api/feed/closeTask.py +1 -1
  69. metadata/generated/schema/api/feed/createPost.py +1 -1
  70. metadata/generated/schema/api/feed/createSuggestion.py +1 -1
  71. metadata/generated/schema/api/feed/createThread.py +1 -1
  72. metadata/generated/schema/api/feed/resolveTask.py +1 -1
  73. metadata/generated/schema/api/feed/threadCount.py +1 -1
  74. metadata/generated/schema/api/governance/__init__.py +1 -1
  75. metadata/generated/schema/api/governance/createWorkflowDefinition.py +1 -1
  76. metadata/generated/schema/api/governance/createWorkflowInstanceState.py +1 -1
  77. metadata/generated/schema/api/lineage/__init__.py +1 -1
  78. metadata/generated/schema/api/lineage/addLineage.py +1 -1
  79. metadata/generated/schema/api/lineage/esLineageData.py +1 -1
  80. metadata/generated/schema/api/lineage/lineageDirection.py +1 -1
  81. metadata/generated/schema/api/lineage/nodeInformation.py +1 -1
  82. metadata/generated/schema/api/lineage/searchLineageRequest.py +1 -1
  83. metadata/generated/schema/api/lineage/searchLineageResult.py +1 -1
  84. metadata/generated/schema/api/openMetadataServerVersion.py +1 -1
  85. metadata/generated/schema/api/policies/__init__.py +1 -1
  86. metadata/generated/schema/api/policies/createPolicy.py +1 -1
  87. metadata/generated/schema/api/search/__init__.py +1 -1
  88. metadata/generated/schema/api/search/previewSearchRequest.py +1 -1
  89. metadata/generated/schema/api/services/__init__.py +1 -1
  90. metadata/generated/schema/api/services/createApiService.py +1 -1
  91. metadata/generated/schema/api/services/createDashboardService.py +1 -1
  92. metadata/generated/schema/api/services/createDatabaseService.py +1 -1
  93. metadata/generated/schema/api/services/createMessagingService.py +1 -1
  94. metadata/generated/schema/api/services/createMetadataService.py +1 -1
  95. metadata/generated/schema/api/services/createMlModelService.py +1 -1
  96. metadata/generated/schema/api/services/createPipelineService.py +1 -1
  97. metadata/generated/schema/api/services/createSearchService.py +1 -1
  98. metadata/generated/schema/api/services/createStorageService.py +1 -1
  99. metadata/generated/schema/api/services/ingestionPipelines/__init__.py +1 -1
  100. metadata/generated/schema/api/services/ingestionPipelines/createIngestionPipeline.py +2 -1
  101. metadata/generated/schema/api/setOwner.py +1 -1
  102. metadata/generated/schema/api/teams/__init__.py +1 -1
  103. metadata/generated/schema/api/teams/createPersona.py +1 -1
  104. metadata/generated/schema/api/teams/createRole.py +1 -1
  105. metadata/generated/schema/api/teams/createTeam.py +1 -1
  106. metadata/generated/schema/api/teams/createUser.py +1 -1
  107. metadata/generated/schema/api/tests/__init__.py +1 -1
  108. metadata/generated/schema/api/tests/createCustomMetric.py +1 -1
  109. metadata/generated/schema/api/tests/createLogicalTestCases.py +1 -1
  110. metadata/generated/schema/api/tests/createTestCase.py +1 -1
  111. metadata/generated/schema/api/tests/createTestCaseResolutionStatus.py +1 -1
  112. metadata/generated/schema/api/tests/createTestCaseResult.py +1 -1
  113. metadata/generated/schema/api/tests/createTestDefinition.py +1 -1
  114. metadata/generated/schema/api/tests/createTestSuite.py +1 -1
  115. metadata/generated/schema/api/voteRequest.py +1 -1
  116. metadata/generated/schema/auth/__init__.py +1 -1
  117. metadata/generated/schema/auth/basicAuth.py +1 -1
  118. metadata/generated/schema/auth/basicLoginRequest.py +1 -1
  119. metadata/generated/schema/auth/changePasswordRequest.py +1 -1
  120. metadata/generated/schema/auth/createPersonalToken.py +1 -1
  121. metadata/generated/schema/auth/emailRequest.py +1 -1
  122. metadata/generated/schema/auth/emailVerificationToken.py +1 -1
  123. metadata/generated/schema/auth/generateToken.py +1 -1
  124. metadata/generated/schema/auth/jwtAuth.py +1 -1
  125. metadata/generated/schema/auth/loginRequest.py +1 -1
  126. metadata/generated/schema/auth/logoutRequest.py +1 -1
  127. metadata/generated/schema/auth/passwordResetRequest.py +1 -1
  128. metadata/generated/schema/auth/passwordResetToken.py +1 -1
  129. metadata/generated/schema/auth/personalAccessToken.py +1 -1
  130. metadata/generated/schema/auth/refreshToken.py +1 -1
  131. metadata/generated/schema/auth/registrationRequest.py +1 -1
  132. metadata/generated/schema/auth/revokePersonalToken.py +1 -1
  133. metadata/generated/schema/auth/revokeToken.py +1 -1
  134. metadata/generated/schema/auth/serviceTokenEnum.py +1 -1
  135. metadata/generated/schema/auth/ssoAuth.py +1 -1
  136. metadata/generated/schema/auth/tokenRefreshRequest.py +1 -1
  137. metadata/generated/schema/configuration/__init__.py +1 -1
  138. metadata/generated/schema/configuration/appsPrivateConfiguration.py +1 -1
  139. metadata/generated/schema/configuration/assetCertificationSettings.py +1 -1
  140. metadata/generated/schema/configuration/authConfig.py +1 -1
  141. metadata/generated/schema/configuration/authenticationConfiguration.py +1 -1
  142. metadata/generated/schema/configuration/authorizerConfiguration.py +1 -1
  143. metadata/generated/schema/configuration/changeEventConfiguration.py +1 -1
  144. metadata/generated/schema/configuration/dataQualityConfiguration.py +1 -1
  145. metadata/generated/schema/configuration/elasticSearchConfiguration.py +1 -1
  146. metadata/generated/schema/configuration/eventHandlerConfiguration.py +1 -1
  147. metadata/generated/schema/configuration/fernetConfiguration.py +1 -1
  148. metadata/generated/schema/configuration/jwtTokenConfiguration.py +1 -1
  149. metadata/generated/schema/configuration/kafkaEventConfiguration.py +1 -1
  150. metadata/generated/schema/configuration/ldapConfiguration.py +1 -1
  151. metadata/generated/schema/configuration/ldapTrustStoreConfig/__init__.py +1 -1
  152. metadata/generated/schema/configuration/ldapTrustStoreConfig/customTrustManagerConfig.py +1 -1
  153. metadata/generated/schema/configuration/ldapTrustStoreConfig/hostNameConfig.py +1 -1
  154. metadata/generated/schema/configuration/ldapTrustStoreConfig/jvmDefaultConfig.py +1 -1
  155. metadata/generated/schema/configuration/ldapTrustStoreConfig/trustAllConfig.py +1 -1
  156. metadata/generated/schema/configuration/ldapTrustStoreConfig/truststoreConfig.py +1 -1
  157. metadata/generated/schema/configuration/limitsConfiguration.py +1 -1
  158. metadata/generated/schema/configuration/lineageSettings.py +1 -1
  159. metadata/generated/schema/configuration/loginConfiguration.py +1 -1
  160. metadata/generated/schema/configuration/logoConfiguration.py +1 -1
  161. metadata/generated/schema/configuration/openMetadataBaseUrlConfiguration.py +1 -1
  162. metadata/generated/schema/configuration/opertionalConfiguration.py +1 -1
  163. metadata/generated/schema/configuration/opsConfig.py +1 -1
  164. metadata/generated/schema/configuration/pipelineServiceClientConfiguration.py +1 -1
  165. metadata/generated/schema/configuration/profilerConfiguration.py +1 -1
  166. metadata/generated/schema/configuration/searchSettings.py +1 -1
  167. metadata/generated/schema/configuration/slackAppConfiguration.py +1 -1
  168. metadata/generated/schema/configuration/taskNotificationConfiguration.py +1 -1
  169. metadata/generated/schema/configuration/testResultNotificationConfiguration.py +1 -1
  170. metadata/generated/schema/configuration/themeConfiguration.py +1 -1
  171. metadata/generated/schema/configuration/uiThemePreference.py +1 -1
  172. metadata/generated/schema/configuration/workflowSettings.py +1 -1
  173. metadata/generated/schema/dataInsight/__init__.py +1 -1
  174. metadata/generated/schema/dataInsight/custom/__init__.py +1 -1
  175. metadata/generated/schema/dataInsight/custom/dataInsightCustomChart.py +1 -1
  176. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResult.py +1 -1
  177. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResultList.py +1 -1
  178. metadata/generated/schema/dataInsight/custom/formulaHolder.py +1 -1
  179. metadata/generated/schema/dataInsight/custom/lineChart.py +1 -1
  180. metadata/generated/schema/dataInsight/custom/summaryCard.py +1 -1
  181. metadata/generated/schema/dataInsight/dataInsightChart.py +1 -1
  182. metadata/generated/schema/dataInsight/dataInsightChartResult.py +1 -1
  183. metadata/generated/schema/dataInsight/kpi/__init__.py +1 -1
  184. metadata/generated/schema/dataInsight/kpi/basic.py +1 -1
  185. metadata/generated/schema/dataInsight/kpi/kpi.py +1 -1
  186. metadata/generated/schema/dataInsight/type/__init__.py +1 -1
  187. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsCount.py +1 -1
  188. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsSize.py +1 -1
  189. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsCount.py +1 -1
  190. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsSize.py +1 -1
  191. metadata/generated/schema/dataInsight/type/dailyActiveUsers.py +1 -1
  192. metadata/generated/schema/dataInsight/type/mostActiveUsers.py +1 -1
  193. metadata/generated/schema/dataInsight/type/mostViewedEntities.py +1 -1
  194. metadata/generated/schema/dataInsight/type/pageViewsByEntities.py +1 -1
  195. metadata/generated/schema/dataInsight/type/unusedAssets.py +1 -1
  196. metadata/generated/schema/email/__init__.py +1 -1
  197. metadata/generated/schema/email/emailRequest.py +1 -1
  198. metadata/generated/schema/email/emailTemplate.py +1 -1
  199. metadata/generated/schema/email/emailTemplatePlaceholder.py +1 -1
  200. metadata/generated/schema/email/smtpSettings.py +1 -1
  201. metadata/generated/schema/email/templateValidationReponse.py +1 -1
  202. metadata/generated/schema/entity/__init__.py +1 -1
  203. metadata/generated/schema/entity/applications/__init__.py +1 -1
  204. metadata/generated/schema/entity/applications/app.py +1 -1
  205. metadata/generated/schema/entity/applications/appExtension.py +1 -1
  206. metadata/generated/schema/entity/applications/appRunRecord.py +1 -1
  207. metadata/generated/schema/entity/applications/configuration/__init__.py +1 -1
  208. metadata/generated/schema/entity/applications/configuration/applicationConfig.py +1 -1
  209. metadata/generated/schema/entity/applications/configuration/external/__init__.py +1 -1
  210. metadata/generated/schema/entity/applications/configuration/external/automator/__init__.py +1 -1
  211. metadata/generated/schema/entity/applications/configuration/external/automator/addCustomProperties.py +1 -1
  212. metadata/generated/schema/entity/applications/configuration/external/automator/addDataProductAction.py +1 -1
  213. metadata/generated/schema/entity/applications/configuration/external/automator/addDescriptionAction.py +1 -1
  214. metadata/generated/schema/entity/applications/configuration/external/automator/addDomainAction.py +1 -1
  215. metadata/generated/schema/entity/applications/configuration/external/automator/addOwnerAction.py +1 -1
  216. metadata/generated/schema/entity/applications/configuration/external/automator/addTagsAction.py +1 -1
  217. metadata/generated/schema/entity/applications/configuration/external/automator/addTestCaseAction.py +1 -1
  218. metadata/generated/schema/entity/applications/configuration/external/automator/addTierAction.py +1 -1
  219. metadata/generated/schema/entity/applications/configuration/external/automator/lineagePropagationAction.py +1 -1
  220. metadata/generated/schema/entity/applications/configuration/external/automator/mlTaggingAction.py +1 -1
  221. metadata/generated/schema/entity/applications/configuration/external/automator/removeCustomPropertiesAction.py +1 -1
  222. metadata/generated/schema/entity/applications/configuration/external/automator/removeDataProductAction.py +1 -1
  223. metadata/generated/schema/entity/applications/configuration/external/automator/removeDescriptionAction.py +1 -1
  224. metadata/generated/schema/entity/applications/configuration/external/automator/removeDomainAction.py +1 -1
  225. metadata/generated/schema/entity/applications/configuration/external/automator/removeOwnerAction.py +1 -1
  226. metadata/generated/schema/entity/applications/configuration/external/automator/removeTagsAction.py +1 -1
  227. metadata/generated/schema/entity/applications/configuration/external/automator/removeTestCaseAction.py +1 -1
  228. metadata/generated/schema/entity/applications/configuration/external/automator/removeTierAction.py +1 -1
  229. metadata/generated/schema/entity/applications/configuration/external/automatorAppConfig.py +1 -1
  230. metadata/generated/schema/entity/applications/configuration/external/collateAIAppConfig.py +1 -1
  231. metadata/generated/schema/entity/applications/configuration/external/slackAppTokenConfiguration.py +1 -1
  232. metadata/generated/schema/entity/applications/configuration/internal/__init__.py +1 -1
  233. metadata/generated/schema/entity/applications/configuration/internal/autoPilotAppConfig.py +1 -1
  234. metadata/generated/schema/entity/applications/configuration/internal/collateAIQualityAgentAppConfig.py +1 -1
  235. metadata/generated/schema/entity/applications/configuration/internal/collateAITierAgentAppConfig.py +1 -1
  236. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsAppConfig.py +1 -1
  237. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsReportAppConfig.py +1 -1
  238. metadata/generated/schema/entity/applications/configuration/internal/dataRetentionConfiguration.py +1 -1
  239. metadata/generated/schema/entity/applications/configuration/internal/helloPipelinesConfiguration.py +1 -1
  240. metadata/generated/schema/entity/applications/configuration/internal/searchIndexingAppConfig.py +1 -1
  241. metadata/generated/schema/entity/applications/configuration/private/__init__.py +1 -1
  242. metadata/generated/schema/entity/applications/configuration/private/external/__init__.py +1 -1
  243. metadata/generated/schema/entity/applications/configuration/private/external/collateAIAppPrivateConfig.py +1 -1
  244. metadata/generated/schema/entity/applications/configuration/private/internal/__init__.py +1 -1
  245. metadata/generated/schema/entity/applications/configuration/private/internal/collateAITierAgentAppPrivateConfig.py +1 -1
  246. metadata/generated/schema/entity/applications/configuration/private/limits.py +1 -1
  247. metadata/generated/schema/entity/applications/createAppRequest.py +1 -1
  248. metadata/generated/schema/entity/applications/jobStatus.py +1 -1
  249. metadata/generated/schema/entity/applications/liveExecutionContext.py +1 -1
  250. metadata/generated/schema/entity/applications/marketplace/__init__.py +1 -1
  251. metadata/generated/schema/entity/applications/marketplace/appMarketPlaceDefinition.py +1 -1
  252. metadata/generated/schema/entity/applications/marketplace/createAppMarketPlaceDefinitionReq.py +1 -1
  253. metadata/generated/schema/entity/applications/scheduledExecutionContext.py +1 -1
  254. metadata/generated/schema/entity/automations/__init__.py +1 -1
  255. metadata/generated/schema/entity/automations/testServiceConnection.py +1 -1
  256. metadata/generated/schema/entity/automations/workflow.py +1 -1
  257. metadata/generated/schema/entity/bot.py +1 -1
  258. metadata/generated/schema/entity/classification/__init__.py +1 -1
  259. metadata/generated/schema/entity/classification/classification.py +1 -1
  260. metadata/generated/schema/entity/classification/tag.py +1 -1
  261. metadata/generated/schema/entity/data/__init__.py +1 -1
  262. metadata/generated/schema/entity/data/apiCollection.py +1 -1
  263. metadata/generated/schema/entity/data/apiEndpoint.py +1 -1
  264. metadata/generated/schema/entity/data/chart.py +1 -1
  265. metadata/generated/schema/entity/data/container.py +1 -1
  266. metadata/generated/schema/entity/data/dashboard.py +1 -1
  267. metadata/generated/schema/entity/data/dashboardDataModel.py +1 -1
  268. metadata/generated/schema/entity/data/database.py +1 -1
  269. metadata/generated/schema/entity/data/databaseSchema.py +1 -1
  270. metadata/generated/schema/entity/data/glossary.py +1 -1
  271. metadata/generated/schema/entity/data/glossaryTerm.py +1 -1
  272. metadata/generated/schema/entity/data/metric.py +1 -1
  273. metadata/generated/schema/entity/data/mlmodel.py +1 -1
  274. metadata/generated/schema/entity/data/pipeline.py +1 -1
  275. metadata/generated/schema/entity/data/query.py +1 -1
  276. metadata/generated/schema/entity/data/queryCostRecord.py +1 -1
  277. metadata/generated/schema/entity/data/queryCostSearchResult.py +1 -1
  278. metadata/generated/schema/entity/data/report.py +1 -1
  279. metadata/generated/schema/entity/data/searchIndex.py +1 -1
  280. metadata/generated/schema/entity/data/storedProcedure.py +1 -1
  281. metadata/generated/schema/entity/data/table.py +1 -1
  282. metadata/generated/schema/entity/data/topic.py +1 -1
  283. metadata/generated/schema/entity/docStore/__init__.py +1 -1
  284. metadata/generated/schema/entity/docStore/document.py +1 -1
  285. metadata/generated/schema/entity/domains/__init__.py +1 -1
  286. metadata/generated/schema/entity/domains/dataProduct.py +1 -1
  287. metadata/generated/schema/entity/domains/domain.py +1 -1
  288. metadata/generated/schema/entity/events/__init__.py +1 -1
  289. metadata/generated/schema/entity/events/webhook.py +1 -1
  290. metadata/generated/schema/entity/feed/__init__.py +1 -1
  291. metadata/generated/schema/entity/feed/assets.py +1 -1
  292. metadata/generated/schema/entity/feed/customProperty.py +1 -1
  293. metadata/generated/schema/entity/feed/description.py +1 -1
  294. metadata/generated/schema/entity/feed/domain.py +1 -1
  295. metadata/generated/schema/entity/feed/entityInfo.py +1 -1
  296. metadata/generated/schema/entity/feed/owner.py +1 -1
  297. metadata/generated/schema/entity/feed/suggestion.py +1 -1
  298. metadata/generated/schema/entity/feed/tag.py +1 -1
  299. metadata/generated/schema/entity/feed/testCaseResult.py +1 -1
  300. metadata/generated/schema/entity/feed/thread.py +1 -1
  301. metadata/generated/schema/entity/policies/__init__.py +1 -1
  302. metadata/generated/schema/entity/policies/accessControl/__init__.py +1 -1
  303. metadata/generated/schema/entity/policies/accessControl/resourceDescriptor.py +1 -1
  304. metadata/generated/schema/entity/policies/accessControl/resourcePermission.py +1 -1
  305. metadata/generated/schema/entity/policies/accessControl/rule.py +1 -1
  306. metadata/generated/schema/entity/policies/filters.py +1 -1
  307. metadata/generated/schema/entity/policies/policy.py +1 -1
  308. metadata/generated/schema/entity/services/__init__.py +1 -1
  309. metadata/generated/schema/entity/services/apiService.py +1 -1
  310. metadata/generated/schema/entity/services/connections/__init__.py +1 -1
  311. metadata/generated/schema/entity/services/connections/api/__init__.py +1 -1
  312. metadata/generated/schema/entity/services/connections/api/restConnection.py +1 -1
  313. metadata/generated/schema/entity/services/connections/common/__init__.py +1 -1
  314. metadata/generated/schema/entity/services/connections/common/sslCertPaths.py +1 -1
  315. metadata/generated/schema/entity/services/connections/common/sslCertValues.py +1 -1
  316. metadata/generated/schema/entity/services/connections/common/sslConfig.py +1 -1
  317. metadata/generated/schema/entity/services/connections/connectionBasicType.py +1 -1
  318. metadata/generated/schema/entity/services/connections/dashboard/__init__.py +1 -1
  319. metadata/generated/schema/entity/services/connections/dashboard/customDashboardConnection.py +1 -1
  320. metadata/generated/schema/entity/services/connections/dashboard/domoDashboardConnection.py +1 -1
  321. metadata/generated/schema/entity/services/connections/dashboard/lightdashConnection.py +1 -1
  322. metadata/generated/schema/entity/services/connections/dashboard/lookerConnection.py +1 -1
  323. metadata/generated/schema/entity/services/connections/dashboard/metabaseConnection.py +1 -1
  324. metadata/generated/schema/entity/services/connections/dashboard/microStrategyConnection.py +1 -1
  325. metadata/generated/schema/entity/services/connections/dashboard/modeConnection.py +1 -1
  326. metadata/generated/schema/entity/services/connections/dashboard/powerBIConnection.py +1 -1
  327. metadata/generated/schema/entity/services/connections/dashboard/powerBIReportServerConnection.py +1 -1
  328. metadata/generated/schema/entity/services/connections/dashboard/powerbi/__init__.py +1 -1
  329. metadata/generated/schema/entity/services/connections/dashboard/powerbi/azureConfig.py +1 -1
  330. metadata/generated/schema/entity/services/connections/dashboard/powerbi/bucketDetails.py +1 -1
  331. metadata/generated/schema/entity/services/connections/dashboard/powerbi/gcsConfig.py +1 -1
  332. metadata/generated/schema/entity/services/connections/dashboard/powerbi/s3Config.py +1 -1
  333. metadata/generated/schema/entity/services/connections/dashboard/qlikCloudConnection.py +1 -1
  334. metadata/generated/schema/entity/services/connections/dashboard/qlikSenseConnection.py +1 -1
  335. metadata/generated/schema/entity/services/connections/dashboard/quickSightConnection.py +1 -1
  336. metadata/generated/schema/entity/services/connections/dashboard/redashConnection.py +1 -1
  337. metadata/generated/schema/entity/services/connections/dashboard/sigmaConnection.py +1 -1
  338. metadata/generated/schema/entity/services/connections/dashboard/supersetConnection.py +1 -1
  339. metadata/generated/schema/entity/services/connections/dashboard/tableauConnection.py +9 -1
  340. metadata/generated/schema/entity/services/connections/database/__init__.py +1 -1
  341. metadata/generated/schema/entity/services/connections/database/athenaConnection.py +1 -1
  342. metadata/generated/schema/entity/services/connections/database/azureSQLConnection.py +1 -1
  343. metadata/generated/schema/entity/services/connections/database/bigQueryConnection.py +1 -1
  344. metadata/generated/schema/entity/services/connections/database/bigTableConnection.py +1 -1
  345. metadata/generated/schema/entity/services/connections/database/cassandra/__init__.py +1 -1
  346. metadata/generated/schema/entity/services/connections/database/cassandra/cloudConfig.py +1 -1
  347. metadata/generated/schema/entity/services/connections/database/cassandraConnection.py +1 -1
  348. metadata/generated/schema/entity/services/connections/database/clickhouseConnection.py +1 -1
  349. metadata/generated/schema/entity/services/connections/database/cockroachConnection.py +1 -1
  350. metadata/generated/schema/entity/services/connections/database/common/__init__.py +1 -1
  351. metadata/generated/schema/entity/services/connections/database/common/azureConfig.py +1 -1
  352. metadata/generated/schema/entity/services/connections/database/common/basicAuth.py +1 -1
  353. metadata/generated/schema/entity/services/connections/database/common/iamAuthConfig.py +1 -1
  354. metadata/generated/schema/entity/services/connections/database/common/jwtAuth.py +1 -1
  355. metadata/generated/schema/entity/services/connections/database/common/noConfigAuthenticationTypes.py +1 -1
  356. metadata/generated/schema/entity/services/connections/database/couchbaseConnection.py +1 -1
  357. metadata/generated/schema/entity/services/connections/database/customDatabaseConnection.py +1 -1
  358. metadata/generated/schema/entity/services/connections/database/databricksConnection.py +1 -1
  359. metadata/generated/schema/entity/services/connections/database/datalake/__init__.py +1 -1
  360. metadata/generated/schema/entity/services/connections/database/datalake/azureConfig.py +1 -1
  361. metadata/generated/schema/entity/services/connections/database/datalake/gcsConfig.py +1 -1
  362. metadata/generated/schema/entity/services/connections/database/datalake/s3Config.py +1 -1
  363. metadata/generated/schema/entity/services/connections/database/datalakeConnection.py +1 -1
  364. metadata/generated/schema/entity/services/connections/database/db2Connection.py +9 -1
  365. metadata/generated/schema/entity/services/connections/database/deltaLakeConnection.py +1 -1
  366. metadata/generated/schema/entity/services/connections/database/deltalake/__init__.py +1 -1
  367. metadata/generated/schema/entity/services/connections/database/deltalake/metastoreConfig.py +1 -1
  368. metadata/generated/schema/entity/services/connections/database/deltalake/storageConfig.py +1 -1
  369. metadata/generated/schema/entity/services/connections/database/domoDatabaseConnection.py +1 -1
  370. metadata/generated/schema/entity/services/connections/database/dorisConnection.py +1 -1
  371. metadata/generated/schema/entity/services/connections/database/druidConnection.py +1 -1
  372. metadata/generated/schema/entity/services/connections/database/dynamoDBConnection.py +1 -1
  373. metadata/generated/schema/entity/services/connections/database/exasolConnection.py +1 -1
  374. metadata/generated/schema/entity/services/connections/database/glueConnection.py +1 -1
  375. metadata/generated/schema/entity/services/connections/database/greenplumConnection.py +1 -1
  376. metadata/generated/schema/entity/services/connections/database/hiveConnection.py +1 -1
  377. metadata/generated/schema/entity/services/connections/database/iceberg/__init__.py +1 -1
  378. metadata/generated/schema/entity/services/connections/database/iceberg/dynamoDbCatalogConnection.py +1 -1
  379. metadata/generated/schema/entity/services/connections/database/iceberg/glueCatalogConnection.py +1 -1
  380. metadata/generated/schema/entity/services/connections/database/iceberg/hiveCatalogConnection.py +1 -1
  381. metadata/generated/schema/entity/services/connections/database/iceberg/icebergCatalog.py +1 -1
  382. metadata/generated/schema/entity/services/connections/database/iceberg/icebergFileSystem.py +1 -1
  383. metadata/generated/schema/entity/services/connections/database/iceberg/restCatalogConnection.py +1 -1
  384. metadata/generated/schema/entity/services/connections/database/icebergConnection.py +1 -1
  385. metadata/generated/schema/entity/services/connections/database/impalaConnection.py +1 -1
  386. metadata/generated/schema/entity/services/connections/database/mariaDBConnection.py +1 -1
  387. metadata/generated/schema/entity/services/connections/database/mongoDBConnection.py +1 -1
  388. metadata/generated/schema/entity/services/connections/database/mssqlConnection.py +1 -1
  389. metadata/generated/schema/entity/services/connections/database/mysqlConnection.py +1 -1
  390. metadata/generated/schema/entity/services/connections/database/oracleConnection.py +1 -1
  391. metadata/generated/schema/entity/services/connections/database/pinotDBConnection.py +1 -1
  392. metadata/generated/schema/entity/services/connections/database/postgresConnection.py +1 -1
  393. metadata/generated/schema/entity/services/connections/database/prestoConnection.py +1 -1
  394. metadata/generated/schema/entity/services/connections/database/redshiftConnection.py +1 -1
  395. metadata/generated/schema/entity/services/connections/database/salesforceConnection.py +1 -1
  396. metadata/generated/schema/entity/services/connections/database/sapErpConnection.py +1 -1
  397. metadata/generated/schema/entity/services/connections/database/sapHana/__init__.py +1 -1
  398. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaHDBConnection.py +1 -1
  399. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaSQLConnection.py +1 -1
  400. metadata/generated/schema/entity/services/connections/database/sapHanaConnection.py +1 -1
  401. metadata/generated/schema/entity/services/connections/database/sasConnection.py +1 -1
  402. metadata/generated/schema/entity/services/connections/database/singleStoreConnection.py +1 -1
  403. metadata/generated/schema/entity/services/connections/database/snowflakeConnection.py +1 -1
  404. metadata/generated/schema/entity/services/connections/database/sqliteConnection.py +1 -1
  405. metadata/generated/schema/entity/services/connections/database/synapseConnection.py +1 -1
  406. metadata/generated/schema/entity/services/connections/database/teradataConnection.py +1 -1
  407. metadata/generated/schema/entity/services/connections/database/trinoConnection.py +9 -1
  408. metadata/generated/schema/entity/services/connections/database/unityCatalogConnection.py +1 -1
  409. metadata/generated/schema/entity/services/connections/database/verticaConnection.py +1 -1
  410. metadata/generated/schema/entity/services/connections/messaging/__init__.py +1 -1
  411. metadata/generated/schema/entity/services/connections/messaging/customMessagingConnection.py +1 -1
  412. metadata/generated/schema/entity/services/connections/messaging/kafkaConnection.py +1 -1
  413. metadata/generated/schema/entity/services/connections/messaging/kinesisConnection.py +1 -1
  414. metadata/generated/schema/entity/services/connections/messaging/pulsarConnection.py +1 -1
  415. metadata/generated/schema/entity/services/connections/messaging/redpandaConnection.py +1 -1
  416. metadata/generated/schema/entity/services/connections/messaging/saslMechanismType.py +1 -1
  417. metadata/generated/schema/entity/services/connections/metadata/__init__.py +1 -1
  418. metadata/generated/schema/entity/services/connections/metadata/alationConnection.py +1 -1
  419. metadata/generated/schema/entity/services/connections/metadata/alationSinkConnection.py +1 -1
  420. metadata/generated/schema/entity/services/connections/metadata/amundsenConnection.py +1 -1
  421. metadata/generated/schema/entity/services/connections/metadata/atlasConnection.py +1 -1
  422. metadata/generated/schema/entity/services/connections/metadata/metadataESConnection.py +1 -1
  423. metadata/generated/schema/entity/services/connections/metadata/openMetadataConnection.py +1 -1
  424. metadata/generated/schema/entity/services/connections/mlmodel/__init__.py +1 -1
  425. metadata/generated/schema/entity/services/connections/mlmodel/customMlModelConnection.py +1 -1
  426. metadata/generated/schema/entity/services/connections/mlmodel/mlflowConnection.py +1 -1
  427. metadata/generated/schema/entity/services/connections/mlmodel/sageMakerConnection.py +1 -1
  428. metadata/generated/schema/entity/services/connections/mlmodel/sklearnConnection.py +1 -1
  429. metadata/generated/schema/entity/services/connections/mlmodel/vertexaiConnection.py +1 -1
  430. metadata/generated/schema/entity/services/connections/pipeline/__init__.py +1 -1
  431. metadata/generated/schema/entity/services/connections/pipeline/airbyteConnection.py +1 -1
  432. metadata/generated/schema/entity/services/connections/pipeline/airflowConnection.py +1 -1
  433. metadata/generated/schema/entity/services/connections/pipeline/backendConnection.py +1 -1
  434. metadata/generated/schema/entity/services/connections/pipeline/customPipelineConnection.py +1 -1
  435. metadata/generated/schema/entity/services/connections/pipeline/dagsterConnection.py +1 -1
  436. metadata/generated/schema/entity/services/connections/pipeline/databricksPipelineConnection.py +1 -1
  437. metadata/generated/schema/entity/services/connections/pipeline/datafactoryConnection.py +1 -1
  438. metadata/generated/schema/entity/services/connections/pipeline/dbtCloudConnection.py +1 -1
  439. metadata/generated/schema/entity/services/connections/pipeline/domoPipelineConnection.py +1 -1
  440. metadata/generated/schema/entity/services/connections/pipeline/fivetranConnection.py +1 -1
  441. metadata/generated/schema/entity/services/connections/pipeline/flinkConnection.py +1 -1
  442. metadata/generated/schema/entity/services/connections/pipeline/gluePipelineConnection.py +1 -1
  443. metadata/generated/schema/entity/services/connections/pipeline/kafkaConnectConnection.py +1 -1
  444. metadata/generated/schema/entity/services/connections/pipeline/matillion/__init__.py +1 -1
  445. metadata/generated/schema/entity/services/connections/pipeline/matillion/matillionETL.py +1 -1
  446. metadata/generated/schema/entity/services/connections/pipeline/matillionConnection.py +1 -1
  447. metadata/generated/schema/entity/services/connections/pipeline/nifi/__init__.py +1 -1
  448. metadata/generated/schema/entity/services/connections/pipeline/nifi/basicAuth.py +1 -1
  449. metadata/generated/schema/entity/services/connections/pipeline/nifi/clientCertificateAuth.py +1 -1
  450. metadata/generated/schema/entity/services/connections/pipeline/nifiConnection.py +1 -1
  451. metadata/generated/schema/entity/services/connections/pipeline/openLineageConnection.py +1 -1
  452. metadata/generated/schema/entity/services/connections/pipeline/sparkConnection.py +1 -1
  453. metadata/generated/schema/entity/services/connections/pipeline/splineConnection.py +1 -1
  454. metadata/generated/schema/entity/services/connections/pipeline/ssisConnection.py +56 -0
  455. metadata/generated/schema/entity/services/connections/pipeline/stitchConnection.py +1 -1
  456. metadata/generated/schema/entity/services/connections/pipeline/wherescapeConnection.py +1 -1
  457. metadata/generated/schema/entity/services/connections/search/__init__.py +1 -1
  458. metadata/generated/schema/entity/services/connections/search/customSearchConnection.py +1 -1
  459. metadata/generated/schema/entity/services/connections/search/elasticSearch/__init__.py +1 -1
  460. metadata/generated/schema/entity/services/connections/search/elasticSearch/apiAuth.py +1 -1
  461. metadata/generated/schema/entity/services/connections/search/elasticSearch/basicAuth.py +1 -1
  462. metadata/generated/schema/entity/services/connections/search/elasticSearchConnection.py +1 -1
  463. metadata/generated/schema/entity/services/connections/search/openSearchConnection.py +1 -1
  464. metadata/generated/schema/entity/services/connections/serviceConnection.py +1 -1
  465. metadata/generated/schema/entity/services/connections/storage/__init__.py +1 -1
  466. metadata/generated/schema/entity/services/connections/storage/adlsConnection.py +1 -1
  467. metadata/generated/schema/entity/services/connections/storage/customStorageConnection.py +1 -1
  468. metadata/generated/schema/entity/services/connections/storage/gcsConnection.py +1 -1
  469. metadata/generated/schema/entity/services/connections/storage/s3Connection.py +2 -2
  470. metadata/generated/schema/entity/services/connections/testConnectionDefinition.py +1 -1
  471. metadata/generated/schema/entity/services/connections/testConnectionResult.py +1 -1
  472. metadata/generated/schema/entity/services/dashboardService.py +1 -1
  473. metadata/generated/schema/entity/services/databaseService.py +1 -1
  474. metadata/generated/schema/entity/services/ingestionPipelines/__init__.py +1 -1
  475. metadata/generated/schema/entity/services/ingestionPipelines/ingestionPipeline.py +5 -1
  476. metadata/generated/schema/entity/services/ingestionPipelines/pipelineServiceClientResponse.py +1 -1
  477. metadata/generated/schema/entity/services/ingestionPipelines/reverseIngestionResponse.py +1 -1
  478. metadata/generated/schema/entity/services/ingestionPipelines/status.py +1 -1
  479. metadata/generated/schema/entity/services/messagingService.py +1 -1
  480. metadata/generated/schema/entity/services/metadataService.py +1 -1
  481. metadata/generated/schema/entity/services/mlmodelService.py +1 -1
  482. metadata/generated/schema/entity/services/pipelineService.py +4 -1
  483. metadata/generated/schema/entity/services/searchService.py +1 -1
  484. metadata/generated/schema/entity/services/serviceType.py +1 -1
  485. metadata/generated/schema/entity/services/storageService.py +1 -1
  486. metadata/generated/schema/entity/teams/__init__.py +1 -1
  487. metadata/generated/schema/entity/teams/persona.py +1 -1
  488. metadata/generated/schema/entity/teams/role.py +1 -1
  489. metadata/generated/schema/entity/teams/team.py +1 -1
  490. metadata/generated/schema/entity/teams/teamHierarchy.py +1 -1
  491. metadata/generated/schema/entity/teams/user.py +1 -1
  492. metadata/generated/schema/entity/type.py +1 -1
  493. metadata/generated/schema/entity/utils/__init__.py +1 -1
  494. metadata/generated/schema/entity/utils/entitiesCount.py +1 -1
  495. metadata/generated/schema/entity/utils/servicesCount.py +1 -1
  496. metadata/generated/schema/entity/utils/supersetApiConnection.py +1 -1
  497. metadata/generated/schema/events/__init__.py +1 -1
  498. metadata/generated/schema/events/alertMetrics.py +1 -1
  499. metadata/generated/schema/events/api/__init__.py +1 -1
  500. metadata/generated/schema/events/api/createEventSubscription.py +1 -1
  501. metadata/generated/schema/events/api/eventSubscriptionDiagnosticInfo.py +1 -1
  502. metadata/generated/schema/events/api/eventsRecord.py +1 -1
  503. metadata/generated/schema/events/api/testEventSubscriptionDestination.py +1 -1
  504. metadata/generated/schema/events/api/typedEvent.py +1 -1
  505. metadata/generated/schema/events/emailAlertConfig.py +1 -1
  506. metadata/generated/schema/events/eventFilterRule.py +1 -1
  507. metadata/generated/schema/events/eventSubscription.py +1 -1
  508. metadata/generated/schema/events/eventSubscriptionOffset.py +1 -1
  509. metadata/generated/schema/events/failedEvent.py +1 -1
  510. metadata/generated/schema/events/failedEventResponse.py +1 -1
  511. metadata/generated/schema/events/filterResourceDescriptor.py +1 -1
  512. metadata/generated/schema/events/statusContext.py +1 -1
  513. metadata/generated/schema/events/subscriptionResourceDescriptor.py +1 -1
  514. metadata/generated/schema/events/subscriptionStatus.py +1 -1
  515. metadata/generated/schema/events/testDestinationStatus.py +1 -1
  516. metadata/generated/schema/governance/workflows/__init__.py +1 -1
  517. metadata/generated/schema/governance/workflows/elements/__init__.py +1 -1
  518. metadata/generated/schema/governance/workflows/elements/edge.py +1 -1
  519. metadata/generated/schema/governance/workflows/elements/nodeSubType.py +1 -1
  520. metadata/generated/schema/governance/workflows/elements/nodeType.py +1 -1
  521. metadata/generated/schema/governance/workflows/elements/nodes/__init__.py +1 -1
  522. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/__init__.py +1 -1
  523. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/checkEntityAttributesTask.py +1 -1
  524. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/createAndRunIngestionPipelineTask.py +1 -1
  525. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/runAppTask.py +1 -1
  526. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setEntityCertificationTask.py +1 -1
  527. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setGlossaryTermStatusTask.py +1 -1
  528. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/__init__.py +1 -1
  529. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/endEvent.py +1 -1
  530. metadata/generated/schema/governance/workflows/elements/nodes/gateway/__init__.py +1 -1
  531. metadata/generated/schema/governance/workflows/elements/nodes/gateway/parallelGateway.py +1 -1
  532. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/__init__.py +1 -1
  533. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/startEvent.py +1 -1
  534. metadata/generated/schema/governance/workflows/elements/nodes/userTask/__init__.py +1 -1
  535. metadata/generated/schema/governance/workflows/elements/nodes/userTask/userApprovalTask.py +1 -1
  536. metadata/generated/schema/governance/workflows/elements/triggers/__init__.py +1 -1
  537. metadata/generated/schema/governance/workflows/elements/triggers/eventBasedEntityTrigger.py +1 -1
  538. metadata/generated/schema/governance/workflows/elements/triggers/noOpTrigger.py +1 -1
  539. metadata/generated/schema/governance/workflows/elements/triggers/periodicBatchEntityTrigger.py +1 -1
  540. metadata/generated/schema/governance/workflows/workflowDefinition.py +1 -1
  541. metadata/generated/schema/governance/workflows/workflowInstance.py +1 -1
  542. metadata/generated/schema/governance/workflows/workflowInstanceState.py +1 -1
  543. metadata/generated/schema/jobs/__init__.py +1 -1
  544. metadata/generated/schema/jobs/backgroundJob.py +1 -1
  545. metadata/generated/schema/jobs/enumCleanupArgs.py +1 -1
  546. metadata/generated/schema/metadataIngestion/__init__.py +1 -1
  547. metadata/generated/schema/metadataIngestion/apiServiceMetadataPipeline.py +1 -1
  548. metadata/generated/schema/metadataIngestion/application.py +1 -1
  549. metadata/generated/schema/metadataIngestion/applicationPipeline.py +1 -1
  550. metadata/generated/schema/metadataIngestion/dashboardServiceMetadataPipeline.py +1 -1
  551. metadata/generated/schema/metadataIngestion/dataInsightPipeline.py +1 -1
  552. metadata/generated/schema/metadataIngestion/databaseServiceAutoClassificationPipeline.py +1 -1
  553. metadata/generated/schema/metadataIngestion/databaseServiceMetadataPipeline.py +1 -1
  554. metadata/generated/schema/metadataIngestion/databaseServiceProfilerPipeline.py +1 -1
  555. metadata/generated/schema/metadataIngestion/databaseServiceQueryLineagePipeline.py +1 -1
  556. metadata/generated/schema/metadataIngestion/databaseServiceQueryUsagePipeline.py +1 -1
  557. metadata/generated/schema/metadataIngestion/dbtPipeline.py +9 -1
  558. metadata/generated/schema/metadataIngestion/dbtconfig/__init__.py +1 -1
  559. metadata/generated/schema/metadataIngestion/dbtconfig/dbtAzureConfig.py +1 -1
  560. metadata/generated/schema/metadataIngestion/dbtconfig/dbtBucketDetails.py +1 -1
  561. metadata/generated/schema/metadataIngestion/dbtconfig/dbtCloudConfig.py +1 -1
  562. metadata/generated/schema/metadataIngestion/dbtconfig/dbtGCSConfig.py +1 -1
  563. metadata/generated/schema/metadataIngestion/dbtconfig/dbtHttpConfig.py +1 -1
  564. metadata/generated/schema/metadataIngestion/dbtconfig/dbtLocalConfig.py +1 -1
  565. metadata/generated/schema/metadataIngestion/dbtconfig/dbtS3Config.py +1 -1
  566. metadata/generated/schema/metadataIngestion/messagingServiceMetadataPipeline.py +1 -1
  567. metadata/generated/schema/metadataIngestion/metadataToElasticSearchPipeline.py +1 -1
  568. metadata/generated/schema/metadataIngestion/mlmodelServiceMetadataPipeline.py +1 -1
  569. metadata/generated/schema/metadataIngestion/pipelineServiceMetadataPipeline.py +1 -1
  570. metadata/generated/schema/metadataIngestion/reverseIngestionPipeline.py +1 -1
  571. metadata/generated/schema/metadataIngestion/reverseingestionconfig/__init__.py +1 -1
  572. metadata/generated/schema/metadataIngestion/reverseingestionconfig/descriptionConfig.py +1 -1
  573. metadata/generated/schema/metadataIngestion/reverseingestionconfig/ownerConfig.py +1 -1
  574. metadata/generated/schema/metadataIngestion/reverseingestionconfig/tagsConfig.py +1 -1
  575. metadata/generated/schema/metadataIngestion/searchServiceMetadataPipeline.py +1 -1
  576. metadata/generated/schema/metadataIngestion/storage/__init__.py +1 -1
  577. metadata/generated/schema/metadataIngestion/storage/containerMetadataConfig.py +1 -1
  578. metadata/generated/schema/metadataIngestion/storage/manifestMetadataConfig.py +1 -1
  579. metadata/generated/schema/metadataIngestion/storage/storageBucketDetails.py +1 -1
  580. metadata/generated/schema/metadataIngestion/storage/storageMetadataADLSConfig.py +1 -1
  581. metadata/generated/schema/metadataIngestion/storage/storageMetadataGCSConfig.py +1 -1
  582. metadata/generated/schema/metadataIngestion/storage/storageMetadataHttpConfig.py +1 -1
  583. metadata/generated/schema/metadataIngestion/storage/storageMetadataLocalConfig.py +1 -1
  584. metadata/generated/schema/metadataIngestion/storage/storageMetadataS3Config.py +1 -1
  585. metadata/generated/schema/metadataIngestion/storageServiceMetadataPipeline.py +1 -1
  586. metadata/generated/schema/metadataIngestion/testSuitePipeline.py +1 -1
  587. metadata/generated/schema/metadataIngestion/workflow.py +1 -1
  588. metadata/generated/schema/monitoring/__init__.py +1 -1
  589. metadata/generated/schema/monitoring/eventMonitorProvider.py +1 -1
  590. metadata/generated/schema/search/__init__.py +1 -1
  591. metadata/generated/schema/search/aggregationRequest.py +1 -1
  592. metadata/generated/schema/search/searchRequest.py +1 -1
  593. metadata/generated/schema/security/__init__.py +1 -1
  594. metadata/generated/schema/security/client/__init__.py +1 -1
  595. metadata/generated/schema/security/client/auth0SSOClientConfig.py +1 -1
  596. metadata/generated/schema/security/client/azureSSOClientConfig.py +1 -1
  597. metadata/generated/schema/security/client/customOidcSSOClientConfig.py +1 -1
  598. metadata/generated/schema/security/client/googleSSOClientConfig.py +1 -1
  599. metadata/generated/schema/security/client/oidcClientConfig.py +1 -1
  600. metadata/generated/schema/security/client/oktaSSOClientConfig.py +1 -1
  601. metadata/generated/schema/security/client/openMetadataJWTClientConfig.py +1 -1
  602. metadata/generated/schema/security/client/samlSSOClientConfig.py +1 -1
  603. metadata/generated/schema/security/credentials/__init__.py +1 -1
  604. metadata/generated/schema/security/credentials/accessTokenAuth.py +1 -1
  605. metadata/generated/schema/security/credentials/apiAccessTokenAuth.py +1 -1
  606. metadata/generated/schema/security/credentials/awsCredentials.py +1 -1
  607. metadata/generated/schema/security/credentials/azureCredentials.py +1 -1
  608. metadata/generated/schema/security/credentials/basicAuth.py +1 -1
  609. metadata/generated/schema/security/credentials/bitbucketCredentials.py +1 -1
  610. metadata/generated/schema/security/credentials/gcpCredentials.py +1 -1
  611. metadata/generated/schema/security/credentials/gcpExternalAccount.py +1 -1
  612. metadata/generated/schema/security/credentials/gcpValues.py +1 -1
  613. metadata/generated/schema/security/credentials/gitCredentials.py +1 -1
  614. metadata/generated/schema/security/credentials/githubCredentials.py +1 -1
  615. metadata/generated/schema/security/credentials/gitlabCredentials.py +1 -1
  616. metadata/generated/schema/security/sasl/__init__.py +1 -1
  617. metadata/generated/schema/security/sasl/saslClientConfig.py +1 -1
  618. metadata/generated/schema/security/secrets/__init__.py +1 -1
  619. metadata/generated/schema/security/secrets/secretsManagerClientLoader.py +1 -1
  620. metadata/generated/schema/security/secrets/secretsManagerConfiguration.py +1 -1
  621. metadata/generated/schema/security/secrets/secretsManagerProvider.py +1 -1
  622. metadata/generated/schema/security/securityConfiguration.py +1 -1
  623. metadata/generated/schema/security/ssl/__init__.py +1 -1
  624. metadata/generated/schema/security/ssl/validateSSLClientConfig.py +1 -1
  625. metadata/generated/schema/security/ssl/verifySSLConfig.py +1 -1
  626. metadata/generated/schema/settings/__init__.py +1 -1
  627. metadata/generated/schema/settings/settings.py +1 -1
  628. metadata/generated/schema/system/__init__.py +1 -1
  629. metadata/generated/schema/system/entityError.py +1 -1
  630. metadata/generated/schema/system/eventPublisherJob.py +1 -1
  631. metadata/generated/schema/system/indexingError.py +1 -1
  632. metadata/generated/schema/system/limitsResponse.py +1 -1
  633. metadata/generated/schema/system/ui/__init__.py +1 -1
  634. metadata/generated/schema/system/ui/knowledgePanel.py +1 -1
  635. metadata/generated/schema/system/ui/navigationItem.py +1 -1
  636. metadata/generated/schema/system/ui/page.py +1 -1
  637. metadata/generated/schema/system/ui/tab.py +1 -1
  638. metadata/generated/schema/system/ui/uiCustomization.py +1 -1
  639. metadata/generated/schema/system/validationResponse.py +1 -1
  640. metadata/generated/schema/tests/__init__.py +1 -1
  641. metadata/generated/schema/tests/assigned.py +1 -1
  642. metadata/generated/schema/tests/basic.py +1 -1
  643. metadata/generated/schema/tests/customMetric.py +1 -1
  644. metadata/generated/schema/tests/dataQualityReport.py +1 -1
  645. metadata/generated/schema/tests/resolved.py +1 -1
  646. metadata/generated/schema/tests/testCase.py +1 -1
  647. metadata/generated/schema/tests/testCaseResolutionStatus.py +1 -1
  648. metadata/generated/schema/tests/testDefinition.py +1 -1
  649. metadata/generated/schema/tests/testSuite.py +1 -1
  650. metadata/generated/schema/type/__init__.py +1 -1
  651. metadata/generated/schema/type/apiSchema.py +1 -1
  652. metadata/generated/schema/type/assetCertification.py +1 -1
  653. metadata/generated/schema/type/auditLog.py +1 -1
  654. metadata/generated/schema/type/basic.py +2 -1
  655. metadata/generated/schema/type/bulkOperationResult.py +1 -1
  656. metadata/generated/schema/type/changeEvent.py +1 -1
  657. metadata/generated/schema/type/changeEventType.py +1 -1
  658. metadata/generated/schema/type/changeSummaryMap.py +1 -1
  659. metadata/generated/schema/type/collectionDescriptor.py +1 -1
  660. metadata/generated/schema/type/csvDocumentation.py +1 -1
  661. metadata/generated/schema/type/csvErrorType.py +1 -1
  662. metadata/generated/schema/type/csvFile.py +1 -1
  663. metadata/generated/schema/type/csvImportResult.py +1 -1
  664. metadata/generated/schema/type/customProperties/__init__.py +1 -1
  665. metadata/generated/schema/type/customProperties/complexTypes.py +1 -1
  666. metadata/generated/schema/type/customProperties/enumConfig.py +1 -1
  667. metadata/generated/schema/type/customProperties/tableConfig.py +1 -1
  668. metadata/generated/schema/type/customProperty.py +1 -1
  669. metadata/generated/schema/type/dailyCount.py +1 -1
  670. metadata/generated/schema/type/databaseConnectionConfig.py +1 -1
  671. metadata/generated/schema/type/entityHierarchy.py +1 -1
  672. metadata/generated/schema/type/entityHistory.py +1 -1
  673. metadata/generated/schema/type/entityLineage.py +1 -1
  674. metadata/generated/schema/type/entityReference.py +1 -1
  675. metadata/generated/schema/type/entityReferenceList.py +1 -1
  676. metadata/generated/schema/type/entityRelationship.py +1 -1
  677. metadata/generated/schema/type/entityUsage.py +1 -1
  678. metadata/generated/schema/type/filterPattern.py +1 -1
  679. metadata/generated/schema/type/function.py +1 -1
  680. metadata/generated/schema/type/include.py +1 -1
  681. metadata/generated/schema/type/jdbcConnection.py +1 -1
  682. metadata/generated/schema/type/lifeCycle.py +1 -1
  683. metadata/generated/schema/type/paging.py +1 -1
  684. metadata/generated/schema/type/profile.py +1 -1
  685. metadata/generated/schema/type/queryParserData.py +1 -1
  686. metadata/generated/schema/type/reaction.py +1 -1
  687. metadata/generated/schema/type/schedule.py +1 -1
  688. metadata/generated/schema/type/schema.py +1 -1
  689. metadata/generated/schema/type/tableQuery.py +1 -1
  690. metadata/generated/schema/type/tableUsageCount.py +1 -1
  691. metadata/generated/schema/type/tagLabel.py +1 -1
  692. metadata/generated/schema/type/usageDetails.py +1 -1
  693. metadata/generated/schema/type/usageRequest.py +1 -1
  694. metadata/generated/schema/type/votes.py +1 -1
  695. metadata/ingestion/lineage/models.py +14 -0
  696. metadata/ingestion/models/custom_pydantic.py +2 -0
  697. metadata/ingestion/ometa/mixins/lineage_mixin.py +1 -0
  698. metadata/ingestion/source/dashboard/lightdash/client.py +81 -8
  699. metadata/ingestion/source/dashboard/lightdash/metadata.py +39 -21
  700. metadata/ingestion/source/dashboard/lightdash/models.py +11 -0
  701. metadata/ingestion/source/dashboard/looker/metadata.py +17 -9
  702. metadata/ingestion/source/dashboard/tableau/client.py +28 -24
  703. metadata/ingestion/source/dashboard/tableau/connection.py +18 -4
  704. metadata/ingestion/source/dashboard/tableau/metadata.py +3 -2
  705. metadata/ingestion/source/database/databricks/metadata.py +50 -0
  706. metadata/ingestion/source/database/databricks/queries.py +4 -0
  707. metadata/ingestion/source/database/databricks/service_spec.py +2 -0
  708. metadata/ingestion/source/database/db2/connection.py +15 -0
  709. metadata/ingestion/source/database/db2/utils.py +130 -0
  710. metadata/ingestion/source/database/dbt/metadata.py +17 -2
  711. metadata/ingestion/source/database/doris/metadata.py +4 -1
  712. metadata/ingestion/source/database/snowflake/metadata.py +19 -0
  713. metadata/ingestion/source/database/trino/queries.py +1 -1
  714. metadata/ingestion/source/database/trino/query_parser.py +15 -0
  715. metadata/ingestion/source/database/unitycatalog/service_spec.py +1 -1
  716. metadata/ingestion/source/pipeline/dbtcloud/metadata.py +7 -7
  717. metadata/pii/algorithms/classifiers.py +6 -2
  718. metadata/pii/algorithms/presidio_patches.py +38 -0
  719. metadata/sampler/sqlalchemy/azuresql/sampler.py +4 -5
  720. metadata/sampler/sqlalchemy/databricks/sampler.py +26 -0
  721. metadata/sampler/sqlalchemy/mssql/sampler.py +2 -3
  722. metadata/sampler/sqlalchemy/sampler.py +2 -0
  723. metadata/sampler/sqlalchemy/snowflake/sampler.py +2 -3
  724. metadata/utils/filters.py +13 -0
  725. metadata/utils/helpers.py +1 -0
  726. metadata/utils/sqlalchemy_utils.py +21 -0
  727. metadata/workflow/context/base.py +24 -0
  728. metadata/workflow/context/context_manager.py +124 -0
  729. metadata/workflow/context/workflow_context.py +29 -0
  730. metadata/workflow/workflow_status_mixin.py +33 -12
  731. {openmetadata_ingestion-1.7.1.4.dist-info → openmetadata_ingestion-1.7.2.0.dist-info}/METADATA +426 -426
  732. {openmetadata_ingestion-1.7.1.4.dist-info → openmetadata_ingestion-1.7.2.0.dist-info}/RECORD +737 -732
  733. /metadata/{profiler/interface/sqlalchemy/unity_catalog/sampler_interface.py → sampler/sqlalchemy/unitycatalog/sampler.py} +0 -0
  734. {openmetadata_ingestion-1.7.1.4.dist-info → openmetadata_ingestion-1.7.2.0.dist-info}/LICENSE +0 -0
  735. {openmetadata_ingestion-1.7.1.4.dist-info → openmetadata_ingestion-1.7.2.0.dist-info}/WHEEL +0 -0
  736. {openmetadata_ingestion-1.7.1.4.dist-info → openmetadata_ingestion-1.7.2.0.dist-info}/entry_points.txt +0 -0
  737. {openmetadata_ingestion-1.7.1.4.dist-info → openmetadata_ingestion-1.7.2.0.dist-info}/top_level.txt +0 -0
@@ -50,6 +50,7 @@ from metadata.ingestion.source.database.databricks.queries import (
50
50
  DATABRICKS_GET_CATALOGS,
51
51
  DATABRICKS_GET_CATALOGS_TAGS,
52
52
  DATABRICKS_GET_COLUMN_TAGS,
53
+ DATABRICKS_GET_SCHEMA_COMMENTS,
53
54
  DATABRICKS_GET_SCHEMA_TAGS,
54
55
  DATABRICKS_GET_TABLE_COMMENTS,
55
56
  DATABRICKS_GET_TABLE_TAGS,
@@ -65,6 +66,8 @@ from metadata.utils.filters import filter_by_database
65
66
  from metadata.utils.logger import ingestion_logger
66
67
  from metadata.utils.sqlalchemy_utils import (
67
68
  get_all_view_definitions,
69
+ get_schema_comment_result_wrapper,
70
+ get_schema_comment_results,
68
71
  get_table_comment_result_wrapper,
69
72
  get_table_comment_results,
70
73
  get_view_definition_wrapper,
@@ -325,6 +328,24 @@ def get_table_comment_result(
325
328
  )
326
329
 
327
330
 
331
+ @reflection.cache
332
+ def get_schema_comment_result(
333
+ self,
334
+ connection,
335
+ query,
336
+ database,
337
+ schema,
338
+ **kw, # pylint: disable=unused-argument
339
+ ):
340
+ return get_schema_comment_result_wrapper(
341
+ self,
342
+ connection,
343
+ query=query,
344
+ database=database,
345
+ schema=schema,
346
+ )
347
+
348
+
328
349
  @reflection.cache
329
350
  def get_table_ddl(
330
351
  self, connection, table_name, schema=None, **kw
@@ -413,6 +434,8 @@ DatabricksDialect.get_view_definition = get_view_definition
413
434
  DatabricksDialect.get_table_names = get_table_names
414
435
  DatabricksDialect.get_all_view_definitions = get_all_view_definitions
415
436
  DatabricksDialect.get_table_comment_results = get_table_comment_results
437
+ DatabricksDialect.get_schema_comment_results = get_schema_comment_results
438
+ DatabricksDialect.get_schema_comment_result = get_schema_comment_result
416
439
  DatabricksDialect.get_table_comment_result = get_table_comment_result
417
440
  reflection.Inspector.get_schema_names = get_schema_names_reflection
418
441
  reflection.Inspector.get_table_ddl = get_table_ddl
@@ -756,6 +779,33 @@ class DatabricksSource(ExternalTableLineageMixin, CommonDbSourceService, MultiDB
756
779
  )
757
780
  )
758
781
 
782
+ def get_schema_description(self, schema_name: str) -> str:
783
+ description = None
784
+ try:
785
+ query = DATABRICKS_GET_SCHEMA_COMMENTS.format(
786
+ database_name=self.context.get().database,
787
+ schema_name=schema_name,
788
+ )
789
+ cursor = self.inspector.dialect.get_schema_comment_result(
790
+ connection=self.connection,
791
+ query=query,
792
+ database=self.context.get().database,
793
+ schema=schema_name,
794
+ )
795
+ for result in list(cursor):
796
+ data = result.values()
797
+ if data[0] and data[0].strip() == "Comment":
798
+ description = data[1] if data and data[1] else None
799
+ return description
800
+
801
+ # Catch any exception without breaking the ingestion
802
+ except Exception as exep: # pylint: disable=broad-except
803
+ logger.debug(traceback.format_exc())
804
+ logger.warning(
805
+ f"Schema description error for schema [{schema_name}]: {exep}"
806
+ )
807
+ return description
808
+
759
809
  def get_table_description(
760
810
  self, schema_name: str, table_name: str, inspector: Inspector
761
811
  ) -> str:
@@ -52,6 +52,10 @@ DATABRICKS_GET_TABLE_COMMENTS = (
52
52
  "DESCRIBE TABLE EXTENDED `{database_name}`.`{schema_name}`.`{table_name}`"
53
53
  )
54
54
 
55
+ DATABRICKS_GET_SCHEMA_COMMENTS = (
56
+ "DESCRIBE SCHEMA EXTENDED `{database_name}`.`{schema_name}`"
57
+ )
58
+
55
59
  DATABRICKS_GET_CATALOGS = "SHOW CATALOGS"
56
60
 
57
61
  DATABRICKS_GET_CATALOGS_TAGS = textwrap.dedent(
@@ -9,6 +9,7 @@ from metadata.ingestion.source.database.databricks.usage import DatabricksUsageS
9
9
  from metadata.profiler.interface.sqlalchemy.databricks.profiler_interface import (
10
10
  DatabricksProfilerInterface,
11
11
  )
12
+ from metadata.sampler.sqlalchemy.databricks.sampler import DatabricksSamplerInterface
12
13
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
13
14
 
14
15
  ServiceSpec = DefaultDatabaseSpec(
@@ -17,4 +18,5 @@ ServiceSpec = DefaultDatabaseSpec(
17
18
  usage_source_class=DatabricksUsageSource,
18
19
  profiler_class=DatabricksProfilerInterface,
19
20
  test_suite_class=DatabricksTestSuiteInterface,
21
+ sampler_class=DatabricksSamplerInterface,
20
22
  )
@@ -33,13 +33,28 @@ from metadata.ingestion.connections.builders import (
33
33
  )
34
34
  from metadata.ingestion.connections.test_connections import test_connection_db_common
35
35
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
36
+ from metadata.ingestion.source.database.db2.utils import (
37
+ check_clidriver_version,
38
+ install_clidriver,
39
+ )
36
40
  from metadata.utils.constants import THREE_MIN, UTF_8
41
+ from metadata.utils.logger import ingestion_logger
42
+
43
+ logger = ingestion_logger()
37
44
 
38
45
 
39
46
  def get_connection(connection: Db2Connection) -> Engine:
40
47
  """
41
48
  Create connection
42
49
  """
50
+ # Install ibm_db with specific version
51
+ clidriver_version = connection.clidriverVersion
52
+
53
+ if clidriver_version:
54
+ clidriver_version = check_clidriver_version(clidriver_version)
55
+ if clidriver_version:
56
+ install_clidriver(clidriver_version.value)
57
+
43
58
  # prepare license
44
59
  # pylint: disable=import-outside-toplevel
45
60
  if connection.license and connection.licenseFileName:
@@ -12,9 +12,33 @@
12
12
  """
13
13
  Module to define overriden dialect methods
14
14
  """
15
+ from enum import Enum
16
+
15
17
  from sqlalchemy import and_, join, sql
16
18
  from sqlalchemy.engine import reflection
17
19
 
20
+ from metadata.utils.logger import ingestion_logger
21
+
22
+ logger = ingestion_logger()
23
+
24
+ BASE_CLIDRIVER_URL = (
25
+ "https://public.dhe.ibm.com/ibmdl/export/pub/software/data/db2/drivers/odbc_cli"
26
+ )
27
+
28
+
29
+ class DB2CLIDriverVersions(Enum):
30
+ """
31
+ Enum for the DB2 CLI Driver versions
32
+ """
33
+
34
+ V11_1_4 = "11.1.4"
35
+ V11_5_4 = "11.5.4"
36
+ V11_5_5 = "11.5.5"
37
+ V11_5_6 = "11.5.6"
38
+ V11_5_8 = "11.5.8"
39
+ V11_5_9 = "11.5.9"
40
+ V12_1_0 = "12.1.0"
41
+
18
42
 
19
43
  @reflection.cache
20
44
  def get_unique_constraints(
@@ -61,3 +85,109 @@ def get_unique_constraints(
61
85
  }
62
86
  )
63
87
  return unique_consts
88
+
89
+
90
+ def check_clidriver_version(clidriver_version: str):
91
+ """
92
+ Check if the CLI Driver version is valid
93
+ """
94
+ if clidriver_version not in [v.value for v in DB2CLIDriverVersions]:
95
+ logger.warning(f"Invalid CLI Driver version provided: {clidriver_version}")
96
+ return None
97
+ return DB2CLIDriverVersions(clidriver_version)
98
+
99
+
100
+ # pylint: disable=too-many-statements,too-many-branches
101
+ def install_clidriver(clidriver_version: str) -> None:
102
+ """
103
+ Install the CLI Driver for DB2
104
+ """
105
+ # pylint: disable=import-outside-toplevel
106
+ import os
107
+ import platform
108
+ import subprocess
109
+ import sys
110
+ from urllib.request import URLError, urlopen
111
+
112
+ import pkg_resources
113
+
114
+ clidriver_version = f"v{clidriver_version}"
115
+ system = platform.system().lower()
116
+ is_64bits = platform.architecture()[0] == "64bit"
117
+ clidriver_url = None
118
+ default_clidriver_url = None
119
+
120
+ def is_valid_url(url: str) -> bool:
121
+ """Check if the URL is valid and accessible"""
122
+ try:
123
+ with urlopen(url) as _:
124
+ return True
125
+ except URLError:
126
+ return False
127
+
128
+ if system == "darwin": # macOS
129
+ machine = platform.machine().lower()
130
+ if machine == "arm64": # Apple Silicon
131
+ default_clidriver_url = f"{BASE_CLIDRIVER_URL}/macarm64_odbc_cli.tar.gz"
132
+ clidriver_url = f"{BASE_CLIDRIVER_URL}/macarm64_odbc_cli.tar.gz"
133
+ elif machine == "x86_64": # Intel
134
+ default_clidriver_url = f"{BASE_CLIDRIVER_URL}/macos64_odbc_cli.tar.gz"
135
+ clidriver_url = (
136
+ f"{BASE_CLIDRIVER_URL}/{str(clidriver_version)}/macos64_odbc_cli.tar.gz"
137
+ )
138
+ elif system == "linux":
139
+ if is_64bits:
140
+ default_clidriver_url = f"{BASE_CLIDRIVER_URL}/linuxx64_odbc_cli.tar.gz"
141
+ clidriver_url = f"{BASE_CLIDRIVER_URL}/{str(clidriver_version)}/linuxx64_odbc_cli.tar.gz"
142
+ else:
143
+ default_clidriver_url = f"{BASE_CLIDRIVER_URL}/linuxia32_odbc_cli.tar.gz"
144
+ clidriver_url = f"{BASE_CLIDRIVER_URL}/{str(clidriver_version)}/linuxia32_odbc_cli.tar.gz"
145
+ elif system == "windows":
146
+ if is_64bits:
147
+ default_clidriver_url = f"{BASE_CLIDRIVER_URL}/ntx64_odbc_cli.zip"
148
+ clidriver_url = (
149
+ f"{BASE_CLIDRIVER_URL}/{str(clidriver_version)}/ntx64_odbc_cli.zip"
150
+ )
151
+ else:
152
+ default_clidriver_url = f"{BASE_CLIDRIVER_URL}/nt32_odbc_cli.zip"
153
+ clidriver_url = (
154
+ f"{BASE_CLIDRIVER_URL}/{str(clidriver_version)}/nt32_odbc_cli.zip"
155
+ )
156
+ else:
157
+ logger.error(
158
+ f"Unsupported operating system for db2 driver installation: {system}"
159
+ )
160
+ return None
161
+
162
+ # set env variables for CLIDRIVER_VERSION and IBM_DB_INSTALLER_URL
163
+ os.environ["CLIDRIVER_VERSION"] = clidriver_version
164
+ if is_valid_url(clidriver_url):
165
+ os.environ["IBM_DB_INSTALLER_URL"] = clidriver_url
166
+ else:
167
+ os.environ["IBM_DB_INSTALLER_URL"] = default_clidriver_url
168
+ logger.info(f"Set IBM_DB_INSTALLER_URL to {os.environ['IBM_DB_INSTALLER_URL']}")
169
+ logger.info(f"Set CLIDRIVER_VERSION to {os.environ['CLIDRIVER_VERSION']}")
170
+ # Uninstall ibm_db if it is already installed
171
+ try:
172
+ pkg_resources.get_distribution("ibm_db")
173
+ # If we get here, ibm_db is installed, so uninstall it first
174
+ subprocess.check_call(
175
+ [sys.executable, "-m", "pip", "uninstall", "-y", "ibm_db"]
176
+ )
177
+ except pkg_resources.DistributionNotFound:
178
+ # ibm_db is not installed, proceed with installation
179
+ pass
180
+ # Install ibm_db with specific flags
181
+ subprocess.check_call(
182
+ [
183
+ sys.executable,
184
+ "-m",
185
+ "pip",
186
+ "install",
187
+ "ibm_db~=3.2.6",
188
+ "--no-binary",
189
+ ":all:",
190
+ "--no-cache-dir",
191
+ ]
192
+ )
193
+ return None
@@ -97,6 +97,7 @@ from metadata.ingestion.source.database.dbt.models import DbtMeta
97
97
  from metadata.utils import fqn
98
98
  from metadata.utils.elasticsearch import get_entity_from_es_result
99
99
  from metadata.utils.entity_link import get_table_fqn
100
+ from metadata.utils.filters import filter_by_tag
100
101
  from metadata.utils.logger import ingestion_logger
101
102
  from metadata.utils.tag_utils import get_ometa_tag_and_classification, get_tag_labels
102
103
  from metadata.utils.time_utils import datetime_to_timestamp
@@ -245,6 +246,18 @@ class DbtSource(DbtServiceSource):
245
246
  f"Unable to find the node or columns in the catalog file for dbt node: {key}"
246
247
  )
247
248
 
249
+ def filter_tags(self, tags: List[str]) -> List[str]:
250
+ """
251
+ Filter tags based on tag filter pattern if configured
252
+ """
253
+ if self.source_config.tagFilterPattern:
254
+ return [
255
+ tag
256
+ for tag in tags
257
+ if not filter_by_tag(self.source_config.tagFilterPattern, tag)
258
+ ]
259
+ return tags
260
+
248
261
  def yield_dbt_tags(
249
262
  self, dbt_objects: DbtObjects
250
263
  ) -> Iterable[Either[OMetaTagAndClassification]]:
@@ -272,13 +285,13 @@ class DbtSource(DbtServiceSource):
272
285
  # Add the tags from the model
273
286
  model_tags = manifest_node.tags
274
287
  if model_tags:
275
- dbt_tags_list.extend(model_tags)
288
+ dbt_tags_list.extend(self.filter_tags(model_tags))
276
289
 
277
290
  # Add the tags from the columns
278
291
  for _, column in manifest_node.columns.items():
279
292
  column_tags = column.tags
280
293
  if column_tags:
281
- dbt_tags_list.extend(column_tags)
294
+ dbt_tags_list.extend(self.filter_tags(column_tags))
282
295
  except Exception as exc:
283
296
  yield Either(
284
297
  left=StackTraceError(
@@ -509,6 +522,7 @@ class DbtSource(DbtServiceSource):
509
522
 
510
523
  dbt_table_tags_list = []
511
524
  if manifest_node.tags:
525
+ manifest_node.tags = self.filter_tags(manifest_node.tags)
512
526
  dbt_table_tags_list = (
513
527
  get_tag_labels(
514
528
  metadata=self.metadata,
@@ -669,6 +683,7 @@ class DbtSource(DbtServiceSource):
669
683
  column_description = catalog_column.comment
670
684
 
671
685
  dbt_column_tag_list = []
686
+ manifest_column.tags = self.filter_tags(manifest_column.tags)
672
687
  dbt_column_tag_list.extend(
673
688
  get_tag_labels(
674
689
  metadata=self.metadata,
@@ -60,6 +60,7 @@ RELKIND_MAP = {
60
60
  "Doris": TableType.Regular,
61
61
  "View": TableType.View,
62
62
  "MEMORY": TableType.View,
63
+ "OLAP": TableType.MaterializedView,
63
64
  }
64
65
 
65
66
  DorisDialect.get_table_names_and_type = get_table_names_and_type
@@ -179,7 +180,9 @@ class DorisSource(CommonDbSourceService):
179
180
  logic on how to handle table types, e.g., external, foreign,...
180
181
  """
181
182
  tables = [
182
- TableNameAndType(name=name, type_=RELKIND_MAP.get(engine))
183
+ TableNameAndType(
184
+ name=name, type_=RELKIND_MAP.get(engine, TableType.Regular)
185
+ )
183
186
  for name, engine in self.connection.execute(
184
187
  sql.text(DORIS_GET_TABLE_NAMES), {"schema": schema_name}
185
188
  )
@@ -52,6 +52,7 @@ from metadata.generated.schema.type.basic import (
52
52
  FullyQualifiedEntityName,
53
53
  SourceUrl,
54
54
  )
55
+ from metadata.generated.schema.type.entityReferenceList import EntityReferenceList
55
56
  from metadata.ingestion.api.delete import delete_entity_by_name
56
57
  from metadata.ingestion.api.models import Either
57
58
  from metadata.ingestion.api.steps import InvalidSourceException
@@ -908,3 +909,21 @@ class SnowflakeSource(
908
909
  schema_name=self.context.get().database_schema,
909
910
  account_usage=self.service_connection.accountUsageSchema,
910
911
  )
912
+
913
+ def get_owner_ref(self, table_name: str) -> Optional[EntityReferenceList]:
914
+ """
915
+ Method to process the table owners
916
+
917
+ Snowflake uses a role-based ownership model, not a user-based one.
918
+ This means that ownership of database objects, such as tables, is assigned
919
+ to roles rather than individual users.
920
+
921
+ As OpenMetadata currently does not support role-based ownership assignment,
922
+ we are unable to retrieve or associate a meaningful table owner using this method.
923
+ Therefore, this function will return `None` or a placeholder, and ownership
924
+ metadata will not be populated in the OpenMetadata ingestion process.
925
+ """
926
+ logger.debug(
927
+ f"Processing ownership is not supported for {self.service_connection.type.name}"
928
+ )
929
+ return None
@@ -20,7 +20,7 @@ TRINO_SQL_STATEMENT = textwrap.dedent(
20
20
  "user" as user_name,
21
21
  "started" as start_time,
22
22
  "end" as end_time
23
- from "system"."runtime"."queries"
23
+ from {query_history_table}
24
24
  WHERE "query" NOT LIKE '/* {{"app": "OpenMetadata", %%}} */%%'
25
25
  AND "query" NOT LIKE '/* {{"app": "dbt", %%}} */%%'
26
26
  AND CAST("started" AS date) >= date_parse('{start_time}', '%Y-%m-%d %H:%i:%s')
@@ -12,6 +12,7 @@
12
12
  Trino usage module
13
13
  """
14
14
  from abc import ABC
15
+ from datetime import datetime
15
16
  from typing import Optional
16
17
 
17
18
  from metadata.generated.schema.entity.services.connections.database.trinoConnection import (
@@ -44,3 +45,17 @@ class TrinoQueryParserSource(QueryParserSource, ABC):
44
45
  f"Expected TrinoConnection, but got {connection}"
45
46
  )
46
47
  return cls(config, metadata)
48
+
49
+ def get_sql_statement(self, start_time: datetime, end_time: datetime) -> str:
50
+ """
51
+ returns sql statement to fetch query logs.
52
+
53
+ Override if we have specific parameters
54
+ """
55
+ return self.sql_stmt.format(
56
+ start_time=start_time,
57
+ end_time=end_time,
58
+ filters=self.get_filters(),
59
+ result_limit=self.source_config.resultLimit,
60
+ query_history_table=self.service_connection.queryHistoryTable,
61
+ )
@@ -11,7 +11,7 @@ from metadata.ingestion.source.database.unitycatalog.usage import (
11
11
  from metadata.profiler.interface.sqlalchemy.unity_catalog.profiler_interface import (
12
12
  UnityCatalogProfilerInterface,
13
13
  )
14
- from metadata.profiler.interface.sqlalchemy.unity_catalog.sampler_interface import (
14
+ from metadata.sampler.sqlalchemy.unitycatalog.sampler import (
15
15
  UnityCatalogSamplerInterface,
16
16
  )
17
17
  from metadata.utils.service_spec.default import DefaultDatabaseSpec
@@ -168,13 +168,6 @@ class DbtcloudSource(PipelineServiceSource):
168
168
  entity=Pipeline, fqn=pipeline_fqn
169
169
  )
170
170
 
171
- lineage_details = LineageDetails(
172
- pipeline=EntityReference(
173
- id=pipeline_entity.id.root, type="pipeline"
174
- ),
175
- source=LineageSource.PipelineLineage,
176
- )
177
-
178
171
  dbt_models = self.client.get_model_details(
179
172
  job_id=pipeline_details.id, run_id=self.context.get().latest_run_id
180
173
  )
@@ -222,6 +215,13 @@ class DbtcloudSource(PipelineServiceSource):
222
215
  if from_entity is None:
223
216
  continue
224
217
 
218
+ lineage_details = LineageDetails(
219
+ pipeline=EntityReference(
220
+ id=pipeline_entity.id.root, type="pipeline"
221
+ ),
222
+ source=LineageSource.PipelineLineage,
223
+ )
224
+
225
225
  yield Either(
226
226
  right=AddLineageRequest(
227
227
  edge=EntitiesEdge(
@@ -38,7 +38,11 @@ from metadata.pii.algorithms.feature_extraction import (
38
38
  split_column_name,
39
39
  )
40
40
  from metadata.pii.algorithms.preprocessing import preprocess_values
41
- from metadata.pii.algorithms.presidio_patches import url_patcher
41
+ from metadata.pii.algorithms.presidio_patches import (
42
+ combine_patchers,
43
+ date_time_patcher,
44
+ url_patcher,
45
+ )
42
46
  from metadata.pii.algorithms.presidio_utils import (
43
47
  build_analyzer_engine,
44
48
  set_presidio_logger_level,
@@ -119,7 +123,7 @@ class HeuristicPIIClassifier(ColumnClassifier[PIITag]):
119
123
  self._presidio_analyzer,
120
124
  str_values,
121
125
  context=context,
122
- recognizer_result_patcher=url_patcher,
126
+ recognizer_result_patcher=combine_patchers(date_time_patcher, url_patcher),
123
127
  )
124
128
 
125
129
  column_name_matches: Set[PIITag] = set()
@@ -13,6 +13,7 @@ Patch the Presidio recognizer results to make adapt them to specific use cases.
13
13
  """
14
14
  from typing import List, Protocol, Sequence
15
15
 
16
+ from dateutil.parser import parse
16
17
  from presidio_analyzer import RecognizerResult
17
18
 
18
19
 
@@ -29,6 +30,24 @@ class PresidioRecognizerResultPatcher(Protocol):
29
30
  ...
30
31
 
31
32
 
33
+ def combine_patchers(
34
+ *patchers: PresidioRecognizerResultPatcher,
35
+ ) -> PresidioRecognizerResultPatcher:
36
+ """
37
+ Combine multiple patchers into one.
38
+ This allows us to apply multiple patches in sequence.
39
+ """
40
+
41
+ def combined_patcher(
42
+ recognizer_results: Sequence[RecognizerResult], text: str
43
+ ) -> Sequence[RecognizerResult]:
44
+ for patcher in patchers:
45
+ recognizer_results = patcher(recognizer_results, text)
46
+ return recognizer_results
47
+
48
+ return combined_patcher
49
+
50
+
32
51
  def url_patcher(
33
52
  recognizer_results: Sequence[RecognizerResult], text: str
34
53
  ) -> Sequence[RecognizerResult]:
@@ -43,3 +62,22 @@ def url_patcher(
43
62
  continue
44
63
  patched_result.append(result)
45
64
  return patched_result
65
+
66
+
67
+ def date_time_patcher(
68
+ recognizer_results: Sequence[RecognizerResult], text: str
69
+ ) -> Sequence[RecognizerResult]:
70
+ """
71
+ Patch the recognizer result to remove date time false positive with date.
72
+ """
73
+ patched_result: List[RecognizerResult] = []
74
+ for result in recognizer_results:
75
+ if result.entity_type == "DATE_TIME":
76
+ # try to parse using dateutils, if it fails, skip the result
77
+ try:
78
+ _ = parse(text[result.start : result.end])
79
+ except ValueError:
80
+ # if parsing fails, skip the result
81
+ continue
82
+ patched_result.append(result)
83
+ return patched_result
@@ -15,7 +15,7 @@ for the profiler
15
15
  from typing import List, Optional
16
16
 
17
17
  from sqlalchemy import Column, Table, text
18
- from sqlalchemy.orm import Query
18
+ from sqlalchemy.sql.selectable import CTE
19
19
 
20
20
  from metadata.generated.schema.entity.data.table import TableData, TableType
21
21
  from metadata.sampler.sqlalchemy.sampler import ProfileSampleType, SQASampler
@@ -49,13 +49,12 @@ class AzureSQLSampler(SQASampler):
49
49
 
50
50
  return selectable
51
51
 
52
- def get_sample_query(self, *, column=None) -> Query:
53
- """get query for sample data"""
52
+ def get_sample_query(self, *, column=None) -> CTE:
53
+ """Override the base method as ROWS or PERCENT sampling handled through the tablesample clause"""
54
54
  rnd = self._base_sample_query(column).cte(
55
55
  f"{self.get_sampler_table_name()}_rnd"
56
56
  )
57
- with self.get_client() as client:
58
- query = client.query(rnd)
57
+ query = self.get_client().query(rnd)
59
58
  return query.cte(f"{self.get_sampler_table_name()}_sample")
60
59
 
61
60
  def fetch_sample_data(self, columns: Optional[List[Column]] = None) -> TableData:
@@ -0,0 +1,26 @@
1
+ # Copyright 2025 Collate
2
+ # Licensed under the Collate Community License, Version 1.0 (the "License");
3
+ # you may not use this file except in compliance with the License.
4
+ # You may obtain a copy of the License at
5
+ # https://github.com/open-metadata/OpenMetadata/blob/main/ingestion/LICENSE
6
+ # Unless required by applicable law or agreed to in writing, software
7
+ # distributed under the License is distributed on an "AS IS" BASIS,
8
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ # See the License for the specific language governing permissions and
10
+ # limitations under the License.
11
+ """
12
+ Helper module to handle data sampling for the profiler
13
+ """
14
+ from metadata.ingestion.source.database.databricks.connection import (
15
+ get_connection as databricks_get_connection,
16
+ )
17
+ from metadata.sampler.sqlalchemy.sampler import SQASampler
18
+
19
+
20
+ class DatabricksSamplerInterface(SQASampler):
21
+ def get_client(self):
22
+ """client is the session for SQA"""
23
+ self.connection = databricks_get_connection(self.service_connection_config)
24
+ client = super().get_client()
25
+ self.set_catalog(client)
26
+ return client
@@ -44,10 +44,9 @@ class MssqlSampler(SQASampler):
44
44
  return selectable
45
45
 
46
46
  def get_sample_query(self, *, column=None) -> CTE:
47
- """get query for sample data"""
47
+ """Override the base method as ROWS or PERCENT sampling handled through the tablesample clause"""
48
48
  rnd = self._base_sample_query(column).cte(
49
49
  f"{self.get_sampler_table_name()}_rnd"
50
50
  )
51
- with self.get_client() as client:
52
- query = client.query(rnd)
51
+ query = self.get_client().query(rnd)
53
52
  return query.cte(f"{self.get_sampler_table_name()}_sample")
@@ -136,6 +136,8 @@ class SQASampler(SamplerInterface, SQAInterfaceMixin):
136
136
  ).cte(f"{self.get_sampler_table_name()}_sample")
137
137
 
138
138
  table_query = client.query(self.raw_dataset)
139
+ if self.partition_details:
140
+ table_query = self.get_partitioned_query(table_query)
139
141
  session_query = self._base_sample_query(
140
142
  column,
141
143
  (ModuloFn(RandomNumFn(), table_query.count())).label(RANDOM_LABEL)
@@ -87,10 +87,9 @@ class SnowflakeSampler(SQASampler):
87
87
  )
88
88
 
89
89
  def get_sample_query(self, *, column=None) -> CTE:
90
- """get query for sample data"""
90
+ """Override the base method as ROWS or PERCENT sampling handled through the tablesample clause"""
91
91
  rnd = self._base_sample_query(column).cte(
92
92
  f"{self.get_sampler_table_name()}_rnd"
93
93
  )
94
- with self.get_client() as client:
95
- query = client.query(rnd)
94
+ query = self.get_client().query(rnd)
96
95
  return query.cte(f"{self.get_sampler_table_name()}_sample")
metadata/utils/filters.py CHANGED
@@ -310,3 +310,16 @@ def filter_by_collection(
310
310
  :return: True for filtering, False otherwise
311
311
  """
312
312
  return _filter(collection_pattern, collection_name)
313
+
314
+
315
+ def filter_by_tag(tag_pattern: Optional[FilterPattern], tag_name: str) -> bool:
316
+ """
317
+ Return True if the models needs to be filtered, False otherwise
318
+
319
+ Include takes precedence over exclude
320
+
321
+ :param tag_pattern: Model defining tag filtering logic
322
+ :param tag_name: tag name
323
+ :return: True for filtering, False otherwise
324
+ """
325
+ return _filter(tag_pattern, tag_name)
metadata/utils/helpers.py CHANGED
@@ -94,6 +94,7 @@ om_chart_type_dict = {
94
94
  "levelTable": ChartType.Table,
95
95
  "dist_bar": ChartType.Bar,
96
96
  "bar": ChartType.Bar,
97
+ "vertical_bar": ChartType.Bar,
97
98
  "box_plot": ChartType.BoxPlot,
98
99
  "box": ChartType.BoxPlot,
99
100
  "boxplot": ChartType.BoxPlot,