pig tutorial - apache pig tutorial - Apache Pig LOG() - pig latin - apache pig - pig hadoop
What is LOG() function?
- In mathematics, the logarithm is the inverse operation to exponentiation, just as division is the inverse of multiplication and vice versa.
- That means the logarithm of a number is the exponent to which another fixed number, the base, must be raised to produce that number.
- In simple cases the logarithm counts factors in multiplication.
- For example, the base 10 logarithm of 1000 is 3, as 10 to the power 3 is 1000 (1000 = 10 × 10 × 10 = 10^3); 10 is used as a factor three times.
![Apache Pig Log](https://wikitechy.com/tutorials/apache-pig/img/apache-pig-images/apache-pig-log.gif)
Learn Apache Pig - Apache Pig tutorial - Apache Pig Log - Apache Pig examples - Apache Pig programs
LOG() function in Apache Pig
- The LOG() function of Pig Latin is used to calculate the natural logarithm (base e) value of a given expression.
- Returns the natural logarithm (base e) of an expression.
Syntax
grunt> LOG(expression)
Example
- Ensure that we have a file named wikitechy_math.txt in the HDFS directory /pig_data/.
- This file contains integer and floating point values as given below.
wikitechy_math.txt
8
19
12
5.8
8.7
5.1
- You have loaded this file into Pig with a relation named math_data as given below.
grunt> math_data = LOAD 'hdfs://localhost:9000/pig_data/wikitechy_math.txt' USING PigStorage(',')
as (data:float);
- Now calculate the log values of the contents of the wikitechy_math.txtfile using LOG() function as given below.
grunt> log_data = foreach math_data generate (data),LOG(data);
Verification
- Now verify the contents of the relation using the Dump operator as given below.
grunt> Dump log_data;
Output
- The above statement stores the result in the relation named log_data.
(5.0,1.6094379124341003)
(16.0,2.772588722239781)
(9.0,2.1972245773362196)
(2.5,0.9162907318741551)
(5.9,1.774952367075645)
(3.1,1.1314020807274126)