Support Questions

Find answers, ask questions, and share your expertise

Difference between Nifi QueryDatabaseTable and QueryDatabaseTableRecord

avatar
Expert Contributor

I have read the descriptions of both these two Nifi processors and I am unable to understand the difference. The description seems to be almost same for both. It will be nice if Nifi docs description provided some note on the difference. 

 

Main difference seems to be:

QueryDatabaseTable: Query result will be converted to Avro format.

QueryDatabaseTableRecord: Query result will be converted to the format specified by the record writer. So there is a separate Record Writer field in the properties.

 

1 ACCEPTED SOLUTION

avatar
Super Guru

Hi,

One of the main differences that I can see is that the QueryDatabaseTableRecord has a RecordWriter which allows you to to decide the format of the output (Json, xml, csv , parquet ...etc.) where a service need to be setup for the record writer depending on the format, while the QueryDatabaseTable will only provide an Avro format output without the need to setup any record writer service. This is similar to the case of  processors ExecuteSQL vs ExecuteSQLRecord. Another important difference I see is the QueryDatabaseTable  has property setting for "Transaction Isolation Level" while the other doesn't

If that helps please accept solution.

Thanks

 

View solution in original post

1 REPLY 1

avatar
Super Guru

Hi,

One of the main differences that I can see is that the QueryDatabaseTableRecord has a RecordWriter which allows you to to decide the format of the output (Json, xml, csv , parquet ...etc.) where a service need to be setup for the record writer depending on the format, while the QueryDatabaseTable will only provide an Avro format output without the need to setup any record writer service. This is similar to the case of  processors ExecuteSQL vs ExecuteSQLRecord. Another important difference I see is the QueryDatabaseTable  has property setting for "Transaction Isolation Level" while the other doesn't

If that helps please accept solution.

Thanks