openmetadata-ingestion 1.3.0.0.dev0__py3-none-any.whl → 1.3.1.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 (631) hide show
  1. metadata/applications/auto_tagger.py +8 -3
  2. metadata/cli/db_dump.py +1 -0
  3. metadata/data_insight/processor/reports/cost_analysis_report_data_processor.py +39 -47
  4. metadata/data_insight/processor/reports/data_processor.py +1 -0
  5. metadata/data_insight/producer/cost_analysis_producer.py +78 -14
  6. metadata/data_insight/producer/entity_producer.py +1 -1
  7. metadata/data_insight/producer/producer_interface.py +1 -1
  8. metadata/data_insight/producer/web_analytics_producer.py +1 -1
  9. metadata/data_insight/source/metadata.py +10 -1
  10. metadata/data_quality/processor/test_case_runner.py +7 -5
  11. metadata/data_quality/source/test_suite.py +0 -1
  12. metadata/data_quality/validations/mixins/pandas_validator_mixin.py +4 -2
  13. metadata/data_quality/validations/table/base/tableColumnToMatchSet.py +2 -1
  14. metadata/data_quality/validations/table/pandas/tableColumnToMatchSet.py +2 -1
  15. metadata/data_quality/validations/table/sqlalchemy/tableColumnToMatchSet.py +7 -2
  16. metadata/examples/workflows/bigtable.yaml +32 -0
  17. metadata/generated/antlr/EntityLinkLexer.py +124 -58
  18. metadata/generated/schema/analytics/__init__.py +1 -1
  19. metadata/generated/schema/analytics/basic.py +1 -1
  20. metadata/generated/schema/analytics/reportData.py +1 -1
  21. metadata/generated/schema/analytics/reportDataType/__init__.py +1 -1
  22. metadata/generated/schema/analytics/reportDataType/aggregatedCostAnalysisReportData.py +1 -1
  23. metadata/generated/schema/analytics/reportDataType/entityReportData.py +1 -1
  24. metadata/generated/schema/analytics/reportDataType/rawCostAnalysisReportData.py +1 -1
  25. metadata/generated/schema/analytics/reportDataType/webAnalyticEntityViewReportData.py +1 -1
  26. metadata/generated/schema/analytics/reportDataType/webAnalyticUserActivityReportData.py +1 -1
  27. metadata/generated/schema/analytics/webAnalyticEvent.py +1 -1
  28. metadata/generated/schema/analytics/webAnalyticEventData.py +1 -1
  29. metadata/generated/schema/analytics/webAnalyticEventType/__init__.py +1 -1
  30. metadata/generated/schema/analytics/webAnalyticEventType/customEvent.py +1 -1
  31. metadata/generated/schema/analytics/webAnalyticEventType/pageViewEvent.py +1 -1
  32. metadata/generated/schema/api/__init__.py +1 -1
  33. metadata/generated/schema/api/addGlossaryToAssetsRequest.py +1 -1
  34. metadata/generated/schema/api/analytics/__init__.py +1 -1
  35. metadata/generated/schema/api/analytics/createWebAnalyticEvent.py +1 -1
  36. metadata/generated/schema/api/automations/__init__.py +1 -1
  37. metadata/generated/schema/api/automations/createWorkflow.py +1 -1
  38. metadata/generated/schema/api/bulkAssets.py +1 -1
  39. metadata/generated/schema/api/classification/__init__.py +1 -1
  40. metadata/generated/schema/api/classification/createClassification.py +1 -1
  41. metadata/generated/schema/api/classification/createTag.py +1 -1
  42. metadata/generated/schema/api/classification/loadTags.py +1 -1
  43. metadata/generated/schema/api/createBot.py +1 -1
  44. metadata/generated/schema/api/createEventPublisherJob.py +2 -2
  45. metadata/generated/schema/api/createType.py +1 -1
  46. metadata/generated/schema/api/data/__init__.py +1 -1
  47. metadata/generated/schema/api/data/createChart.py +1 -1
  48. metadata/generated/schema/api/data/createContainer.py +1 -1
  49. metadata/generated/schema/api/data/createCustomProperty.py +6 -10
  50. metadata/generated/schema/api/data/createDashboard.py +1 -1
  51. metadata/generated/schema/api/data/createDashboardDataModel.py +1 -1
  52. metadata/generated/schema/api/data/createDatabase.py +1 -1
  53. metadata/generated/schema/api/data/createDatabaseSchema.py +1 -1
  54. metadata/generated/schema/api/data/createGlossary.py +1 -1
  55. metadata/generated/schema/api/data/createGlossaryTerm.py +1 -1
  56. metadata/generated/schema/api/data/createMlModel.py +1 -1
  57. metadata/generated/schema/api/data/createPipeline.py +1 -1
  58. metadata/generated/schema/api/data/createQuery.py +1 -1
  59. metadata/generated/schema/api/data/createSearchIndex.py +1 -1
  60. metadata/generated/schema/api/data/createStoredProcedure.py +1 -1
  61. metadata/generated/schema/api/data/createTable.py +1 -1
  62. metadata/generated/schema/api/data/createTableProfile.py +1 -1
  63. metadata/generated/schema/api/data/createTopic.py +1 -1
  64. metadata/generated/schema/api/data/loadGlossary.py +1 -1
  65. metadata/generated/schema/api/data/restoreEntity.py +1 -1
  66. metadata/generated/schema/api/dataInsight/__init__.py +1 -1
  67. metadata/generated/schema/api/dataInsight/createDataInsightChart.py +1 -1
  68. metadata/generated/schema/api/dataInsight/kpi/__init__.py +1 -1
  69. metadata/generated/schema/api/dataInsight/kpi/createKpiRequest.py +1 -1
  70. metadata/generated/schema/api/docStore/__init__.py +1 -1
  71. metadata/generated/schema/api/docStore/createDocument.py +1 -1
  72. metadata/generated/schema/api/domains/__init__.py +1 -1
  73. metadata/generated/schema/api/domains/createDataProduct.py +1 -1
  74. metadata/generated/schema/api/domains/createDomain.py +1 -1
  75. metadata/generated/schema/api/feed/__init__.py +1 -1
  76. metadata/generated/schema/api/feed/closeTask.py +1 -1
  77. metadata/generated/schema/api/feed/createPost.py +1 -1
  78. metadata/generated/schema/api/feed/createSuggestion.py +30 -0
  79. metadata/generated/schema/api/feed/createThread.py +1 -1
  80. metadata/generated/schema/api/feed/resolveTask.py +1 -1
  81. metadata/generated/schema/api/feed/threadCount.py +1 -1
  82. metadata/generated/schema/api/lineage/__init__.py +1 -1
  83. metadata/generated/schema/api/lineage/addLineage.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/services/__init__.py +1 -1
  88. metadata/generated/schema/api/services/createDashboardService.py +1 -1
  89. metadata/generated/schema/api/services/createDatabaseService.py +1 -1
  90. metadata/generated/schema/api/services/createMessagingService.py +1 -1
  91. metadata/generated/schema/api/services/createMetadataService.py +1 -1
  92. metadata/generated/schema/api/services/createMlModelService.py +1 -1
  93. metadata/generated/schema/api/services/createPipelineService.py +1 -1
  94. metadata/generated/schema/api/services/createSearchService.py +1 -1
  95. metadata/generated/schema/api/services/createStorageService.py +1 -1
  96. metadata/generated/schema/api/services/ingestionPipelines/__init__.py +1 -1
  97. metadata/generated/schema/api/services/ingestionPipelines/createIngestionPipeline.py +1 -1
  98. metadata/generated/schema/api/setOwner.py +1 -1
  99. metadata/generated/schema/api/teams/__init__.py +1 -1
  100. metadata/generated/schema/api/teams/createPersona.py +1 -1
  101. metadata/generated/schema/api/teams/createRole.py +1 -1
  102. metadata/generated/schema/api/teams/createTeam.py +1 -1
  103. metadata/generated/schema/api/teams/createUser.py +1 -1
  104. metadata/generated/schema/api/tests/__init__.py +1 -1
  105. metadata/generated/schema/api/tests/createCustomMetric.py +1 -1
  106. metadata/generated/schema/api/tests/createLogicalTestCases.py +1 -1
  107. metadata/generated/schema/api/tests/createTestCase.py +1 -1
  108. metadata/generated/schema/api/tests/createTestCaseResolutionStatus.py +1 -1
  109. metadata/generated/schema/api/tests/createTestDefinition.py +2 -1
  110. metadata/generated/schema/api/tests/createTestSuite.py +1 -1
  111. metadata/generated/schema/api/voteRequest.py +1 -1
  112. metadata/generated/schema/auth/__init__.py +1 -1
  113. metadata/generated/schema/auth/basicAuth.py +1 -1
  114. metadata/generated/schema/auth/basicLoginRequest.py +1 -1
  115. metadata/generated/schema/auth/changePasswordRequest.py +1 -1
  116. metadata/generated/schema/auth/createPersonalToken.py +1 -1
  117. metadata/generated/schema/auth/emailRequest.py +1 -1
  118. metadata/generated/schema/auth/emailVerificationToken.py +1 -1
  119. metadata/generated/schema/auth/generateToken.py +1 -1
  120. metadata/generated/schema/auth/jwtAuth.py +1 -1
  121. metadata/generated/schema/auth/loginRequest.py +1 -1
  122. metadata/generated/schema/auth/logoutRequest.py +1 -1
  123. metadata/generated/schema/auth/passwordResetRequest.py +1 -1
  124. metadata/generated/schema/auth/passwordResetToken.py +1 -1
  125. metadata/generated/schema/auth/personalAccessToken.py +1 -1
  126. metadata/generated/schema/auth/refreshToken.py +1 -1
  127. metadata/generated/schema/auth/registrationRequest.py +1 -1
  128. metadata/generated/schema/auth/revokePersonalToken.py +1 -1
  129. metadata/generated/schema/auth/revokeToken.py +1 -1
  130. metadata/generated/schema/auth/serviceTokenEnum.py +1 -1
  131. metadata/generated/schema/auth/ssoAuth.py +1 -1
  132. metadata/generated/schema/auth/tokenRefreshRequest.py +1 -1
  133. metadata/generated/schema/configuration/__init__.py +1 -1
  134. metadata/generated/schema/configuration/appsPrivateConfiguration.py +28 -0
  135. metadata/generated/schema/configuration/authConfig.py +1 -1
  136. metadata/generated/schema/configuration/authenticationConfiguration.py +1 -1
  137. metadata/generated/schema/configuration/authorizerConfiguration.py +1 -1
  138. metadata/generated/schema/configuration/changeEventConfiguration.py +1 -1
  139. metadata/generated/schema/configuration/dataQualityConfiguration.py +16 -0
  140. metadata/generated/schema/configuration/elasticSearchConfiguration.py +4 -1
  141. metadata/generated/schema/configuration/eventHandlerConfiguration.py +1 -1
  142. metadata/generated/schema/configuration/fernetConfiguration.py +1 -1
  143. metadata/generated/schema/configuration/jwtTokenConfiguration.py +1 -1
  144. metadata/generated/schema/configuration/kafkaEventConfiguration.py +1 -1
  145. metadata/generated/schema/configuration/ldapConfiguration.py +1 -1
  146. metadata/generated/schema/configuration/ldapTrustStoreConfig/__init__.py +1 -1
  147. metadata/generated/schema/configuration/ldapTrustStoreConfig/customTrustManagerConfig.py +1 -1
  148. metadata/generated/schema/configuration/ldapTrustStoreConfig/hostNameConfig.py +1 -1
  149. metadata/generated/schema/configuration/ldapTrustStoreConfig/jvmDefaultConfig.py +1 -1
  150. metadata/generated/schema/configuration/ldapTrustStoreConfig/trustAllConfig.py +1 -1
  151. metadata/generated/schema/configuration/ldapTrustStoreConfig/truststoreConfig.py +1 -1
  152. metadata/generated/schema/configuration/loginConfiguration.py +1 -1
  153. metadata/generated/schema/configuration/logoConfiguration.py +1 -1
  154. metadata/generated/schema/configuration/pipelineServiceClientConfiguration.py +1 -1
  155. metadata/generated/schema/configuration/slackAppConfiguration.py +1 -1
  156. metadata/generated/schema/configuration/taskNotificationConfiguration.py +1 -1
  157. metadata/generated/schema/configuration/testResultNotificationConfiguration.py +1 -1
  158. metadata/generated/schema/dataInsight/__init__.py +1 -1
  159. metadata/generated/schema/dataInsight/dataInsightChart.py +1 -1
  160. metadata/generated/schema/dataInsight/dataInsightChartResult.py +1 -1
  161. metadata/generated/schema/dataInsight/kpi/__init__.py +1 -1
  162. metadata/generated/schema/dataInsight/kpi/basic.py +1 -1
  163. metadata/generated/schema/dataInsight/kpi/kpi.py +1 -1
  164. metadata/generated/schema/dataInsight/type/__init__.py +1 -1
  165. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsCount.py +1 -1
  166. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsSize.py +1 -1
  167. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsCount.py +1 -1
  168. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsSize.py +1 -1
  169. metadata/generated/schema/dataInsight/type/dailyActiveUsers.py +1 -1
  170. metadata/generated/schema/dataInsight/type/mostActiveUsers.py +1 -1
  171. metadata/generated/schema/dataInsight/type/mostViewedEntities.py +1 -1
  172. metadata/generated/schema/dataInsight/type/pageViewsByEntities.py +1 -1
  173. metadata/generated/schema/dataInsight/type/percentageOfEntitiesWithDescriptionByType.py +1 -1
  174. metadata/generated/schema/dataInsight/type/percentageOfEntitiesWithOwnerByType.py +1 -1
  175. metadata/generated/schema/dataInsight/type/percentageOfServicesWithDescription.py +1 -1
  176. metadata/generated/schema/dataInsight/type/percentageOfServicesWithOwner.py +1 -1
  177. metadata/generated/schema/dataInsight/type/totalEntitiesByTier.py +1 -1
  178. metadata/generated/schema/dataInsight/type/totalEntitiesByType.py +1 -1
  179. metadata/generated/schema/dataInsight/type/unusedAssets.py +1 -1
  180. metadata/generated/schema/email/__init__.py +1 -1
  181. metadata/generated/schema/email/emailRequest.py +1 -1
  182. metadata/generated/schema/email/smtpSettings.py +1 -1
  183. metadata/generated/schema/entity/__init__.py +1 -1
  184. metadata/generated/schema/entity/applications/__init__.py +1 -1
  185. metadata/generated/schema/entity/applications/app.py +4 -1
  186. metadata/generated/schema/entity/applications/appRunRecord.py +1 -1
  187. metadata/generated/schema/entity/applications/configuration/__init__.py +1 -1
  188. metadata/generated/schema/entity/applications/configuration/applicationConfig.py +6 -1
  189. metadata/generated/schema/entity/applications/configuration/external/__init__.py +1 -1
  190. metadata/generated/schema/entity/applications/configuration/external/autoTaggerAppConfig.py +1 -1
  191. metadata/generated/schema/entity/applications/configuration/external/metaPilotAppConfig.py +1 -16
  192. metadata/generated/schema/entity/applications/configuration/internal/__init__.py +1 -1
  193. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsAppConfig.py +1 -1
  194. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsReportAppConfig.py +1 -1
  195. metadata/generated/schema/entity/applications/configuration/internal/searchIndexingAppConfig.py +2 -2
  196. metadata/generated/schema/entity/applications/configuration/private/external/__init__.py +3 -0
  197. metadata/generated/schema/entity/applications/configuration/private/external/metaPilotAppPrivateConfig.py +26 -0
  198. metadata/generated/schema/entity/applications/createAppRequest.py +1 -1
  199. metadata/generated/schema/entity/applications/jobStatus.py +1 -1
  200. metadata/generated/schema/entity/applications/liveExecutionContext.py +1 -1
  201. metadata/generated/schema/entity/applications/marketplace/__init__.py +1 -1
  202. metadata/generated/schema/entity/applications/marketplace/appMarketPlaceDefinition.py +1 -1
  203. metadata/generated/schema/entity/applications/marketplace/createAppMarketPlaceDefinitionReq.py +1 -1
  204. metadata/generated/schema/entity/applications/scheduledExecutionContext.py +1 -1
  205. metadata/generated/schema/entity/automations/__init__.py +1 -1
  206. metadata/generated/schema/entity/automations/testServiceConnection.py +1 -1
  207. metadata/generated/schema/entity/automations/workflow.py +1 -1
  208. metadata/generated/schema/entity/bot.py +1 -1
  209. metadata/generated/schema/entity/classification/__init__.py +1 -1
  210. metadata/generated/schema/entity/classification/classification.py +1 -1
  211. metadata/generated/schema/entity/classification/tag.py +1 -1
  212. metadata/generated/schema/entity/data/__init__.py +1 -1
  213. metadata/generated/schema/entity/data/chart.py +1 -1
  214. metadata/generated/schema/entity/data/container.py +1 -1
  215. metadata/generated/schema/entity/data/dashboard.py +1 -1
  216. metadata/generated/schema/entity/data/dashboardDataModel.py +1 -1
  217. metadata/generated/schema/entity/data/database.py +1 -1
  218. metadata/generated/schema/entity/data/databaseSchema.py +1 -1
  219. metadata/generated/schema/entity/data/glossary.py +1 -1
  220. metadata/generated/schema/entity/data/glossaryTerm.py +1 -1
  221. metadata/generated/schema/entity/data/metrics.py +1 -1
  222. metadata/generated/schema/entity/data/mlmodel.py +2 -2
  223. metadata/generated/schema/entity/data/pipeline.py +1 -1
  224. metadata/generated/schema/entity/data/query.py +1 -1
  225. metadata/generated/schema/entity/data/report.py +1 -1
  226. metadata/generated/schema/entity/data/searchIndex.py +1 -1
  227. metadata/generated/schema/entity/data/storedProcedure.py +1 -1
  228. metadata/generated/schema/entity/data/table.py +2 -1
  229. metadata/generated/schema/entity/data/topic.py +1 -1
  230. metadata/generated/schema/entity/docStore/__init__.py +1 -1
  231. metadata/generated/schema/entity/docStore/document.py +1 -1
  232. metadata/generated/schema/entity/domains/__init__.py +1 -1
  233. metadata/generated/schema/entity/domains/dataProduct.py +1 -1
  234. metadata/generated/schema/entity/domains/domain.py +1 -1
  235. metadata/generated/schema/entity/events/__init__.py +1 -1
  236. metadata/generated/schema/entity/events/webhook.py +4 -6
  237. metadata/generated/schema/entity/feed/__init__.py +1 -1
  238. metadata/generated/schema/entity/feed/suggestion.py +61 -0
  239. metadata/generated/schema/entity/feed/thread.py +1 -1
  240. metadata/generated/schema/entity/policies/__init__.py +1 -1
  241. metadata/generated/schema/entity/policies/accessControl/__init__.py +1 -1
  242. metadata/generated/schema/entity/policies/accessControl/resourceDescriptor.py +1 -1
  243. metadata/generated/schema/entity/policies/accessControl/resourcePermission.py +1 -1
  244. metadata/generated/schema/entity/policies/accessControl/rule.py +1 -1
  245. metadata/generated/schema/entity/policies/filters.py +1 -1
  246. metadata/generated/schema/entity/policies/policy.py +1 -1
  247. metadata/generated/schema/entity/services/__init__.py +1 -1
  248. metadata/generated/schema/entity/services/connections/__init__.py +1 -1
  249. metadata/generated/schema/entity/services/connections/common/__init__.py +1 -1
  250. metadata/generated/schema/entity/services/connections/common/sslCertPaths.py +1 -1
  251. metadata/generated/schema/entity/services/connections/common/sslCertValues.py +1 -1
  252. metadata/generated/schema/entity/services/connections/common/sslConfig.py +1 -1
  253. metadata/generated/schema/entity/services/connections/connectionBasicType.py +1 -1
  254. metadata/generated/schema/entity/services/connections/dashboard/__init__.py +1 -1
  255. metadata/generated/schema/entity/services/connections/dashboard/customDashboardConnection.py +1 -1
  256. metadata/generated/schema/entity/services/connections/dashboard/domoDashboardConnection.py +1 -1
  257. metadata/generated/schema/entity/services/connections/dashboard/lightdashConnection.py +1 -1
  258. metadata/generated/schema/entity/services/connections/dashboard/lookerConnection.py +1 -1
  259. metadata/generated/schema/entity/services/connections/dashboard/metabaseConnection.py +1 -1
  260. metadata/generated/schema/entity/services/connections/dashboard/modeConnection.py +1 -1
  261. metadata/generated/schema/entity/services/connections/dashboard/mstrConnection.py +1 -1
  262. metadata/generated/schema/entity/services/connections/dashboard/powerBIConnection.py +1 -1
  263. metadata/generated/schema/entity/services/connections/dashboard/qlikSenseConnection.py +1 -1
  264. metadata/generated/schema/entity/services/connections/dashboard/quickSightConnection.py +1 -1
  265. metadata/generated/schema/entity/services/connections/dashboard/redashConnection.py +1 -1
  266. metadata/generated/schema/entity/services/connections/dashboard/supersetConnection.py +1 -1
  267. metadata/generated/schema/entity/services/connections/dashboard/tableauConnection.py +1 -1
  268. metadata/generated/schema/entity/services/connections/database/__init__.py +1 -1
  269. metadata/generated/schema/entity/services/connections/database/athenaConnection.py +1 -1
  270. metadata/generated/schema/entity/services/connections/database/azureSQLConnection.py +1 -1
  271. metadata/generated/schema/entity/services/connections/database/bigQueryConnection.py +1 -1
  272. metadata/generated/schema/entity/services/connections/database/bigTableConnection.py +41 -0
  273. metadata/generated/schema/entity/services/connections/database/clickhouseConnection.py +1 -1
  274. metadata/generated/schema/entity/services/connections/database/common/__init__.py +1 -1
  275. metadata/generated/schema/entity/services/connections/database/common/basicAuth.py +1 -1
  276. metadata/generated/schema/entity/services/connections/database/common/iamAuthConfig.py +1 -1
  277. metadata/generated/schema/entity/services/connections/database/common/jwtAuth.py +1 -1
  278. metadata/generated/schema/entity/services/connections/database/couchbaseConnection.py +1 -1
  279. metadata/generated/schema/entity/services/connections/database/customDatabaseConnection.py +1 -1
  280. metadata/generated/schema/entity/services/connections/database/databricksConnection.py +1 -1
  281. metadata/generated/schema/entity/services/connections/database/datalake/__init__.py +1 -1
  282. metadata/generated/schema/entity/services/connections/database/datalake/azureConfig.py +1 -1
  283. metadata/generated/schema/entity/services/connections/database/datalake/gcsConfig.py +1 -1
  284. metadata/generated/schema/entity/services/connections/database/datalake/s3Config.py +1 -1
  285. metadata/generated/schema/entity/services/connections/database/datalakeConnection.py +1 -1
  286. metadata/generated/schema/entity/services/connections/database/db2Connection.py +1 -1
  287. metadata/generated/schema/entity/services/connections/database/deltaLakeConnection.py +1 -1
  288. metadata/generated/schema/entity/services/connections/database/domoDatabaseConnection.py +1 -1
  289. metadata/generated/schema/entity/services/connections/database/dorisConnection.py +1 -1
  290. metadata/generated/schema/entity/services/connections/database/druidConnection.py +1 -1
  291. metadata/generated/schema/entity/services/connections/database/dynamoDBConnection.py +1 -1
  292. metadata/generated/schema/entity/services/connections/database/glueConnection.py +1 -1
  293. metadata/generated/schema/entity/services/connections/database/greenplumConnection.py +1 -1
  294. metadata/generated/schema/entity/services/connections/database/hiveConnection.py +1 -1
  295. metadata/generated/schema/entity/services/connections/database/iceberg/__init__.py +1 -1
  296. metadata/generated/schema/entity/services/connections/database/iceberg/dynamoDbCatalogConnection.py +1 -1
  297. metadata/generated/schema/entity/services/connections/database/iceberg/glueCatalogConnection.py +1 -1
  298. metadata/generated/schema/entity/services/connections/database/iceberg/hiveCatalogConnection.py +1 -1
  299. metadata/generated/schema/entity/services/connections/database/iceberg/icebergCatalog.py +1 -1
  300. metadata/generated/schema/entity/services/connections/database/iceberg/icebergFileSystem.py +1 -1
  301. metadata/generated/schema/entity/services/connections/database/iceberg/restCatalogConnection.py +1 -1
  302. metadata/generated/schema/entity/services/connections/database/icebergConnection.py +1 -1
  303. metadata/generated/schema/entity/services/connections/database/impalaConnection.py +1 -1
  304. metadata/generated/schema/entity/services/connections/database/mariaDBConnection.py +1 -1
  305. metadata/generated/schema/entity/services/connections/database/mongoDBConnection.py +1 -1
  306. metadata/generated/schema/entity/services/connections/database/mssqlConnection.py +1 -1
  307. metadata/generated/schema/entity/services/connections/database/mysqlConnection.py +1 -1
  308. metadata/generated/schema/entity/services/connections/database/oracleConnection.py +1 -1
  309. metadata/generated/schema/entity/services/connections/database/pinotDBConnection.py +8 -6
  310. metadata/generated/schema/entity/services/connections/database/postgresConnection.py +1 -1
  311. metadata/generated/schema/entity/services/connections/database/prestoConnection.py +1 -1
  312. metadata/generated/schema/entity/services/connections/database/redshiftConnection.py +1 -1
  313. metadata/generated/schema/entity/services/connections/database/salesforceConnection.py +1 -1
  314. metadata/generated/schema/entity/services/connections/database/sapHanaConnection.py +1 -1
  315. metadata/generated/schema/entity/services/connections/database/sasConnection.py +1 -1
  316. metadata/generated/schema/entity/services/connections/database/singleStoreConnection.py +1 -1
  317. metadata/generated/schema/entity/services/connections/database/snowflakeConnection.py +1 -1
  318. metadata/generated/schema/entity/services/connections/database/sqliteConnection.py +1 -1
  319. metadata/generated/schema/entity/services/connections/database/trinoConnection.py +1 -1
  320. metadata/generated/schema/entity/services/connections/database/unityCatalogConnection.py +1 -1
  321. metadata/generated/schema/entity/services/connections/database/verticaConnection.py +1 -1
  322. metadata/generated/schema/entity/services/connections/messaging/__init__.py +1 -1
  323. metadata/generated/schema/entity/services/connections/messaging/customMessagingConnection.py +1 -1
  324. metadata/generated/schema/entity/services/connections/messaging/kafkaConnection.py +14 -2
  325. metadata/generated/schema/entity/services/connections/messaging/kinesisConnection.py +1 -1
  326. metadata/generated/schema/entity/services/connections/messaging/pulsarConnection.py +1 -1
  327. metadata/generated/schema/entity/services/connections/messaging/redpandaConnection.py +14 -2
  328. metadata/generated/schema/entity/services/connections/messaging/saslMechanismType.py +1 -1
  329. metadata/generated/schema/entity/services/connections/metadata/__init__.py +1 -1
  330. metadata/generated/schema/entity/services/connections/metadata/alationConnection.py +1 -1
  331. metadata/generated/schema/entity/services/connections/metadata/amundsenConnection.py +1 -1
  332. metadata/generated/schema/entity/services/connections/metadata/atlasConnection.py +1 -1
  333. metadata/generated/schema/entity/services/connections/metadata/metadataESConnection.py +2 -2
  334. metadata/generated/schema/entity/services/connections/metadata/openMetadataConnection.py +1 -1
  335. metadata/generated/schema/entity/services/connections/mlmodel/__init__.py +1 -1
  336. metadata/generated/schema/entity/services/connections/mlmodel/customMlModelConnection.py +1 -1
  337. metadata/generated/schema/entity/services/connections/mlmodel/mlflowConnection.py +1 -1
  338. metadata/generated/schema/entity/services/connections/mlmodel/sageMakerConnection.py +1 -1
  339. metadata/generated/schema/entity/services/connections/mlmodel/sklearnConnection.py +1 -1
  340. metadata/generated/schema/entity/services/connections/pipeline/__init__.py +1 -1
  341. metadata/generated/schema/entity/services/connections/pipeline/airbyteConnection.py +1 -1
  342. metadata/generated/schema/entity/services/connections/pipeline/airflowConnection.py +1 -1
  343. metadata/generated/schema/entity/services/connections/pipeline/backendConnection.py +1 -1
  344. metadata/generated/schema/entity/services/connections/pipeline/customPipelineConnection.py +1 -1
  345. metadata/generated/schema/entity/services/connections/pipeline/dagsterConnection.py +1 -1
  346. metadata/generated/schema/entity/services/connections/pipeline/databricksPipelineConnection.py +1 -1
  347. metadata/generated/schema/entity/services/connections/pipeline/domoPipelineConnection.py +1 -1
  348. metadata/generated/schema/entity/services/connections/pipeline/fivetranConnection.py +1 -1
  349. metadata/generated/schema/entity/services/connections/pipeline/gluePipelineConnection.py +1 -1
  350. metadata/generated/schema/entity/services/connections/pipeline/nifiConnection.py +1 -1
  351. metadata/generated/schema/entity/services/connections/pipeline/sparkConnection.py +1 -1
  352. metadata/generated/schema/entity/services/connections/pipeline/splineConnection.py +1 -1
  353. metadata/generated/schema/entity/services/connections/search/__init__.py +1 -1
  354. metadata/generated/schema/entity/services/connections/search/customSearchConnection.py +1 -1
  355. metadata/generated/schema/entity/services/connections/search/elasticSearch/__init__.py +1 -1
  356. metadata/generated/schema/entity/services/connections/search/elasticSearch/apiAuth.py +1 -1
  357. metadata/generated/schema/entity/services/connections/search/elasticSearch/basicAuth.py +1 -1
  358. metadata/generated/schema/entity/services/connections/search/elasticSearchConnection.py +1 -1
  359. metadata/generated/schema/entity/services/connections/search/openSearchConnection.py +1 -1
  360. metadata/generated/schema/entity/services/connections/serviceConnection.py +1 -1
  361. metadata/generated/schema/entity/services/connections/storage/__init__.py +1 -1
  362. metadata/generated/schema/entity/services/connections/storage/adlsConnection.py +1 -1
  363. metadata/generated/schema/entity/services/connections/storage/customStorageConnection.py +1 -1
  364. metadata/generated/schema/entity/services/connections/storage/gcsConnection.py +1 -1
  365. metadata/generated/schema/entity/services/connections/storage/s3Connection.py +1 -1
  366. metadata/generated/schema/entity/services/connections/testConnectionDefinition.py +1 -1
  367. metadata/generated/schema/entity/services/connections/testConnectionResult.py +1 -1
  368. metadata/generated/schema/entity/services/dashboardService.py +1 -1
  369. metadata/generated/schema/entity/services/databaseService.py +4 -4
  370. metadata/generated/schema/entity/services/ingestionPipelines/__init__.py +1 -1
  371. metadata/generated/schema/entity/services/ingestionPipelines/ingestionPipeline.py +1 -1
  372. metadata/generated/schema/entity/services/ingestionPipelines/pipelineServiceClientResponse.py +1 -1
  373. metadata/generated/schema/entity/services/ingestionPipelines/status.py +1 -1
  374. metadata/generated/schema/entity/services/messagingService.py +1 -1
  375. metadata/generated/schema/entity/services/metadataService.py +1 -1
  376. metadata/generated/schema/entity/services/mlmodelService.py +1 -1
  377. metadata/generated/schema/entity/services/pipelineService.py +1 -1
  378. metadata/generated/schema/entity/services/searchService.py +1 -1
  379. metadata/generated/schema/entity/services/serviceType.py +1 -1
  380. metadata/generated/schema/entity/services/storageService.py +1 -1
  381. metadata/generated/schema/entity/teams/__init__.py +1 -1
  382. metadata/generated/schema/entity/teams/persona.py +1 -1
  383. metadata/generated/schema/entity/teams/role.py +1 -1
  384. metadata/generated/schema/entity/teams/team.py +1 -1
  385. metadata/generated/schema/entity/teams/teamHierarchy.py +1 -1
  386. metadata/generated/schema/entity/teams/user.py +1 -1
  387. metadata/generated/schema/entity/type.py +3 -18
  388. metadata/generated/schema/entity/utils/__init__.py +1 -1
  389. metadata/generated/schema/entity/utils/entitiesCount.py +1 -1
  390. metadata/generated/schema/entity/utils/servicesCount.py +1 -1
  391. metadata/generated/schema/entity/utils/supersetApiConnection.py +1 -1
  392. metadata/generated/schema/events/__init__.py +1 -1
  393. metadata/generated/schema/events/alertMetrics.py +1 -1
  394. metadata/generated/schema/events/api/__init__.py +1 -1
  395. metadata/generated/schema/events/api/createEventSubscription.py +1 -1
  396. metadata/generated/schema/events/emailAlertConfig.py +1 -6
  397. metadata/generated/schema/events/eventFilterRule.py +1 -1
  398. metadata/generated/schema/events/eventSubscription.py +5 -10
  399. metadata/generated/schema/events/eventSubscriptionOffset.py +1 -1
  400. metadata/generated/schema/events/failedEvent.py +1 -1
  401. metadata/generated/schema/events/filterResourceDescriptor.py +1 -1
  402. metadata/generated/schema/events/subscriptionResourceDescriptor.py +1 -1
  403. metadata/generated/schema/metadataIngestion/__init__.py +1 -1
  404. metadata/generated/schema/metadataIngestion/application.py +4 -1
  405. metadata/generated/schema/metadataIngestion/applicationPipeline.py +4 -1
  406. metadata/generated/schema/metadataIngestion/dashboardServiceMetadataPipeline.py +1 -1
  407. metadata/generated/schema/metadataIngestion/dataInsightPipeline.py +1 -1
  408. metadata/generated/schema/metadataIngestion/databaseServiceMetadataPipeline.py +1 -1
  409. metadata/generated/schema/metadataIngestion/databaseServiceProfilerPipeline.py +1 -1
  410. metadata/generated/schema/metadataIngestion/databaseServiceQueryLineagePipeline.py +1 -1
  411. metadata/generated/schema/metadataIngestion/databaseServiceQueryUsagePipeline.py +1 -1
  412. metadata/generated/schema/metadataIngestion/dbtPipeline.py +1 -1
  413. metadata/generated/schema/metadataIngestion/dbtconfig/__init__.py +1 -1
  414. metadata/generated/schema/metadataIngestion/dbtconfig/dbtAzureConfig.py +6 -3
  415. metadata/generated/schema/metadataIngestion/dbtconfig/dbtBucketDetails.py +1 -1
  416. metadata/generated/schema/metadataIngestion/dbtconfig/dbtCloudConfig.py +1 -1
  417. metadata/generated/schema/metadataIngestion/dbtconfig/dbtGCSConfig.py +6 -3
  418. metadata/generated/schema/metadataIngestion/dbtconfig/dbtHttpConfig.py +1 -1
  419. metadata/generated/schema/metadataIngestion/dbtconfig/dbtLocalConfig.py +1 -1
  420. metadata/generated/schema/metadataIngestion/dbtconfig/dbtS3Config.py +6 -3
  421. metadata/generated/schema/metadataIngestion/messagingServiceMetadataPipeline.py +1 -1
  422. metadata/generated/schema/metadataIngestion/metadataToElasticSearchPipeline.py +1 -1
  423. metadata/generated/schema/metadataIngestion/mlmodelServiceMetadataPipeline.py +1 -1
  424. metadata/generated/schema/metadataIngestion/pipelineServiceMetadataPipeline.py +1 -1
  425. metadata/generated/schema/metadataIngestion/searchServiceMetadataPipeline.py +1 -1
  426. metadata/generated/schema/metadataIngestion/storage/__init__.py +1 -1
  427. metadata/generated/schema/metadataIngestion/storage/containerMetadataConfig.py +1 -1
  428. metadata/generated/schema/metadataIngestion/storage/manifestMetadataConfig.py +1 -1
  429. metadata/generated/schema/metadataIngestion/storage/storageBucketDetails.py +1 -1
  430. metadata/generated/schema/metadataIngestion/storage/storageMetadataADLSConfig.py +1 -1
  431. metadata/generated/schema/metadataIngestion/storage/storageMetadataGCSConfig.py +1 -1
  432. metadata/generated/schema/metadataIngestion/storage/storageMetadataHttpConfig.py +1 -1
  433. metadata/generated/schema/metadataIngestion/storage/storageMetadataLocalConfig.py +1 -1
  434. metadata/generated/schema/metadataIngestion/storage/storageMetadataS3Config.py +1 -1
  435. metadata/generated/schema/metadataIngestion/storageServiceMetadataPipeline.py +1 -1
  436. metadata/generated/schema/metadataIngestion/testSuitePipeline.py +1 -1
  437. metadata/generated/schema/metadataIngestion/workflow.py +1 -1
  438. metadata/generated/schema/monitoring/__init__.py +1 -1
  439. metadata/generated/schema/monitoring/eventMonitorProvider.py +1 -1
  440. metadata/generated/schema/security/__init__.py +1 -1
  441. metadata/generated/schema/security/client/__init__.py +1 -1
  442. metadata/generated/schema/security/client/auth0SSOClientConfig.py +1 -1
  443. metadata/generated/schema/security/client/azureSSOClientConfig.py +1 -1
  444. metadata/generated/schema/security/client/customOidcSSOClientConfig.py +1 -1
  445. metadata/generated/schema/security/client/googleSSOClientConfig.py +1 -1
  446. metadata/generated/schema/security/client/oktaSSOClientConfig.py +1 -1
  447. metadata/generated/schema/security/client/openMetadataJWTClientConfig.py +1 -1
  448. metadata/generated/schema/security/client/samlSSOClientConfig.py +1 -1
  449. metadata/generated/schema/security/credentials/__init__.py +1 -1
  450. metadata/generated/schema/security/credentials/accessTokenAuth.py +1 -1
  451. metadata/generated/schema/security/credentials/apiAccessTokenAuth.py +1 -1
  452. metadata/generated/schema/security/credentials/awsCredentials.py +1 -1
  453. metadata/generated/schema/security/credentials/azureCredentials.py +16 -9
  454. metadata/generated/schema/security/credentials/basicAuth.py +1 -1
  455. metadata/generated/schema/security/credentials/bitbucketCredentials.py +1 -1
  456. metadata/generated/schema/security/credentials/gcpCredentials.py +1 -1
  457. metadata/generated/schema/security/credentials/gcpValues.py +1 -1
  458. metadata/generated/schema/security/credentials/gitCredentials.py +1 -1
  459. metadata/generated/schema/security/credentials/githubCredentials.py +1 -1
  460. metadata/generated/schema/security/secrets/__init__.py +1 -1
  461. metadata/generated/schema/security/secrets/secretsManagerClientLoader.py +1 -1
  462. metadata/generated/schema/security/secrets/secretsManagerConfiguration.py +1 -1
  463. metadata/generated/schema/security/secrets/secretsManagerProvider.py +3 -1
  464. metadata/generated/schema/security/securityConfiguration.py +1 -1
  465. metadata/generated/schema/security/ssl/__init__.py +1 -1
  466. metadata/generated/schema/security/ssl/validateSSLClientConfig.py +1 -1
  467. metadata/generated/schema/security/ssl/verifySSLConfig.py +1 -1
  468. metadata/generated/schema/settings/__init__.py +1 -1
  469. metadata/generated/schema/settings/settings.py +1 -1
  470. metadata/generated/schema/system/__init__.py +1 -1
  471. metadata/generated/schema/system/entityError.py +1 -1
  472. metadata/generated/schema/system/eventPublisherJob.py +1 -1
  473. metadata/generated/schema/system/indexingError.py +1 -1
  474. metadata/generated/schema/system/ui/__init__.py +1 -1
  475. metadata/generated/schema/system/ui/knowledgePanel.py +1 -1
  476. metadata/generated/schema/system/ui/page.py +1 -1
  477. metadata/generated/schema/tests/__init__.py +1 -1
  478. metadata/generated/schema/tests/assigned.py +1 -1
  479. metadata/generated/schema/tests/basic.py +1 -1
  480. metadata/generated/schema/tests/customMetric.py +1 -1
  481. metadata/generated/schema/tests/resolved.py +1 -1
  482. metadata/generated/schema/tests/testCase.py +1 -1
  483. metadata/generated/schema/tests/testCaseResolutionStatus.py +1 -1
  484. metadata/generated/schema/tests/testDefinition.py +2 -1
  485. metadata/generated/schema/tests/testSuite.py +1 -1
  486. metadata/generated/schema/type/__init__.py +1 -1
  487. metadata/generated/schema/type/auditLog.py +1 -1
  488. metadata/generated/schema/type/basic.py +6 -2
  489. metadata/generated/schema/type/bulkOperationResult.py +1 -1
  490. metadata/generated/schema/type/changeEvent.py +1 -1
  491. metadata/generated/schema/type/changeEventType.py +6 -1
  492. metadata/generated/schema/type/collectionDescriptor.py +1 -1
  493. metadata/generated/schema/type/csvDocumentation.py +1 -1
  494. metadata/generated/schema/type/csvErrorType.py +1 -1
  495. metadata/generated/schema/type/csvFile.py +1 -1
  496. metadata/generated/schema/type/csvImportResult.py +1 -1
  497. metadata/generated/schema/type/customProperties/__init__.py +3 -0
  498. metadata/generated/schema/type/customProperties/enumConfig.py +17 -0
  499. metadata/generated/schema/type/customProperty.py +52 -0
  500. metadata/generated/schema/type/dailyCount.py +1 -1
  501. metadata/generated/schema/type/databaseConnectionConfig.py +1 -1
  502. metadata/generated/schema/type/entityHistory.py +1 -1
  503. metadata/generated/schema/type/entityLineage.py +1 -1
  504. metadata/generated/schema/type/entityReference.py +1 -1
  505. metadata/generated/schema/type/entityReferenceList.py +1 -1
  506. metadata/generated/schema/type/entityRelationship.py +1 -1
  507. metadata/generated/schema/type/entityUsage.py +1 -1
  508. metadata/generated/schema/type/filterPattern.py +1 -1
  509. metadata/generated/schema/type/function.py +1 -1
  510. metadata/generated/schema/type/include.py +1 -1
  511. metadata/generated/schema/type/jdbcConnection.py +1 -1
  512. metadata/generated/schema/type/lifeCycle.py +1 -1
  513. metadata/generated/schema/type/paging.py +1 -1
  514. metadata/generated/schema/type/profile.py +1 -1
  515. metadata/generated/schema/type/queryParserData.py +1 -1
  516. metadata/generated/schema/type/reaction.py +1 -1
  517. metadata/generated/schema/type/schedule.py +1 -1
  518. metadata/generated/schema/type/schema.py +1 -1
  519. metadata/generated/schema/type/tableQuery.py +1 -1
  520. metadata/generated/schema/type/tableUsageCount.py +1 -1
  521. metadata/generated/schema/type/tagLabel.py +1 -1
  522. metadata/generated/schema/type/usageDetails.py +1 -1
  523. metadata/generated/schema/type/usageRequest.py +1 -1
  524. metadata/generated/schema/type/votes.py +1 -1
  525. metadata/great_expectations/action.py +7 -17
  526. metadata/ingestion/api/status.py +4 -0
  527. metadata/ingestion/api/steps.py +14 -1
  528. metadata/ingestion/api/topology_runner.py +4 -1
  529. metadata/ingestion/lineage/parser.py +4 -5
  530. metadata/ingestion/models/custom_properties.py +0 -1
  531. metadata/ingestion/models/patch_request.py +3 -2
  532. metadata/ingestion/ometa/client.py +6 -0
  533. metadata/ingestion/ometa/mixins/custom_property_mixin.py +11 -11
  534. metadata/ingestion/ometa/mixins/patch_mixin.py +0 -1
  535. metadata/ingestion/ometa/mixins/suggestions_mixin.py +41 -0
  536. metadata/ingestion/ometa/ometa_api.py +16 -8
  537. metadata/ingestion/ometa/routes.py +7 -0
  538. metadata/ingestion/sink/metadata_rest.py +2 -2
  539. metadata/ingestion/source/dashboard/dashboard_service.py +0 -1
  540. metadata/ingestion/source/dashboard/looker/metadata.py +3 -6
  541. metadata/ingestion/source/dashboard/metabase/client.py +4 -0
  542. metadata/ingestion/source/dashboard/metabase/metadata.py +5 -4
  543. metadata/ingestion/source/dashboard/metabase/models.py +2 -2
  544. metadata/ingestion/source/dashboard/superset/api_source.py +0 -1
  545. metadata/ingestion/source/dashboard/superset/db_source.py +1 -3
  546. metadata/ingestion/source/dashboard/superset/queries.py +1 -1
  547. metadata/ingestion/source/dashboard/tableau/metadata.py +19 -1
  548. metadata/ingestion/source/database/athena/client.py +2 -4
  549. metadata/ingestion/source/database/azuresql/metadata.py +0 -1
  550. metadata/ingestion/source/database/bigquery/helper.py +68 -1
  551. metadata/ingestion/source/database/bigquery/metadata.py +12 -3
  552. metadata/ingestion/source/database/bigquery/queries.py +22 -0
  553. metadata/ingestion/source/database/bigtable/client.py +62 -0
  554. metadata/ingestion/source/database/bigtable/connection.py +116 -0
  555. metadata/ingestion/source/database/bigtable/metadata.py +224 -0
  556. metadata/ingestion/source/database/bigtable/models.py +60 -0
  557. metadata/ingestion/source/database/common_db_source.py +2 -2
  558. metadata/ingestion/source/database/common_nosql_source.py +22 -4
  559. metadata/ingestion/source/database/databricks/client.py +0 -1
  560. metadata/ingestion/source/database/databricks/metadata.py +132 -46
  561. metadata/ingestion/source/database/databricks/queries.py +3 -4
  562. metadata/ingestion/source/database/datalake/metadata.py +9 -4
  563. metadata/ingestion/source/database/dbt/dbt_config.py +5 -0
  564. metadata/ingestion/source/database/dbt/dbt_service.py +3 -11
  565. metadata/ingestion/source/database/dbt/dbt_utils.py +3 -1
  566. metadata/ingestion/source/database/dbt/metadata.py +16 -29
  567. metadata/ingestion/source/database/extended_sample_data.py +202 -134
  568. metadata/ingestion/source/database/hive/connection.py +0 -2
  569. metadata/ingestion/source/database/mssql/metadata.py +0 -1
  570. metadata/ingestion/source/database/mssql/queries.py +1 -2
  571. metadata/ingestion/source/database/oracle/queries.py +2 -2
  572. metadata/ingestion/source/database/oracle/utils.py +0 -1
  573. metadata/ingestion/source/database/postgres/pgspider/lineage.py +0 -1
  574. metadata/ingestion/source/database/sample_data.py +0 -1
  575. metadata/ingestion/source/database/sas/metadata.py +2 -3
  576. metadata/ingestion/source/database/snowflake/utils.py +2 -6
  577. metadata/ingestion/source/database/stored_procedures_mixin.py +0 -1
  578. metadata/ingestion/source/database/unitycatalog/metadata.py +16 -31
  579. metadata/ingestion/source/messaging/common_broker_source.py +9 -8
  580. metadata/ingestion/source/messaging/kafka/connection.py +45 -4
  581. metadata/ingestion/source/mlmodel/sagemaker/metadata.py +20 -8
  582. metadata/ingestion/source/pipeline/spline/metadata.py +0 -1
  583. metadata/ingestion/source/search/elasticsearch/metadata.py +0 -1
  584. metadata/ingestion/source/storage/storage_service.py +8 -8
  585. metadata/profiler/interface/pandas/profiler_interface.py +7 -2
  586. metadata/profiler/interface/profiler_interface_factory.py +7 -0
  587. metadata/profiler/interface/sqlalchemy/db2/profiler_interface.py +38 -0
  588. metadata/profiler/interface/sqlalchemy/profiler_interface.py +3 -5
  589. metadata/profiler/metrics/hybrid/histogram.py +1 -0
  590. metadata/profiler/orm/functions/conn_test.py +1 -0
  591. metadata/profiler/orm/functions/sum.py +1 -0
  592. metadata/profiler/orm/functions/table_metric_computer.py +0 -1
  593. metadata/profiler/orm/registry.py +1 -0
  594. metadata/profiler/processor/core.py +2 -2
  595. metadata/profiler/processor/processor.py +0 -2
  596. metadata/profiler/processor/sample_data_handler.py +6 -2
  597. metadata/profiler/source/base/profiler_source.py +0 -1
  598. metadata/profiler/source/bigquery/type_mapper.py +0 -1
  599. metadata/readers/file/api_reader.py +0 -1
  600. metadata/utils/datalake/datalake_utils.py +369 -129
  601. metadata/utils/entity_link.py +26 -6
  602. metadata/utils/execution_time_tracker.py +199 -0
  603. metadata/utils/filters.py +4 -0
  604. metadata/utils/helpers.py +30 -38
  605. metadata/utils/secrets/aws_based_secrets_manager.py +67 -4
  606. metadata/utils/secrets/aws_secrets_manager.py +7 -2
  607. metadata/utils/secrets/aws_ssm_secrets_manager.py +7 -2
  608. metadata/utils/secrets/azure_kv_secrets_manager.py +148 -0
  609. metadata/utils/secrets/external_secrets_manager.py +25 -3
  610. metadata/utils/secrets/secrets_manager_factory.py +13 -31
  611. metadata/workflow/application.py +10 -10
  612. metadata/workflow/base.py +4 -1
  613. metadata/workflow/metadata.py +0 -1
  614. metadata/workflow/output_handler.py +22 -0
  615. metadata/workflow/usage.py +0 -1
  616. {openmetadata_ingestion-1.3.0.0.dev0.dist-info → openmetadata_ingestion-1.3.1.0.dist-info}/METADATA +298 -289
  617. {openmetadata_ingestion-1.3.0.0.dev0.dist-info → openmetadata_ingestion-1.3.1.0.dist-info}/RECORD +624 -612
  618. metadata/generated/schema/entity/services/connections/database/duckdbConnection.py +0 -96
  619. metadata/generated/schema/events/userAlertConfig.py +0 -25
  620. metadata/ingestion/source/database/duckdb/connection.py +0 -76
  621. metadata/ingestion/source/database/duckdb/metadata.py +0 -204
  622. metadata/ingestion/source/database/duckdb/queries.py +0 -141
  623. metadata/ingestion/source/database/duckdb/utils.py +0 -349
  624. metadata/utils/secrets/client/loader.py +0 -78
  625. /metadata/ingestion/source/database/{duckdb → bigtable}/__init__.py +0 -0
  626. /metadata/{utils/secrets/client → profiler/interface/sqlalchemy/db2}/__init__.py +0 -0
  627. /metadata/utils/secrets/{noop_secrets_manager.py → db_secrets_manager.py} +0 -0
  628. {openmetadata_ingestion-1.3.0.0.dev0.dist-info → openmetadata_ingestion-1.3.1.0.dist-info}/LICENSE +0 -0
  629. {openmetadata_ingestion-1.3.0.0.dev0.dist-info → openmetadata_ingestion-1.3.1.0.dist-info}/WHEEL +0 -0
  630. {openmetadata_ingestion-1.3.0.0.dev0.dist-info → openmetadata_ingestion-1.3.1.0.dist-info}/entry_points.txt +0 -0
  631. {openmetadata_ingestion-1.3.0.0.dev0.dist-info → openmetadata_ingestion-1.3.1.0.dist-info}/top_level.txt +0 -0
