mirror of
				https://github.com/datahub-project/datahub.git
				synced 2025-10-31 10:49:00 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			75 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Redash
 | |
| 
 | |
| For context on getting started with ingestion, check out our [metadata ingestion guide](../README.md).
 | |
| 
 | |
| ## Setup
 | |
| 
 | |
| To install this plugin, run `pip install 'acryl-datahub[redash]'`.
 | |
| 
 | |
| ## Capabilities
 | |
| 
 | |
| This plugin extracts the following:
 | |
| 
 | |
| - Redash dashboards and queries/visualization
 | |
| - Redash chart table lineages (disabled by default)
 | |
| 
 | |
| ## Quickstart recipe
 | |
| 
 | |
| Check out the following recipe to get started with ingestion! See [below](#config-details) for full configuration options.
 | |
| 
 | |
| For general pointers on writing and running a recipe, see our [main recipe guide](../README.md#recipes).
 | |
| 
 | |
| ```yml
 | |
| source:
 | |
|   type: "redash"
 | |
|   config:
 | |
|     connect_uri: http://localhost:5000/
 | |
|     api_key: REDASH_API_KEY
 | |
| 
 | |
|     # Optionals
 | |
|     # api_page_limit: 1 #default: None, no limit on ingested dashboards and charts API pagination
 | |
|     # skip_draft: true  #default: true, only ingest published dashboards and charts
 | |
|     # dashboard_patterns:
 | |
|     #   deny:
 | |
|     #     - ^denied dashboard.*
 | |
|     #   allow:
 | |
|     #     - .*allowed dashboard.*
 | |
|     # chart_patterns:
 | |
|     #   deny:
 | |
|     #     - ^denied chart.*
 | |
|     #   allow:
 | |
|     #     - .*allowed chart.*
 | |
|     # parse_table_names_from_sql: false
 | |
| ```
 | |
| 
 | |
| ## Config details
 | |
| 
 | |
| Note that a `.` is used to denote nested fields in the YAML recipe.
 | |
| 
 | |
| | Field                         | Required | Default                | Description                                                      |
 | |
| | ----------------------------- | -------- | ---------------------- | ---------------------------------------------------------------- |
 | |
| | `connect_uri`                 | ✅       | http://localhost:5000/ | Redash base URL.                                                 |
 | |
| | `api_key`                     | ✅       |                        | Redash user API key.                                             |
 | |
| | `api_page_limit`              |          | `None`                 | Limit on ingested dashboards and charts API pagination.          |
 | |
| | `skip_draft`                  |          | `true`                 | Only ingest published dashboards and charts.                     |
 | |
| | `dashboard_patterns.allow`    |          |                        | List of regex patterns for dashboards to include in ingestion.   |
 | |
| | `dashboard_patterns.deny`     |          |                        | List of regex patterns for dashboards to exclude from ingestion. |
 | |
| | `chart_patterns.allow`        |          |                        | List of regex patterns for charts to include in ingestion.       |
 | |
| | `chart_patterns.deny`         |          |                        | List of regex patterns for charts to exclude from ingestion.     |
 | |
| | `env`                         |          | `"PROD"`               | Environment to use in namespace when constructing URNs.          |
 | |
| | `parse_table_names_from_sql`  |          | `false`                | See note below.                                                  |
 | |
| 
 | |
| Note! The integration can use an SQL parser to try to parse the tables the chart depends on. This parsing is disabled by default, 
 | |
| but can be enabled by setting `parse_table_names_from_sql: true`.  The default parser is based on the [`sqllineage`](https://pypi.org/project/sqllineage/) package.
 | |
| As this package doesn't officially support all the SQL dialects that Redash supports, the result might not be correct. You can, however, implement a
 | |
| custom parser and take it into use by setting the `sql_parser` configuration value. A custom SQL parser must inherit from `datahub.utilities.sql_parser.SQLParser`
 | |
| and must be made available to Datahub by ,for example, installing it. The configuration then needs to be set to `module_name.ClassName` of the parser.
 | |
| 
 | |
| ## Compatibility
 | |
| 
 | |
| Coming soon!
 | |
| 
 | |
| ## Questions
 | |
| 
 | |
| If you've got any questions on configuring this source, feel free to ping us on [our Slack](https://slack.datahubproject.io/)!
 | 
