You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Tomasz Korniszuk (Jira)" <ji...@apache.org> on 2025/06/16 19:02:00 UTC

[jira] [Assigned] (NIFI-14488) Alternative to ConvertJSONToSQL after deprecation in NiFi 2.3.0 for HANA databases

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

Tomasz Korniszuk reassigned NIFI-14488:
---------------------------------------

    Assignee: Tomasz Korniszuk

> Alternative to ConvertJSONToSQL after deprecation in NiFi 2.3.0 for HANA databases
> ----------------------------------------------------------------------------------
>
>                 Key: NIFI-14488
>                 URL: https://issues.apache.org/jira/browse/NIFI-14488
>             Project: Apache NiFi
>          Issue Type: Wish
>          Components: NiFi Stateless
>    Affects Versions: 2.3.0
>            Reporter: Salvatore Vignera
>            Assignee: Tomasz Korniszuk
>            Priority: Critical
>              Labels: ConvertJSONToSQL
>
> *+ENGLISH+*
> Since the deprecation of the *ConvertJSONToSQL* processor in {*}Apache NiFi 2.3.0{*}, I’m missing a key functionality that allowed me to efficiently write data to a {*}HANA database{*}.
> While the old processor didn’t support native *UPSERT* operations, it was able to automatically retrieve the {*}table definition from the database{*}. Based on this metadata, it generated a complete {*}SQL INSERT statement{*}, which I could then manually extend to a HANA-compatible UPSERT. This was an extremely helpful foundation for working dynamically and independently of specific tables.
> With the current alternatives (e.g. {*}PutDatabaseRecord{*}), this exact capability is missing: the schema of the target table must be defined manually or retrieved outside of NiFi. For dynamic flows involving frequently changing tables, this is very inconvenient.
> {*}My suggestion for improvement{*}:
> It would be extremely helpful if a new or existing processor could be enhanced with the ability to *automatically read the target table’s definition* from the database – ideally with the following options:
>  * Automatic mapping of JSON fields to table columns (similar to ConvertJSONToSQL)
>  * Optional generation of a base INSERT statement (e.g. as a FlowFile attribute or SQL text)
>  * Possibility for downstream customization, such as UPSERT logic or HANA-specific SQL dialects
> Thank you for continuing to develop and support the platform!
>  
> ====================================================================================
> +*GERMAN*+
> Seit der Deprecation des Prozessors {{ConvertJSONToSQL}} in Apache NiFi 2.3.0 fehlt mir eine zentrale Funktionalität, um weiterhin effizient Daten in eine HANA-Datenbank zu schreiben.
> Zwar hat der alte Prozessor kein natives UPSERT unterstützt, jedoch konnte ich damit die Tabellendefinition direkt aus der Datenbank auslesen lassen. Auf Basis dieser Metadaten wurde ein vollständiges SQL-INSERT-Statement erzeugt - das ich dann manuell zu einem HANA-kompatiblen UPSERT erweitert habe. Das war eine sehr hilfreiche Grundlage, um dynamisch und tabellenunabhängig zu arbeiten.
> Mit den aktuellen Alternativen (z. B. {{{}PutDatabaseRecord{}}}) fehlt genau diese Möglichkeit: Das Schema der Zieltabelle muss manuell definiert oder außerhalb von NiFi ermittelt werden. Für dynamische Flows mit häufig wechselnden Tabellen ist das sehr unpraktisch.
> *Mein Verbesserungsvorschlag:* Es wäre äußerst hilfreich, wenn ein neuer oder bestehender Prozessor die Möglichkeit bekäme, die Tabellendefinition einer Zieltabelle automatisch aus der Datenbank auszulesen - idealerweise mit folgenden Optionen:
>  * Automatisches Mapping der JSON-Felder auf die Tabellenspalten (analog zu {{{}ConvertJSONToSQL{}}}).
>  * Optionales Generieren eines Basis-INSERT-Statements (ggf. als FlowFile-Attribut oder SQL-Text).
>  * Möglichkeit zur nachgelagerten Anpassung, z. B. für UPSERT oder HANA-spezifische SQL-Dialekte.
> Vielen Dank für die Weiterentwicklung und euren Einsatz für die Plattform!
>  
>  



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