All Downloads are FREE. Search and download functionalities are using the official Maven repository.

json.schema.metadataIngestion.databaseServiceMetadataPipeline.json Maven / Gradle / Ivy

There is a newer version: 1.6.0-rc1
Show newest version
{
  "$id": "https://open-metadata.org/schema/metadataIngestion/databaseServiceMetadataPipeline.json",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "DatabaseServiceMetadataPipeline",
  "description": "DatabaseService Metadata Pipeline Configuration.",
  "type": "object",
  "javaType": "org.openmetadata.schema.metadataIngestion.DatabaseServiceMetadataPipeline",
  "definitions": {
    "databaseMetadataConfigType": {
      "description": "Database Source Config Metadata Pipeline type",
      "type": "string",
      "enum": ["DatabaseMetadata"],
      "default": "DatabaseMetadata"
    },
    "incremental": {
      "description": "Use incremental Metadata extraction after the first execution. This is commonly done by getting the changes from Audit tables on the supporting databases.",
      "type": "object",
      "title": "Incremental Metadata Extraction Configuration",
      "properties": {
        "enabled": {
          "description": "If True, enables Metadata Extraction to be incremental",
          "type": "boolean",
          "default": false,
          "title": "Enabled"
        },
        "lookbackDays": {
          "description": "Number os days to search back for a successful pipeline run. The timestamp of the last found successful pipeline run will be used as a base to search for updated entities.",
          "type": "integer",
          "default": 7,
          "title": "Successful Pipeline Run Lookback Days"
        },
        "safetyMarginDays": {
          "description": "Number of days to add to the last successful pipeline run timestamp to search for updated entities.",
          "type": "integer",
          "default": 1,
          "title": "Safety Margin Days"
        }
      },
      "additionalProperties": false,
      "required": [
        "enabled"
      ]
    }
  },
  "properties": {
    "type": {
      "description": "Pipeline type",
      "$ref": "#/definitions/databaseMetadataConfigType",
      "default": "DatabaseMetadata"
    },
    "markDeletedTables": {
      "description": "This is an optional configuration for enabling soft deletion of tables. When this option is enabled, only tables that have been deleted from the source will be soft deleted, and this will apply solely to the schema that is currently being ingested via the pipeline. Any related entities such as test suites or lineage information that were associated with those tables will also be deleted.",
      "type": "boolean",
      "default": true,
      "title": "Mark Deleted Tables"
    },
    "markDeletedStoredProcedures": {
      "description": "Optional configuration to soft delete stored procedures in OpenMetadata if the source stored procedures are deleted. Also, if the stored procedures is deleted, all the associated entities like lineage, etc., with that stored procedures will be deleted",
      "type": "boolean",
      "default": true,
      "title": "Mark Deleted Stored Procedures"
    },
    "includeTables": {
      "description": "Optional configuration to turn off fetching metadata for tables.",
      "type": "boolean",
      "default": true,
      "title": "Include Tables"
    },
    "includeViews": {
      "description": "Optional configuration to turn off fetching metadata for views.",
      "type": "boolean",
      "default": true,
      "title": "Include Views"
    },
    "includeTags": {
      "description": "Optional configuration to toggle the tags ingestion.",
      "type": "boolean",
      "default": true,
      "title": "Include Tags"
    },
    "includeOwners":{
      "title": "Include Owners",
      "description": "Set the 'Include Owners' toggle to control whether to include owners to the ingested entity if the owner email matches with a user stored in the OM server as part of metadata ingestion. If the ingested entity already exists and has an owner, the owner will not be overwritten.",
      "type": "boolean",
      "default": false
    },
    "includeStoredProcedures": {
      "description": "Optional configuration to toggle the Stored Procedures ingestion.",
      "type": "boolean",
      "default": true,
      "title": "Include Stored Procedures"
    },
    "includeDDL": {
      "description": "Optional configuration to toggle the DDL Statements ingestion.",
      "type": "boolean",
      "default": false,
      "title": "Include DDL Statements"
    },
    "overrideMetadata":{
      "title": "Override Metadata",
      "description": "Set the 'Override Metadata' toggle to control whether to override the existing metadata in the OpenMetadata server with the metadata fetched from the source. If the toggle is set to true, the metadata fetched from the source will override the existing metadata in the OpenMetadata server. If the toggle is set to false, the metadata fetched from the source will not override the existing metadata in the OpenMetadata server. This is applicable for fields like description, tags, owner and displayName",
      "type": "boolean",
      "default": false
    },
    "queryLogDuration": {
      "description": "Configuration to tune how far we want to look back in query logs to process Stored Procedures results.",
      "type": "integer",
      "default": 1,
      "title": "Query Log Duration"
    },
    "queryParsingTimeoutLimit": {
      "description": "Configuration to set the timeout for parsing the query in seconds.",
      "type": "integer",
      "default": 300,
      "title": "Query Parsing Timeout Limit"
    },
    "useFqnForFiltering": {
      "description": "Regex will be applied on fully qualified name (e.g service_name.db_name.schema_name.table_name) instead of raw name (e.g. table_name)",
      "type": "boolean",
      "default": false,
      "title": "Use FQN For Filtering"
    },
    "schemaFilterPattern": {
      "description": "Regex to only fetch tables or databases that matches the pattern.",
      "$ref": "../type/filterPattern.json#/definitions/filterPattern",
      "title": "Schema Filter Pattern"
    },
    "tableFilterPattern": {
      "description": "Regex exclude tables or databases that matches the pattern.",
      "$ref": "../type/filterPattern.json#/definitions/filterPattern",
      "title": "Table Filter Pattern"
    },
    "databaseFilterPattern": {
      "description": "Regex to only fetch databases that matches the pattern.",
      "$ref": "../type/filterPattern.json#/definitions/filterPattern",
      "title": "Database Filter Pattern"
    },
    "threads": {
      "description": "Number of Threads to use in order to parallelize Table ingestion.",
      "type": "integer",
      "default": 1,
      "title": "Number of Threads"
    },
    "incremental": {
      "title": "Incremental Metadata Extraction Configuration",
      "description": "Use incremental Metadata extraction after the first execution. This is commonly done by getting the changes from Audit tables on the supporting databases.",
      "$ref": "#/definitions/incremental"
    }
  },
  "additionalProperties": false
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy