nifi | Apache NiFi is an easy to use , powerful , and reliable system

 by   apache Java Version: rel/nifi-1.22.0 License: Apache-2.0

kandi X-RAY | nifi Summary

kandi X-RAY | nifi Summary

nifi is a Java library typically used in Big Data applications. nifi has build file available, it has a Permissive License and it has medium support. However nifi has 2389 bugs and it has 55 vulnerabilities. You can download it from GitHub.

Apache NiFi is an easy to use, powerful, and reliable system to process and distribute data.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              nifi has a medium active ecosystem.
              It has 3824 star(s) with 2479 fork(s). There are 187 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              nifi has no issues reported. There are 20 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of nifi is rel/nifi-1.22.0

            kandi-Quality Quality

              OutlinedDot
              nifi has 2389 bugs (243 blocker, 29 critical, 616 major, 1501 minor) and 20860 code smells.

            kandi-Security Security

              nifi has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              OutlinedDot
              nifi code analysis shows 55 unresolved vulnerabilities (55 blocker, 0 critical, 0 major, 0 minor).
              There are 346 security hotspots that need review.

            kandi-License License

              nifi is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              nifi releases are not available. You will need to build from source code and install.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi has reviewed nifi and discovered the below as its top functions. This is intended to give you an instant insight into nifi implemented functionality, and help decide if they suit your requirements.
            • Builds the function evaluator .
            • Convert an object to an orc object .
            • Instantiate the controller services .
            • Merge the given list of journal files .
            • Method to copy the contents of the snippets
            • Builds a path segment from a tree .
            • Output events from the binlog queue .
            • Gets the content .
            • Create Nifi metrics registry .
            • Creates the NIFI keystores and trust stores them .
            Get all kandi verified functions for this library.

            nifi Key Features

            No Key Features are available at this moment for nifi.

            nifi Examples and Code Snippets

            No Code Snippets are available at this moment for nifi.

            Community Discussions

            QUESTION

            JOLT to split JSON into smaller parts - update 2021/06/08
            Asked 2021-Jun-13 at 20:38

            I'm getting some data in Nifi that collects JSON but the table that it needs to be inserted in has a different format.

            I'm having trouble to deconstruct a JSON structure into smaller pieces - getting stuck with the second what seems like a two or three-part shift. Any ideas to get me to the next step?

            Original JSON:

            ...

            ANSWER

            Answered 2021-Jun-13 at 20:38
             [
                  {
                    "operation": "shift",
                    "spec": {
                      "*": {
                        "timestamp": "[&1].timestamp",
                        "inverterId": "[&1].inverterId",
                        "systemKey": "[&1].systemKey",
                        "I_DC*_*": "[&1].&"
                      }
                    }
                  }, {
                    "operation": "shift",
                    "spec": {
                      "*": {
                        "timestamp": "[&1].timestamp",
                        "inverterId": "[&1].inverterId",
                        "systemKey": "[&1].systemKey",
                        "*": "[&1].keysToPivot.&"
                      }
                    }
                  },
                  {
                    "operation": "shift",
                    "spec": {
                      "*": {
                        "keysToPivot": {
                          "*": {
                            "$": "[&3].[#2].stringId",
                            "@": "[&3].[#2].value",
                            "@(2,timestamp)": "[&3].[#2].timestamp",
                            "@(2,inverterId)": "[&3].[#2].inverterId",
                            "@(2,systemKey)": "[&3].[#2].systemKey"
                          }
                        }
                      }
                    }
                  }
                ]
            

            Source https://stackoverflow.com/questions/67838744

            QUESTION

            Apache NIFI custom processor gives error "cannot find suitable driver"
            Asked 2021-Jun-12 at 12:29

            I have created a nifi processor that is supposed to read something from a database and put the result in an attribute. The code is very trivial, just creating a simple JDBC connection.

            ...

            ANSWER

            Answered 2021-Jun-12 at 12:29

            If you're using the jdbc:mariadb: protocol, then you should use the MariaDB Connector/J, not the MySQL Connector/J driver. The MySQL Connector/J driver only knows about the jdbc:mysql: protocol.

            Or alternatively, if you want to continue to use MySQL Connector/J, then you should use protocol jdbc:mysql:. However, given MySQL and MariaDB are - I assume - diverging, it is better to use the driver specifically written for MariaDB.

            Source https://stackoverflow.com/questions/67948479

            QUESTION

            Nifi generates wrong column name for insert constraint
            Asked 2021-Jun-10 at 11:07

            I use Nife 1.13.2 for build ETL process between Oracle and PostgresQL.

            There is an ExecuteSQL processor for retrieving data from Oracle and a PutDatabaseRecord processor for inserting data to PostgresQL's table. In PostgresQL's processor there configured INSERT_IGNORE option. The name of key column in both tables is DOC_ID. But due to insert operation, from some reason, Nifi generate mistaken name of the column as it is seen from follow line: ON CONFLICT (DOCID) DO NOTHING

            Here is whole error:

            ...

            ANSWER

            Answered 2021-Jun-10 at 11:07

            OK, so it must be Translate Field Names -> False in PutDatabaseRecord:

            Source https://stackoverflow.com/questions/67917405

            QUESTION

            Jolt - Get values using a list of keys, alternatives to @(2,@)
            Asked 2021-Jun-08 at 15:54

            I need to create a JSON array in order to split it into several jobs with Nifi. The array needs to be created based on an existing array inside the JSON.

            Can't figure out how to dynamically create a reference to another object in the JSON. I want the reference "@(2,@)" to work, but this is not supported.

            INPUT

            ...

            ANSWER

            Answered 2021-Jun-08 at 15:50

            You can proceed one more step by adding "*" key to nest the current spec more while roaming by @(3,&) dynamically as this ampersand represents the incurred key values name and id such as

            Source https://stackoverflow.com/questions/67888557

            QUESTION

            Apache Nifi - Make Flow Definitions Portable by using relative paths
            Asked 2021-Jun-03 at 06:07

            I want to make Flow Definitions portable by replacing absolute file paths to relative in below items

            1. Script Path Property of all ExecuteScript Processors
            2. Database Driver Location(s) property of DBCPConnectionPool Controller Services
            3. Keystore Filename & Truststore Filename properties of StandardRestrictedSSLContextService Controller Services

            Questions:

            1. Is it possible to use Relative Paths in above items?
            2. Where does the root of relative path point to - nifi installation directory?
            3. What are best practices for managing paths in flow defitions?
            4. Any other best practices for making flow definitions portable

            EDIT: We're using parameters in Flow Definitions to make it easier to configure per environment. Currently we have a param to indicate Nifi root path. Te motive behind this question is to check if this param can eliminated entirely by using relative paths.

            ...

            ANSWER

            Answered 2021-Jun-02 at 15:23

            You can use relative paths if the property supports expression language. In your case script path, database driver locations support; however, keystore and truststore paths do not.

            For example, I am using relative script path for my ExecuteScripts to run them on macos , windows as well as linux with the same path

            Suppose your Nifi root is opt/nifi/nifi-current and you have groovy folder in the root and a FlowHandler.groovyin it. So your script path would be like below

            Source https://stackoverflow.com/questions/67806407

            QUESTION

            How to configure "Proxy user request" for NiFi CLI
            Asked 2021-Jun-02 at 20:53

            According to the documentation, one prerequisite for using NiFi CLI against a secured NiFi instance is to configure proxy user request for the node's identity (e.g. CN=localhost, OU=NIFI).

            https://nifi.apache.org/docs/nifi-docs/html/toolkit-guide.html#prerequisites-for-running-in-a-secure-environment

            I understand how to configure it through the NiFi web user interface. However, is it possible to do the same through scripting?

            The reason is that I am working on a NiFi installation script, and I would like to install NiFi and configure users/policies in one go if it is possible.

            Thank you!

            ...

            ANSWER

            Answered 2021-Jun-02 at 20:53

            If you are trying to use NiFi CLI to setup NiFi itself, then you're only real option is for NiFi CLI to perform operations as the Initial Admin identity.

            It then depends how NiFi is configured to perform authentication, meaning where is your initial admin identity coming from. Is it a DN from a client cert, a user in LDAP, a kerberos principal, etc?

            If it is a client cert, then you can just configure NiFi CLI to use that cert and it should work.

            If it is a LDAP user, then you need to have NiFi CLI use one of NiFi's server certs to proxy the LDAP user.

            Both of these scenarios are shown in the docs:

            https://nifi.apache.org/docs/nifi-docs/html/toolkit-guide.html#security-configuration

            Source https://stackoverflow.com/questions/67766806

            QUESTION

            Create a means to toggle on or off processors in nifi so files won't queue while processors are off
            Asked 2021-Jun-02 at 20:46

            In our dev enviroment in nifi we have a few logging options, for capturing debugging information if needed, which we usually want to have turned off, but which stay ready to be turned on if we need to debug something.

            I'm looking for a good way to toggle on and off this debugging. We can easily disable the processors, but then files build up in the queue behind them.

            What is the cleanest way to toggle off not just the processor but the queue in front of it so nothing is routed unless we want to debug?

            Ideally I'd prefer a way to turn on and off a few different logging processors spread out across our flows with a single toggle if such an option can be managed.

            ...

            ANSWER

            Answered 2021-Jun-02 at 20:46

            You can create a process group variable, or use parameters, to create a debug flag. Then put a RouteOnAttribute processor before each logging processor and making a routing decision based on the debug flag. If it is unmatched then auto-terminate the relationship so the flow files are just dropped.

            Source https://stackoverflow.com/questions/67806076

            QUESTION

            Kubernetes NiFi Cluster setup in AKS
            Asked 2021-May-21 at 08:58

            Thought to post this because it might help someone. I couldn't find Kubernetes NiFi setup without helm package, so I have prepared the below configuration YAML for Kubernetes NiFi Cluster setup.

            Here's the link for Zookeeper Cluster setup in AKS

            ...

            ANSWER

            Answered 2021-May-19 at 05:53

            Please comment if you see any issues anywhere in the configuration or if you would like to provide any suggestions. Increase disk storage configuration according to your usage.

            Source https://stackoverflow.com/questions/66488228

            QUESTION

            Joining two arrays in a json to one array in Nifi
            Asked 2021-May-20 at 06:15

            In Nifi, I have the following JSON:

            ...

            ANSWER

            Answered 2021-May-19 at 19:48

            You can add a JoltTransformJSON processor with a shift type transformation such as

            Source https://stackoverflow.com/questions/67608795

            QUESTION

            PKIX path building - NIFI is throwin an error when calling API via InvokeHTTP processor
            Asked 2021-May-20 at 02:04

            I am getting the below error in NIFI when I call an API which is hosted in another server. (source and destination are Linux servers)

            I need to add the server certificates in my current server to resolve this issue.

            Can anyone provide the step by step commands that I need to execute to resolve this issue?

            Nifi Log:

            ...

            ANSWER

            Answered 2021-May-12 at 16:48

            The InvokeHTTP in NiFi is a client of your API. This means that the InvokeHTTP needs to be able to trust your remote server to ensure it's not connecting to a malicious service. To do this, we need to add the Certificate Authority/Root Authority of the remote service to InvokeHTTP's truststore. The CA required will be shown in the 'Issuer' fields of the service's server certificate.

            To get the CA, you can follow this blog: https://daniel.haxx.se/blog/2018/11/07/get-the-ca-cert-for-curl/, and retrieve the CA into a pem file with:

            Source https://stackoverflow.com/questions/67482014

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install nifi

            Read through the quickstart guide for development. It will include information on getting a local copy of the source, give pointers on issue tracking, and provide some warnings about common problems with development environments. For a more comprehensive guide to development and information about contributing to the project read through the NiFi Developer's Guide.
            Run a full NiFi build (see above for instructions). Then from the minifi/ subdirectory, execute mvn -P docker clean install. This will run the full build, create a docker image based on it, and run docker-compose integration tests. After it completes successfully, you should have an apacheminifi:${minifi.version} image that can be started with the following command (replacing ${minifi.version} with the current maven version of your branch):

            Support

            If you have questions, you can reach out to our mailing list: dev@nifi.apache.org (archive). For more interactive discussions, community members can often be found in the following locations:. To submit a feature request or bug report, please file a Jira at https://issues.apache.org/jira/projects/NIFI/issues. If this is a security vulnerability report, please email security@nifi.apache.org directly and review the Apache NiFi Security Vulnerability Disclosure and Apache Software Foundation Security processes first.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/apache/nifi.git

          • CLI

            gh repo clone apache/nifi

          • sshUrl

            git@github.com:apache/nifi.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link