Superset
Module superset
This plugin extracts the following:
- Charts, dashboards, and associated metadata
See documentation for superset's /security/login at https://superset.apache.org/docs/rest-api for more details on superset's login api.
CLI based Ingestion
Install the Plugin
pip install 'acryl-datahub[superset]'
Starter Recipe
Check out the following recipe to get started with ingestion! See below for full configuration options.
For general pointers on writing and running a recipe, see our main recipe guide.
source:
  type: superset
  config:
    # Coordinates
    connect_uri: http://localhost:8088
    # Credentials
    username: user
    password: pass
    provider: ldap
sink:
  # sink configs
Config Details
- Options
- Schema
Note that a . is used to denote nested fields in the YAML recipe.
View All Configuration Options
| Field [Required] | Type | Description | Default | Notes | 
|---|---|---|---|---|
| connect_uri | string | Superset host URL. | http://localhost:8088 | |
| database_alias | map(str,string) | None | ||
| display_uri | string | optional URL to use in links (if connect_uriis only for ingestion) | None | |
| options | object | None | ||
| password | string | Superset password. | None | |
| provider | string | Superset provider. | db | |
| username | string | Superset username. | None | |
| env | string | Environment to use in namespace when constructing URNs | PROD | 
The JSONSchema for this configuration is inlined below.
{
  "title": "SupersetConfig",
  "type": "object",
  "properties": {
    "connect_uri": {
      "title": "Connect Uri",
      "description": "Superset host URL.",
      "default": "http://localhost:8088",
      "type": "string"
    },
    "display_uri": {
      "title": "Display Uri",
      "description": "optional URL to use in links (if `connect_uri` is only for ingestion)",
      "type": "string"
    },
    "username": {
      "title": "Username",
      "description": "Superset username.",
      "type": "string"
    },
    "password": {
      "title": "Password",
      "description": "Superset password.",
      "type": "string"
    },
    "provider": {
      "title": "Provider",
      "description": "Superset provider.",
      "default": "db",
      "type": "string"
    },
    "options": {
      "title": "Options",
      "default": {},
      "type": "object"
    },
    "env": {
      "title": "Env",
      "description": "Environment to use in namespace when constructing URNs",
      "default": "PROD",
      "type": "string"
    },
    "database_alias": {
      "title": "Database Alias",
      "description": "Can be used to change mapping for database names in superset to what you have in datahub",
      "default": {},
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "additionalProperties": false
}
If you were using database_alias in one of your other ingestions to rename your databases to something else based on business needs you can rename them in superset also
source:
  type: superset
  config:
    # Coordinates
    connect_uri: http://localhost:8088
    # Credentials
    username: user
    password: pass
    provider: ldap
    database_alias:
      example_name_1: business_name_1
      example_name_2: business_name_2
sink:
  # sink configs
Code Coordinates
- Class Name: datahub.ingestion.source.superset.SupersetSource
- Browse on GitHub
Questions
If you've got any questions on configuring ingestion for Superset, feel free to ping us on our Slack