[ 
https://issues.apache.org/jira/browse/NIFI-14129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-14129:
------------------------------------
    Issue Type: New Feature  (was: Improvement)

> Add Database Dialect Service
> ----------------------------
>
>                 Key: NIFI-14129
>                 URL: https://issues.apache.org/jira/browse/NIFI-14129
>             Project: Apache NiFi
>          Issue Type: New Feature
>          Components: Extensions
>            Reporter: David Handermann
>            Assignee: David Handermann
>            Priority: Major
>             Fix For: 2.2.0
>
>          Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> Several Processors in the standard bundle use the internal 
> {{DatabaseAdapter}} interface to delegate SQL statement generation for 
> specific vendors. Although the interface provides a layer of abstraction, it 
> requires code changes within the standard bundle and does not support 
> extension through external implementations. A new Controller Service 
> interface should be added that allows external extension for various database 
> dialects. This strategy enables Apache NiFi to continue supporting a core set 
> of database vendors while allowing third parties to create new 
> implementations.
> The new Database Dialect Service should provide a streamlined approach that 
> avoids some of the complexities of the current Database Adapter interface. 
> The Service interface should introduce a new Statement Type enumeration to 
> cover common types such as SELECT, CREATE, INSERT, and others. Service 
> methods should use the Statement Type enumeration instead of defining methods 
> for each type of supported or unsupported statement.
> To provide an incremental way forward, the Database Dialect Service should be 
> a new allowable value among the existing Database Types. With Database 
> Dialect Service selected as the Database Type, the Database Dialect Service 
> can be configured as regular Controller Service. This approach avoids 
> breaking changes to existing database processors and also allows for 
> incremental migration of existing implementations. After the initial 
> implementation is completed and existing adapters are migrated as part of 
> follow on work, then a separate issue can be considered to use property 
> migration methods.
> The initial implementation of the Database Dialect Service should support 
> generic ANSI SQL, analogous to the Generic Database Adapter. This will 
> provide a representative implementation, and subsequent issues can cover work 
> on vendor specific services.
> The Database Dialect Service interface should be defined in an API module and 
> included in the nifi-standard-services-api-nar as a common point of extension.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to