Member since
09-29-2015
871
Posts
723
Kudos Received
255
Solutions
My Accepted Solutions
| Title | Views | Posted |
|---|---|---|
| 4248 | 12-03-2018 02:26 PM | |
| 3189 | 10-16-2018 01:37 PM | |
| 4301 | 10-03-2018 06:34 PM | |
| 3158 | 09-05-2018 07:44 PM | |
| 2408 | 09-05-2018 07:31 PM |
12-08-2017
02:02 PM
What types of changes do you need to make to the data? You can use ConvertRecord with an AvroReader and a CsvWriter in order to convert from Avro to CSV. You can use UpdateRecord before or after that to update the records.
... View more
12-07-2017
08:54 PM
You could setup ListFile processor to periodically monitor the directory, and send the listings to an ExecuteCommand processor. The command to execute would be ./yourBinary ${path}/${filename}" The path and filename variables come from the flow files produced by ListFile.
... View more
12-07-2017
08:46 PM
1 Kudo
Hello, Here is a presentation with some more details about record processing: https://www.slideshare.net/BryanBende/apache-nifi-record-processing The main reason record processing achieves good performance is because it allows you to keep all your records together in a single flow file, rather than splitting into a million flow files with 1 record per flow file. It sounds like you were already keeping your 1M records together in a single flow file, so if you got out of memory exceptions, the most likely reason is because you may have loaded the entire content of the flow file into memory (or the library you are using may have). For large files you want to stream data in and out so that you never have the whole content in memory, this is how ConvertRecord works... It reads one record from reader, then passes that record to the writer, then repeats the process, so there is never more than 1 record in memory at a time. These are the best examples of Scripted record reader/writer: https://github.com/apache/nifi/tree/master/nifi-nar-bundles/nifi-scripting-bundle/nifi-scripting-processors/src/test/groovy/org/apache/nifi/record/script
... View more
12-07-2017
08:38 PM
You should be able to do exactly what you showed with ${gender} as long as your incoming flow files have an attribute called gender. You would have to create that attribute before QueryRecord by using UpdateAttribute or by using a processor that extracts something from the content of the flow into an attribute called gender.
... View more
12-01-2017
12:27 PM
Can you show a sample JSON document you are sending to the processor?
... View more
11-30-2017
02:58 PM
1 Kudo
There currently isn't a processor to do this, but there is an open pull request to add one: https://github.com/apache/nifi/pull/2294
... View more
11-29-2017
02:50 PM
Would also be helpful if you could provide the schema you created for your example data.
... View more
11-29-2017
02:38 PM
Can you look in nifi-app.log and find the full stacktrace and error that you are seeing in the UI and provide it here?
... View more
11-29-2017
02:36 PM
2 Kudos
If you want to use ${id} as your cache entry identifier, then you need a flow file attribute called id. You could use EvaluateJsonPath first with an expression of id = $.id to extract the id from the json into an attribute.
... View more
11-28-2017
09:11 PM
According to that documentation you linked to, your date has to be in one of the formats they listed. You formatted it with -HH at the end, but none of them have that. The closest one looks like yyyy-mm-dd HH:mm So ${csvfiledate:toDate("yyyyMMddHH","GMT"):format("yyyy-MM-dd HH:mm")} would probably work.
... View more