<filename>bootstrap/engines/storm/components/sinks/jdbc-sink-topology-component.json<gh_stars>0
{
  "type": "SINK",
  "name": "JDBC",
  "subType": "JDBC",
  "builtin": true,
  "engine": "STORM",
  "template": ["Blank"],
  "transformationClass": "com.hortonworks.streamline.streams.layout.storm.JDBCBoltFluxComponent",
  "mavenDeps": "org.apache.storm:storm-jdbc:STORM_VERSION",
  "input": true,
  "output": false,
  "topologyComponentUISpecification": {
    "fields": [
      {
        "uiName": "Maven Artifacts",
        "fieldName": "mavenArtifacts",
        "isOptional": true,
        "tooltip": "The maven artifacts to load driver. You can use ',' to separate multiple artifacts and '^' to exclude some transitive artifacts. E.g. mysql:mysql-connector-java:5.1.34",
        "type": "string"
      },
      {
        "uiName": "Database Type",
        "fieldName": "dbType",
        "isOptional": false,
        "tooltip": "The type of target database.",
        "type": "enumstring",
        "options": [
          "mysql",
          "postgresql",
          "phoenix"
        ]
      },
      {
        "uiName": "Driver class name",
        "fieldName": "driverClassName",
        "isOptional": false,
        "tooltip": "The driver class name. E.g. com.mysql.jdbc.Driver",
        "type": "string"
      },
      {
        "uiName": "JDBC Url",
        "fieldName": "jdbcUrl",
        "isOptional": false,
        "tooltip": "JDBC Url, E.g. jdbc:mysql://localhost:3306/test",
        "type": "string"
      },
      {
        "uiName": "Username",
        "fieldName": "username",
        "isOptional": false,
        "tooltip": "Database username",
        "type": "string"
      },
      {
        "uiName": "Password",
        "fieldName": "password",
        "isOptional": false,
        "tooltip": "Database password",
        "type": "string",
        "hint": "password"
      },
      {
        "uiName": "Table name",
        "fieldName": "tableName",
        "isOptional": false,
        "tooltip": "The table name",
        "type": "string"
      },
      {
        "uiName":"Column names",
        "fieldName": "columns",
        "tooltip": "The names of the database columns",
        "isOptional": false,
        "type": "array.enumstring",
        "options": [],
        "hint": "inputFields,noNestedFields"
      },
      {
        "uiName": "Parallelism",
        "fieldName": "parallelism",
        "isOptional": true,
        "tooltip": "Parallelism hint",
        "type": "number",
        "defaultValue": 1,
        "min": 1,
        "hint": "hidden"
      }
    ]
  }
}
