StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Utilities
  3. Background Jobs
  4. Message Queue
  5. AWS Glue vs Apache NiFi

AWS Glue vs Apache NiFi

OverviewDecisionsComparisonAlternatives

Overview

Apache NiFi
Apache NiFi
Stacks393
Followers692
Votes65
AWS Glue
AWS Glue
Stacks462
Followers819
Votes9

AWS Glue vs Apache NiFi: What are the differences?

Introduction

In this article, we will discuss the key differences between AWS Glue and Apache NiFi, two popular tools used for data integration and ETL (Extract, Transform, Load) processes. Both tools have their strengths and use cases, but there are several important differences that distinguish them.

  1. Integration with ecosystem: One of the key differences between AWS Glue and Apache NiFi is their integration with the broader ecosystem. AWS Glue is tightly integrated with other AWS services, such as Amazon S3, Amazon Redshift, and Amazon Athena, making it a natural choice for organizations already using AWS. On the other hand, Apache NiFi is a more open-source, vendor-agnostic tool that can work with a variety of systems and services.

  2. Processing approach: AWS Glue follows a serverless architecture, where users can write ETL scripts in Python or Scala, and AWS Glue handles the underlying infrastructure and scaling automatically. Apache NiFi, on the other hand, offers a more visual and flow-based approach to data integration. Users can create data flows by connecting pre-built processors, suitable for various tasks, in a graphical user interface.

  3. Data streaming: Apache NiFi has built-in support for data streaming, allowing users to process real-time data with low latency. It provides various processors specifically designed for streaming use cases, such as ingesting data from Apache Kafka or Apache Flume. In contrast, AWS Glue does not have native support for real-time streaming and is more focused on batch processing.

  4. Flexibility and extensibility: Apache NiFi offers a highly extensible and customizable platform. It provides a wide range of processors, custom processors, and extensions that can be developed and added to meet specific requirements. AWS Glue, while offering flexibility through its native programming capabilities, is more limited in terms of customization options compared to Apache NiFi.

  5. Deployment options: AWS Glue is a managed service provided by Amazon Web Services (AWS), meaning users do not need to worry about infrastructure management or scaling. It simplifies deployment and operations but requires organizations to use AWS. Apache NiFi, being an open-source tool, can be deployed on-premises or on various cloud providers, providing more flexibility in choosing the deployment environment.

  6. Ease of use and learning curve: AWS Glue, being a serverless managed service, provides a more user-friendly and simplified experience. It abstracts away the complexities of infrastructure management, allowing users to focus more on writing ETL code. Apache NiFi, while offering a visual interface, has a steeper learning curve due to its extensive feature set and flexibility, requiring more upfront knowledge and understanding.

In summary, AWS Glue and Apache NiFi have different strengths and use cases. AWS Glue is tightly integrated with the AWS ecosystem and provides a serverless architecture for simplified data integration, while Apache NiFi offers more flexibility, extensibility, and supports real-time data streaming. The choice between the two depends on the specific requirements, existing infrastructure, and preferences of the organization.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Apache NiFi, AWS Glue

Vamshi
Vamshi

Data Engineer at Tata Consultancy Services

May 29, 2020

Needs adviceonPySparkPySparkAzure Data FactoryAzure Data FactoryDatabricksDatabricks

I have to collect different data from multiple sources and store them in a single cloud location. Then perform cleaning and transforming using PySpark, and push the end results to other applications like reporting tools, etc. What would be the best solution? I can only think of Azure Data Factory + Databricks. Are there any alternatives to #AWS services + Databricks?

269k views269k
Comments
datocrats-org
datocrats-org

Jul 29, 2020

Needs adviceonAmazon EC2Amazon EC2TableauTableauPowerBIPowerBI

We need to perform ETL from several databases into a data warehouse or data lake. We want to

  • keep raw and transformed data available to users to draft their own queries efficiently
  • give users the ability to give custom permissions and SSO
  • move between open-source on-premises development and cloud-based production environments

We want to use inexpensive Amazon EC2 instances only on medium-sized data set 16GB to 32GB feeding into Tableau Server or PowerBI for reporting and data analysis purposes.

319k views319k
Comments
Pavithra
Pavithra

Mar 12, 2020

Needs adviceonAmazon S3Amazon S3Amazon AthenaAmazon AthenaAmazon RedshiftAmazon Redshift

Hi all,

