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)