@@ -15,7 +15,7 @@ Source connection handler
15
15
  from dataclasses import dataclass
16
16
  from typing import Optional, Union
17
17
 
18
- from confluent_kafka.admin import AdminClient
18
+ from confluent_kafka.admin import AdminClient, KafkaException
19
19
  from confluent_kafka.avro import AvroConsumer
20
20
  from confluent_kafka.schema_registry.schema_registry_client import SchemaRegistryClient
21
21
 
@@ -35,6 +35,21 @@ from metadata.utils.logger import ingestion_logger
35
35
  logger = ingestion_logger()
36
36
 
37
37
 
38
+ class InvalidKafkaCreds(Exception):
39
+ """
40
+ Class to indicate invalid kafka credentials exception
41
+ """
42
+
43
+
44
+ class SchemaRegistryException(Exception):
45
+ """
46
+ Class to indicate invalid schema registry not initialized
47
+ """
48
+
49
+
50
+ TIMEOUT_SECONDS = 10
51
+
52
+
38
53
  @dataclass
39
54
  class KafkaClient:
40
55
  def __init__(self, admin_client, schema_registry_client, consumer_client) -> None:
@@ -60,6 +75,14 @@ def get_connection(
60
75
  if connection.saslMechanism:
61
76
  connection.consumerConfig["sasl.mechanism"] = connection.saslMechanism.value
62
77
 
78
+ if (
79
+ connection.consumerConfig.get("security.protocol") is None
80
+ and connection.securityProtocol
81
+ ):
82
+ connection.consumerConfig[
83
+ "security.protocol"
84
+ ] = connection.securityProtocol.value
85
+
63
86
  if connection.basicAuthUserInfo:
64
87
  connection.schemaRegistryConfig = connection.schemaRegistryConfig or {}
65
88
  connection.schemaRegistryConfig[
@@ -109,9 +132,27 @@ def test_connection(
109
132
  """
110
133
 
111
134
  def custom_executor():
112
- _ = client.admin_client.list_topics().topics
113
-
114
- test_fn = {"GetTopics": custom_executor}
135
+ try:
136
+ client.admin_client.list_topics(timeout=TIMEOUT_SECONDS).topics
137
+ except KafkaException as err:
138
+ raise InvalidKafkaCreds(
139
+ f"Failed to fetch topics due to: {err}. "
140
+ "Please validate credentials and check if you are using correct security protocol"
141
+ )
142
+
143
+ def schema_registry_test():
144
+ if client.schema_registry_client:
145
+ client.schema_registry_client.get_subjects()
146
+ else:
147
+ raise SchemaRegistryException(
148
+ "Schema Registry not initialized, please provide schema registry "
149
+ "credentials in case you want topic schema and sample data to be ingested"
150
+ )
151
+
152
+ test_fn = {
153
+ "GetTopics": custom_executor,
154
+ "CheckSchemaRegistry": schema_registry_test,
155
+ }
115
156
 
116
157
  test_connection_steps(
117
158
  metadata=metadata,
@@ -24,6 +24,9 @@ from metadata.generated.schema.entity.data.mlmodel import (
24
24
  from metadata.generated.schema.entity.services.connections.mlmodel.sageMakerConnection import (
25
25
  SageMakerConnection,
26
26
  )
27
+ from metadata.generated.schema.entity.services.ingestionPipelines.status import (
28
+ StackTraceError,
29
+ )
27
30
  from metadata.generated.schema.metadataIngestion.workflow import (
28
31
  Source as WorkflowSource,
29
32
  )
@@ -128,14 +131,23 @@ class SagemakerSource(MlModelServiceSource):
128
131
  """
129
132
  Prepare the Request model
130
133
  """
131
- mlmodel_request = CreateMlModelRequest(
132
- name=model.name,
133
- algorithm=self._get_algorithm(), # Setting this to a constant
134
- mlStore=self._get_ml_store(model.name),
135
- service=self.context.mlmodel_service,
136
- )
137
- yield mlmodel_request
138
- self.register_record(mlmodel_request=mlmodel_request)
134
+ try:
135
+ mlmodel_request = CreateMlModelRequest(
136
+ name=model.name,
137
+ algorithm=self._get_algorithm(), # Setting this to a constant
138
+ mlStore=self._get_ml_store(model.name),
139
+ service=self.context.mlmodel_service,
140
+ )
141
+ yield Either(right=mlmodel_request)
142
+ self.register_record(mlmodel_request=mlmodel_request)
143
+ except Exception as exc: # pylint: disable=broad-except
144
+ yield Either(
145
+ left=StackTraceError(
146
+ name=model.name,
147
+ error=f"Error creating mlmodel: {exc}",
148
+ stackTrace=traceback.format_exc(),
149
+ )
150
+ )
139
151
 
140
152
  def _get_ml_store( # pylint: disable=arguments-differ
141
153
  self,
@@ -131,7 +131,6 @@ class SplineSource(PipelineServiceSource):
131
131
  return None
132
132
 
133
133
  def _get_table_from_datasource_name(self, datasource: str) -> Optional[Table]:
134
-
135
134
  if (
136
135
  not datasource
137
136
  and not datasource.startswith("dbfs")
@@ -111,7 +111,6 @@ class ElasticsearchSource(SearchServiceSource):
111
111
  Method to Get Sample Data of Search Index Entity
112
112
  """
113
113
  if self.source_config.includeSampleData and self.context.search_index:
114
-
115
114
  sample_data = self.client.search(
116
115
  index=self.context.search_index,
117
116
  q=WILDCARD_SEARCH,
@@ -14,8 +14,6 @@ Base class for ingesting Object Storage services
14
14
  from abc import ABC, abstractmethod
15
15
  from typing import Any, Iterable, List, Optional, Set
16
16
 
17
- from pandas import DataFrame
18
-
19
17
  from metadata.generated.schema.api.data.createContainer import CreateContainerRequest
20
18
  from metadata.generated.schema.entity.data.container import Container
21
19
  from metadata.generated.schema.entity.services.storageService import (
@@ -53,7 +51,10 @@ from metadata.readers.dataframe.models import DatalakeTableSchemaWrapper
53
51
  from metadata.readers.dataframe.reader_factory import SupportedTypes
54
52
  from metadata.readers.models import ConfigSource
55
53
  from metadata.utils import fqn
56
- from metadata.utils.datalake.datalake_utils import fetch_dataframe, get_columns
54
+ from metadata.utils.datalake.datalake_utils import (
55
+ DataFrameColumnParser,
56
+ fetch_dataframe,
57
+ )
57
58
  from metadata.utils.logger import ingestion_logger
58
59
  from metadata.utils.storage_metadata_config import (
59
60
  StorageMetadataConfigException,
@@ -67,7 +68,6 @@ OPENMETADATA_TEMPLATE_FILE_NAME = "openmetadata.json"
67
68
 
68
69
 
69
70
  class StorageServiceTopology(ServiceTopology):
70
-
71
71
  root = TopologyNode(
72
72
  producer="get_services",
73
73
  stages=[
@@ -271,10 +271,10 @@ class StorageServiceSource(TopologyRunnerMixin, Source, ABC):
271
271
  ),
272
272
  )
273
273
  columns = []
274
- if isinstance(data_structure_details, DataFrame):
275
- columns = get_columns(data_structure_details)
276
- if isinstance(data_structure_details, list) and data_structure_details:
277
- columns = get_columns(data_structure_details[0])
274
+ column_parser = DataFrameColumnParser.create(
275
+ data_structure_details, SupportedTypes(metadata_entry.structureFormat)
276
+ )
277
+ columns = column_parser.get_columns()
278
278
  return columns
279
279
 
280
280
  def _get_columns(
@@ -34,7 +34,10 @@ from metadata.profiler.metrics.core import MetricTypes
34
34
  from metadata.profiler.metrics.registry import Metrics
35
35
  from metadata.readers.dataframe.models import DatalakeTableSchemaWrapper
36
36
  from metadata.utils.constants import COMPLEX_COLUMN_SEPARATOR, SAMPLE_DATA_DEFAULT_COUNT
37
- from metadata.utils.datalake.datalake_utils import fetch_col_types, fetch_dataframe
37
+ from metadata.utils.datalake.datalake_utils import (
38
+ GenericDataFrameColumnParser,
39
+ fetch_dataframe,
40
+ )
38
41
  from metadata.utils.logger import profiler_interface_registry_logger
39
42
  from metadata.utils.sqa_like_column import SQALikeColumn
40
43
 
@@ -411,7 +414,9 @@ class PandasProfilerInterface(ProfilerInterface, PandasInterfaceMixin):
411
414
  sqalike_columns.append(
412
415
  SQALikeColumn(
413
416
  column_name,
414
- fetch_col_types(self.complex_dataframe_sample[0], column_name),
417
+ GenericDataFrameColumnParser.fetch_col_types(
418
+ self.complex_dataframe_sample[0], column_name
419
+ ),
415
420
  )
416
421
  )
417
422
  return sqalike_columns
@@ -24,6 +24,9 @@ from metadata.generated.schema.entity.services.connections.database.databricksCo
24
24
  from metadata.generated.schema.entity.services.connections.database.datalakeConnection import (
25
25
  DatalakeConnection,
26
26
  )
27
+ from metadata.generated.schema.entity.services.connections.database.db2Connection import (
28
+ Db2Connection,
29
+ )
27
30
  from metadata.generated.schema.entity.services.connections.database.mariaDBConnection import (
28
31
  MariaDBConnection,
29
32
  )
@@ -50,6 +53,9 @@ from metadata.profiler.interface.sqlalchemy.bigquery.profiler_interface import (
50
53
  from metadata.profiler.interface.sqlalchemy.databricks.profiler_interface import (
51
54
  DatabricksProfilerInterface,
52
55
  )
56
+ from metadata.profiler.interface.sqlalchemy.db2.profiler_interface import (
57
+ DB2ProfilerInterface,
58
+ )
53
59
  from metadata.profiler.interface.sqlalchemy.mariadb.profiler_interface import (
54
60
  MariaDBProfilerInterface,
55
61
  )
@@ -111,6 +117,7 @@ profilers = {
111
117
  TrinoConnection.__name__: TrinoProfilerInterface,
112
118
  UnityCatalogConnection.__name__: UnityCatalogProfilerInterface,
113
119
  DatabricksConnection.__name__: DatabricksProfilerInterface,
120
+ Db2Connection.__name__: DB2ProfilerInterface,
114
121
  }
115
122
 
116
123
  profiler_interface_factory.register_many(profilers)
@@ -0,0 +1,38 @@
1
+ # Copyright 2021 Collate
2
+ # Licensed under the Apache License, Version 2.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
+ # http://www.apache.org/licenses/LICENSE-2.0
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
+ """
13
+ Interfaces with database for all database engine
14
+ supporting sqlalchemy abstraction layer
15
+ """
16
+
17
+ from metadata.profiler.interface.sqlalchemy.profiler_interface import (
18
+ SQAProfilerInterface,
19
+ )
20
+ from metadata.utils.logger import profiler_interface_registry_logger
21
+
22
+ logger = profiler_interface_registry_logger()
23
+
24
+
25
+ class DB2ProfilerInterface(SQAProfilerInterface):
26
+ """
27
+ Interface to interact with registry supporting
28
+ sqlalchemy.
29
+ """
30
+
31
+ def _programming_error_static_metric(self, runner, column, exc, session, metrics):
32
+ # pylint: disable=protected-access
33
+ if exc.orig and "overflow" in exc.orig._message:
34
+ logger.info(
35
+ f"Computing metrics without sum for {runner.table.__tablename__}.{column.name}"
36
+ )
37
+ return self._compute_static_metrics_wo_sum(metrics, runner, session, column)
38
+ return None
@@ -23,7 +23,7 @@ from datetime import datetime, timezone
23
23
  from typing import Dict, List, Optional
24
24
 
25
25
  from sqlalchemy import Column, inspect, text
26
- from sqlalchemy.exc import ProgrammingError, ResourceClosedError
26
+ from sqlalchemy.exc import DBAPIError, ProgrammingError, ResourceClosedError
27
27
  from sqlalchemy.orm import scoped_session
28
28
 
29
29
  from metadata.generated.schema.entity.data.table import CustomMetricProfile, TableData
@@ -230,7 +230,7 @@ class SQAProfilerInterface(ProfilerInterface, SQAInterfaceMixin):
230
230
  ],
231
231
  )
232
232
  return dict(row)
233
- except ProgrammingError as exc:
233
+ except (ProgrammingError, DBAPIError) as exc:
234
234
  return self._programming_error_static_metric(
235
235
  runner, column, exc, session, metrics
236
236
  )
@@ -579,9 +579,7 @@ class SQAProfilerInterface(ProfilerInterface, SQAInterfaceMixin):
579
579
  """
580
580
  Override Programming Error for Static Metrics
581
581
  """
582
- logger.error(
583
- f"Skipping metrics due to {exc} for {runner.table.__tablename__}.{column.name}"
584
- )
582
+ raise exc
585
583
 
586
584
  def get_columns(self):
587
585
  """get columns from entity"""
@@ -30,6 +30,7 @@ from metadata.utils.logger import profiler_logger
30
30
 
31
31
  logger = profiler_logger()
32
32
 
33
+
33
34
  # pylint: disable=too-many-locals
34
35
  class Histogram(HybridMetric):
35
36
  """
@@ -48,6 +48,7 @@ def _(*_, **__):
48
48
 
49
49
  @compiles(ConnTestFn, Dialects.Db2)
50
50
  @compiles(ConnTestFn, Dialects.IbmDbSa)
51
+ @compiles(ConnTestFn, Dialects.Ibmi)
51
52
  def _(*_, **__):
52
53
  return "SELECT 42 FROM SYSIBM.SYSDUMMY1;"
53
54
 
@@ -40,6 +40,7 @@ def _(element, compiler, **kw):
40
40
 
41
41
 
42
42
  @compiles(SumFn, Dialects.BigQuery)
43
+ @compiles(SumFn, Dialects.Postgres)
43
44
  def _(element, compiler, **kw):
44
45
  """Handle case where column type is INTEGER but SUM returns a NUMBER"""
45
46
  proc = compiler.process(element.clauses, **kw)
@@ -126,7 +126,6 @@ class AbstractTableMetricComputer(ABC):
126
126
  table: Table,
127
127
  where_clause: Optional[List[ColumnOperators]] = None,
128
128
  ):
129
-
130
129
  query = select(*columns).select_from(table)
131
130
  if where_clause:
132
131
  query = query.where(*where_clause)
@@ -64,6 +64,7 @@ class Dialects(Enum):
64
64
  Hive = "hive"
65
65
  Impala = "impala"
66
66
  IbmDbSa = "ibm_db_sa"
67
+ Ibmi = "ibmi"
67
68
  MariaDB = "mariadb"
68
69
  MSSQL = "mssql"
69
70
  MySQL = "mysql"
@@ -53,7 +53,7 @@ from metadata.profiler.metrics.static.row_count import RowCount
53
53
  from metadata.profiler.orm.registry import NOT_COMPUTE
54
54
  from metadata.profiler.processor.sample_data_handler import upload_sample_data
55
55
  from metadata.utils.constants import SAMPLE_DATA_DEFAULT_COUNT
56
- from metadata.utils.helpers import calculate_execution_time
56
+ from metadata.utils.execution_time_tracker import calculate_execution_time
57
57
  from metadata.utils.logger import profiler_logger
58
58
 
59
59
  logger = profiler_logger()
@@ -550,7 +550,7 @@ class Profiler(Generic[TMetric]):
550
550
 
551
551
  return table_profile
552
552
 
553
- @calculate_execution_time
553
+ @calculate_execution_time(store=False)
554
554
  def generate_sample_data(self) -> Optional[TableData]:
555
555
  """Fetch and ingest sample data
556
556
 
@@ -40,7 +40,6 @@ class ProfilerProcessor(Processor):
40
40
  """
41
41
 
42
42
  def __init__(self, config: OpenMetadataWorkflowConfig):
43
-
44
43
  super().__init__()
45
44
 
46
45
  self.config = config
@@ -56,7 +55,6 @@ class ProfilerProcessor(Processor):
56
55
  return "Profiler"
57
56
 
58
57
  def _run(self, record: ProfilerSourceAndEntity) -> Either[ProfilerResponse]:
59
-
60
58
  profiler_runner: Profiler = record.profiler_source.get_profiler_runner(
61
59
  record.entity, self.profiler_config
62
60
  )
@@ -11,7 +11,7 @@
11
11
  """
12
12
  Profiler Processor Step
13
13
  """
14
-
14
+ import json
15
15
  import traceback
16
16
  from datetime import datetime
17
17
  from functools import singledispatch
@@ -48,7 +48,11 @@ def upload_sample_data(data: TableData, profiler_interface: ProfilerInterface) -
48
48
  sample_storage_config = profiler_interface.storage_config
49
49
  if not sample_storage_config:
50
50
  return
51
- df = pd.DataFrame(data=data.rows, columns=[i.__root__ for i in data.columns])
51
+ deserialized_data = json.loads(data.json())
52
+ df = pd.DataFrame(
53
+ data=deserialized_data.get("rows", []),
54
+ columns=[i.__root__ for i in data.columns],
55
+ )
52
56
  pq_buffer = BytesIO()
53
57
  df.to_parquet(pq_buffer)
54
58
  object_key = _get_object_key(
@@ -217,7 +217,6 @@ class ProfilerSource(ProfilerSourceInterface):
217
217
  def _get_context_entities(
218
218
  self, entity: Table
219
219
  ) -> Tuple[DatabaseSchema, Database, DatabaseService]:
220
-
221
220
  schema_entity = None
222
221
  database_entity = None
223
222
  db_service = None
@@ -29,7 +29,6 @@ def bigquery_type_mapper(_type_map: dict, col: Column):
29
29
  from sqlalchemy_bigquery import STRUCT
30
30
 
31
31
  def build_struct(_type_map: dict, col: Column):
32
-
33
32
  structs = []
34
33
  for child in col.children:
35
34
  if child.dataType != DataType.STRUCT:
@@ -35,7 +35,6 @@ class ApiReader(Reader, ABC):
35
35
  """
36
36
 
37
37
  def __init__(self, credentials: ReadersCredentials):
38
-
39
38
  self._auth_headers = None
40
39
  self.credentials = credentials
41
40