← All courses

Training

Apache NiFi

Apache NiFi

Advanced 2-Day Course Outline

This is an advanced training session for Apache NiFi. Designed for experienced NiFi users, this course is crafted to delve into the intricate features and sophisticated capabilities of NiFi. Over the next two days, we will take your NiFi expertise to the next level, uncovering the platform's deeper functionalities and best practices.

Learning Outcomes

By the end of this advanced training, participants will:

  • Master advanced features and functionalities within Apache NiFi.
  • Understand and implement clustering and high availability for NiFi.
  • Optimize NiFi performance and troubleshoot complex issues.
  • Harness NiFi's scripting capabilities to extend its utility.
  • Develop custom processors and extensions.
  • Enhance NiFi security with best practices.

Prerequisites:

  • Proficient knowledge and hands-on experience with Apache NiFi.
  • Familiarity with NiFi's basic components such as
    • FlowFile,
    • Expression Language, and
    • Processors.
  • Good understanding of Java (for custom processor development).
  • A computer system with NiFi installed for hands-on sessions.
  • Working experience with linux
  • Working understanding of networking

Course Outline:

  1. Deep Dive into NiFi Architecture:
    1. Overview of NiFi's internal components.
    2. Understanding the NiFi dataflow hierarchy.
  2. NiFi Clustering and High Availability:
    1. Principles of NiFi clustering.
    2. Setting up a NiFi cluster.
    3. Load balancing in NiFi.
    4. Handling node failures and recovery strategies.
  3. Performance Optimization:
    1. Profiling and monitoring NiFi performance.
    2. Best practices for optimizing dataflows.
    3. Efficient resource utilization.
  4. Scripting in NiFi:
    1. Using ExecuteScript and InvokeScriptedProcessor.
    2. Scripting with languages like Groovy, Python, and JavaScript.
    3. Advanced data transformations using scripts.
  5. Developing Custom Processors and Extensions:
    1. Introduction to NiFi's processor development framework.
    2. Building, testing, and deploying custom processors.
    3. Developing custom Controller Services and Reporting Tasks.
  6. Advanced Security in NiFi:
    1. Deep dive into multi-tenant authorization.
    2. Configuring and managing secure data transfers.
    3. Handling sensitive properties and encrypted content.
    4. Setting up NiFi with external authentication providers.
  7. Troubleshooting and Best Practices:
    1. Diagnosing common issues in advanced NiFi deployments.
    2. Advanced logging and monitoring techniques.
    3. Maintaining NiFi in production environments.
  8. Hands-on Lab Sessions:
    1. Throughout the course, participants will engage in hands-on sessions that apply the theoretical knowledge in real-world scenarios. These labs will cover topics like clustering setup, scripting challenges, and custom processor development.

At the end of this advanced training, participants will be well-equipped with the knowledge and skills to deploy, manage, and optimize Apache NiFi in complex and demanding environments, ensuring scalability, resilience, and security.

Practical, connected learning

My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.