hortonworks HDP 2.1 Pig charm

Bug #1354183 reported by amir sanjar
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juju Charms Collection
Fix Released
Undecided
Unassigned

Bug Description

Hortonworks HDP 2.1 Apache Pig is a platform for analyzing large data sets that consists of
a high-level language for expressing data analysis programs, coupled with
infrastructure for evaluating these programs. The salient property of Pig
programs is that their structure is amenable to substantial parallelization,
which in turns enables them to handle very large data sets.
At the present time, Pig's infrastructure layer consists of a compiler that
produces sequences of Map-Reduce programs, for which large-scale parallel
implementations already exist (e.g., the Hadoop subproject). Pig's language
 layer currently consists of a textual language called Pig Latin, which has the following key properties:

 - Ease of programming. It is trivial to achieve parallel execution of simple, "embarrassingly parallel"
   data analysis tasks. Complex tasks comprised of multiple interrelated data transformations are explicitly
   encoded as data flow sequences, making them easy to write, understand, and maintain.
 - Optimization opportunities. The way in which tasks are encoded permits the system to
   optimize their execution automatically, allowing the user to focus on semantics rather
   than efficiency.
 - Extensibility. Users can create their own functions to do special-purpose processing.

Pig has two execution modes or exectypes:
 - Local Mode - To run Pig in local mode, you need access to a single machine;
   all files are installed and run using your local host and file system. Specify
   local mode using the -x flag (pig -x local).
 - Mapreduce Mode - To run Pig in mapreduce mode, you need access to a Hadoop cluster
   and HDFS installation. Mapreduce mode is the default mode; you can, but don't need to,
   specify it using the -x flag (pig OR pig -x mapreduce).

This charm provides Pig client with both execution modes (above).

Related branches

Revision history for this message
Matt Bruzek (mbruzek) wrote :

I was working on reviews and this charm came up on top, it looks like it is still in progress. When you are ready for review please change the state to "Fix Committed".

Changed in charms:
status: New → In Progress
amir sanjar (asanjar)
Changed in charms:
status: In Progress → Fix Committed
Revision history for this message
Antonio Rosales (arosales) wrote :

Amir,

Thanks for your work on this charm, contributing it to the Juju community, and getting it ready for review.

I reviewed your Readme and I had some suggestions at:
https://code.launchpad.net/~a.rosales/charms/trusty/hdp-pig/readme-updates/+merge/234271

They are mainly around formatting, but I also had the following suggestions for the readme:

===
 - Local Mode - To run Pig in local mode, you need access to a single machine;
   all files are installed and run using your local host and file system. Specify
   local mode using the -x flag (pig -x local).
 - Mapreduce Mode - To run Pig in mapreduce mode, you need access to a Hadoop
   cluster
   and HDFS installation. Mapreduce mode is the default mode; you can, but don't
   need to, specify it using the -x flag (pig OR pig -x mapreduce).

--- Suggest to remove the section on using the "-x" option for local mode and not using "-x" for local mode as the charm takes care of this. Or adding a note stating this charm uses this convention to deploy locally or not pending config options.

<= check the result on the hadoop cluster

--- Suggest to inform the user how to check for the result on the hadoop cluster.

pig -x local

--- Suggest to instruct the user on how to run some commands in grunt to ensure Pig has been properly deployed.

===

I was able to follow your Readme to deploy the services both on local and AWS. hdp-pig came up sucessfully, and I was able to sucessfully run the test commands in the Readme. Very nice touch to put validation steps in the Readme.

charm proof sucessfully runs:
$ charm proof hdp-pig
I: all charms should provide at least one thing

There is one informational message, but nothing that would block charm store submission. I would suggest to review my Readme merge, but other than that this Charm LGTM +1.

-Thanks,
Antonio

Revision history for this message
Antonio Rosales (arosales) wrote :

I ran into a timeout issue when testing with bundletester that I am pursuing via:
https://github.com/juju-solutions/bundletester/issues/3

-thanks,
Antonio

Revision history for this message
Charles Butler (lazypower) wrote :

I re-ran the tests after making some short modifications. I've communicated this back to asanjar and the tests are passing.

Changed in charms:
status: Fix Committed → Fix Released
Revision history for this message
Charles Butler (lazypower) wrote :

Amir,

THank you for this charm submission. I agree with Antonio's points about the Readme. However this charm is in ship-shape for inclusion.

I've promulgated this charm and it will be available in the bigdata-charmers namespace. You can find the bug-tracker for hdp-pig here: https://bugs.launchpad.net/charms/+source/hdp-pig

Thank you again for this contribution.

If you have any questions/comments/concerns about the review contact us in #juju on irc.freenode.net or email the mailing list <email address hidden>, or ask a question tagged with "juju" on http://askubuntu.com.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.