Currently, we need to ingest the data from Amazon S3 to DB either Amazon Athena or Amazon Redshift. But the problem with the data is, it is in .PSV (pipe separated values) format and the size is also above 200 GB. The query performance of the timeout in Athena/Redshift is not up to the mark, too slow while compared to Google BigQuery. How would I optimize the performance and query result time? Can anyone please help me out?

522k views522k
Comments

Detailed Comparison

Apache NiFi
Apache NiFi
AWS Glue
AWS Glue

An easy to use, powerful, and reliable system to process and distribute data. It supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic.

A fully managed extract, transform, and load (ETL) service that makes it easy for customers to prepare and load their data for analytics.

Web-based user interface; Highly configurable; Data Provenance; Designed for extension; Secure
Easy - AWS Glue automates much of the effort in building, maintaining, and running ETL jobs. AWS Glue crawls your data sources, identifies data formats, and suggests schemas and transformations. AWS Glue automatically generates the code to execute your data transformations and loading processes.; Integrated - AWS Glue is integrated across a wide range of AWS services.; Serverless - AWS Glue is serverless. There is no infrastructure to provision or manage. AWS Glue handles provisioning, configuration, and scaling of the resources required to run your ETL jobs on a fully managed, scale-out Apache Spark environment. You pay only for the resources used while your jobs are running.; Developer Friendly - AWS Glue generates ETL code that is customizable, reusable, and portable, using familiar technology - Scala, Python, and Apache Spark. You can also import custom readers, writers and transformations into your Glue ETL code. Since the code AWS Glue generates is based on open frameworks, there is no lock-in. You can use it anywhere.
Statistics
Stacks
393
Stacks
462
Followers
692
Followers
819
Votes
65
Votes
9
Pros & Cons
Pros
  • 17
    Visual Data Flows using Directed Acyclic Graphs (DAGs)
  • 8
    Free (Open Source)
  • 7
    Simple-to-use
  • 5
    Scalable horizontally as well as vertically
  • 5
    Reactive with back-pressure
Cons
  • 2
    Memory-intensive
  • 2
    HA support is not full fledge
  • 1
    Kkk
Pros
  • 9
    Managed Hive Metastore
Integrations
MongoDB
MongoDB
Amazon SNS
Amazon SNS
Amazon S3
Amazon S3
Linux
Linux
Amazon SQS
Amazon SQS
Kafka
Kafka
Apache Hive
Apache Hive
macOS
macOS
Amazon Redshift
Amazon Redshift
Amazon S3
Amazon S3
Amazon RDS
Amazon RDS
Amazon Athena
Amazon Athena
MySQL
MySQL
Microsoft SQL Server
Microsoft SQL Server
Amazon EMR
Amazon EMR
Amazon Aurora
Amazon Aurora
Oracle
Oracle
Amazon RDS for PostgreSQL
Amazon RDS for PostgreSQL

What are some alternatives to Apache NiFi, AWS Glue?

Kafka

Kafka

Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.

RabbitMQ

RabbitMQ

RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.

Celery

Celery

Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.

Amazon SQS

Amazon SQS

Transmit any volume of data, at any level of throughput, without losing messages or requiring other services to be always available. With SQS, you can offload the administrative burden of operating and scaling a highly available messaging cluster, while paying a low price for only what you use.

NSQ

NSQ

NSQ is a realtime distributed messaging platform designed to operate at scale, handling billions of messages per day. It promotes distributed and decentralized topologies without single points of failure, enabling fault tolerance and high availability coupled with a reliable message delivery guarantee. See features & guarantees.

Apache Spark

Apache Spark

Spark is a fast and general processing engine compatible with Hadoop data. It can run in Hadoop clusters through YARN or Spark's standalone mode, and it can process data in HDFS, HBase, Cassandra, Hive, and any Hadoop InputFormat. It is designed to perform both batch processing (similar to MapReduce) and new workloads like streaming, interactive queries, and machine learning.

ActiveMQ

ActiveMQ

Apache ActiveMQ is fast, supports many Cross Language Clients and Protocols, comes with easy to use Enterprise Integration Patterns and many advanced features while fully supporting JMS 1.1 and J2EE 1.4. Apache ActiveMQ is released under the Apache 2.0 License.

ZeroMQ

ZeroMQ

The 0MQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. 0MQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.

Presto

Presto

Distributed SQL Query Engine for Big Data

Amazon Athena

Amazon Athena

Amazon Athena is an interactive query service that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase