Apache Pig

Apache Pig Reviews

Do you work for this company? Learn how we help vendors

Ratings and Reviews
(1-6 of 19)

Companies can't remove reviews or game the system. Here's why
Score 7 out of 10
Vetted Review
Verified User
Review Source
Apache Pig and its query language (Pig Latin) allowed us to create data pipelines with ease and heavily used by our teams. The language is designed to reflect the way data pipelines are designed, so it discards extraneous data, supports user defined functions (UDFs) , and offers a lot of control over the data flow.
  • Data pipeline and aggregation
  • Log parsing and reporting
  • Combine Map Reduce jobs
  • Pig lacks in supporting the advanced features that Apache Spark provides
  • Well outdated
  • Debugging in Pig is a complex part
Write complex map reduce jobs without having much deep knowledge of Java, Python, Scala. Advanced features such as secondary sorting, optimization algorithms, predicate push-down techniques are very useful. With Apache Pig it's easy to aggregate data at scale compared to other tools. It automates important Map Reduce tasks into SQL kind queries.

Jordan Moore | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Review Source
Pig is used by data engineers as a stopgap between setting up a Spark environment and having more declarative flexibility than HiveQL while moving away from MapReduce. It solves the problem of needing to iteratively transform and migrate data between supported Hadoop environments while being able to debug the process at each step.
  • Iterative Development - you can write aliases/variables, which are not immediately executed and these are stored in a DAG, which is only evaluated upon dumping or storing another alias.
  • Fast execution - Works with MapReduce, Tez, or Spark execution frameworks to provide fast run times at large scales.
  • Local and remote interoperability - Scripts that depend on testing a small dataset locally before moving to the full thing can simply be done with "pig -x local."
  • General syntax for the FOREACH ... GENERATE feature is confusing for nested actions.
  • The docs are hard to navigate, but it is made up for by reasonable examples.
  • A version less than 1.0 doesn't instill confidence in the product that has been around for over half a decade (as of writing).
If someone wants to process data and doesn't have access to platforms such as Spark or Flink, and wants to do so in a minimal, portable fashion that requires simply requires learning a new scripting language, then Pig is great. It also supports running the same code against a cluster as a single developer machine for testing.

Pig is more suited for batch ETL workloads, not ML or Streaming big data use-cases.
The documentation is adequate. I'm not sure how large of an external community there is for support.
Kartik Chavan | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Review Source
As a requirement of a distributed processing system, we are using Apache Pig within our Information Technology department. I use it to an extent of generating reports with advanced statistical methods, both for internal use as well as external purposes. But our Data Science team and Data Engineering team use it to build pipelines in Big Data environment, to conduct further advanced analysis including for machine learning purposes.
  • Long logics in Java? Apache Pig is a good alternative.
  • Has a lot of great features including table joins on many databases like DBMS, Hive, Spark-SQL etc.
  • Faster & easy development compared to regular map-reduce jobs.
  • UDFS Python errors are not interpretable. Developer struggles for a very very long time if he/she gets these errors.
  • Being in early stage, it still has a small community for help in related matters.
  • It needs a lot of improvements yet. Only recently they added datetime module for time series, which is a very basic requirement.
It is one great option in terms of database pipelining. It is highly effective for unstructured datasets to work with. Also, Apache Pig being a procedural language, unlike SQL, it is also easy to learn compared to other alternatives. But other alternatives like Apache Spark would be my recommendation due to the high availability of advanced libraries, which will reduce our extra efforts of writing from scratch.
Subhadipto Poddar | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Review Source
Apache Pig is being used as a map-reduce platform. It is used to handle transportation problems and use large volume of data. It can handle data streaming from multiple sources and join them. This can be used to extract key findings, aggregate results and finally process output which is used for different types of visualizations.
  • Fast
  • Easy to implement
  • Can process data of almost any size
  • Easy to learn schema
  • It can only work on trivial arithmetic problems.
  • No or very difficult provision of looping across data
  • Sequential checks are almost impossible to implement
It is well suited when you are aggregating data but really difficult if you want to aggregate based upon line by line. Apache Pig can be picked up in a few days with a few demonstrations. Codes can be written quickly, however, it becomes difficult to take up complicated tasks using it.
Score 7 out of 10
Vetted Review
Verified User
Review Source
Apache Pig is one of the distributed processing technologies we are using within the engineering department as a whole and we are currently using it mainly to generate aggregate statistics from logs, run additional refinement and filtering on certain logs, and to generate reports for both internal use and customer deliveries.
  • Provides a decent abstraction for Map-Reduce jobs, allowing for a faster result than creating your own MR jobs
  • Good documentation and resources for learning Pig Latin (the Domain Specific Language of the Apache Pig platform)
  • Large community allows for easy learning, support, and feature improvements/updates
  • May not fit every need and a SQL-like abstraction may be more effective for some tasks (look at Spark-SQL, Hive, or even an actual DBMS)
  • All Pig jobs are written in a Domain Specific Language so not a lot of transferable knowledge
  • Writing your own User Defined Functions (UDFS) is a nice feature but can be painful to implement in practice
Apache Pig is well suited as part of an ongoing data pipeline where there is already a team of engineers in place that are familiar with the technology since at this point I would consider it relatively depreciated since there are more suitable technologies that have more robust and flexible APIs with the added benefit of being easier to learn and apply. For ad-hoc needs, I would recommend Hive or Spark-SQL if a SQL-esque language makes sense otherwise to make use of Spark + a Notebook technology such as Apache Zeppelin. For production data pipelines I would recommend Apache Spark over Apache Pig for its performance, ease of use, and its libraries.
Score 8 out of 10
Vetted Review
Verified User
Review Source
Yes, it is used by our data science and data engineering orgs. It is being used to build big data workflows (pipelines) for ETL and analytics. It provides easy and better alternatives to writing Java map-reduce code.
  • Apache pig DSL provides a better alternative to Java map reduce code and the instruction set is very easy to learn and master.
  • It has many advanced features built-in such as joins, secondary sort, many optimizations, predicate push-down, etc.
  • When Hive was not very advanced (extremely slow) few years ago, pig has always been the go to solution. Now with Spark and Hive (after significant updates), the need to learn apache pig may be questionable.
  • Improve Spark support and compatibility
  • Spark and Hive are already being used main-stream, both of them have an instruction set that is easier to learn and master in a matter of days. While apache pig used to be a great alternative to writing java map reduce, Hive after significant updates is now either equal or better than pig.
- Custom load, store, filter functionalities are needed and writing Java map reduce code is not an option due susceptible to bugs.
- Chain multiple MR jobs into one pig job.

Apache Pig Scorecard Summary

What is Apache Pig?

Apache Pig is a programming tool for creating MapReduce programs used in Hadoop.

Apache Pig Pricing

Apache Pig Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

What is Apache Pig?

Apache Pig is a programming tool for creating MapReduce programs used in Hadoop.

Who uses Apache Pig?

The most common users of Apache Pig are from Enterprises and the Computer Software industry.